当前位置: 首页 > news >正文

网站建设结课银川市网站制作公司

网站建设结课,银川市网站制作公司,做百度百科的网站,wordpress首页设置MySQL—视图的概念与操作 常见的数据库对象 对象描述表(TABLE)表是存储数据的逻辑单元#xff0c;以行和列的形式存在#xff0c;列就是字段#xff0c;行就是记录数据字典就是系统表#xff0c;存放数据库相关信息的表。系统表的数据通常由数据库系统维护#xff0c; 程…MySQL—视图的概念与操作 常见的数据库对象 对象描述表(TABLE)表是存储数据的逻辑单元以行和列的形式存在列就是字段行就是记录数据字典就是系统表存放数据库相关信息的表。系统表的数据通常由数据库系统维护 程序员通常不应该修改只可查看约束 (CONSTRAINT)执行数据校验的规则用于保证数据完整性的规则视图(VIEW)一个或者多个数据表里的数据的逻辑显示视图并不存储数据索引(INDEX)用于提高查询性能相当于书的目录存储过程 (PROCEDURE)用于完成一次完整的业务处理没有返回值但可通过传出参数将多个值传给调 用环境存储函数 (FUNCTION)用于完成一次特定的计算具有一个返回值触发器 (TRIGGER)相当于一个事件监听器当数据库发生特定事件后触发器被触发完成相应的处理 视图的概念 视图是一种 虚拟表 本身是 不具有数据 的占用很少的内存空间它是 SQL 中的一个重要概念。 视图建立在已有表的基础上, 视图赖以建立的这些表称为基表。 视图的创建和删除只影响视图本身不影响对应的基表。但是当对视图中的数据DML进行增加、删除和 修改操作时数据表中的数据会相应地发生变化反之亦然。 视图提供数据内容的语句为 SELECT 语句, 可以将视图理解为存储起来的 SELECT 语句 在数据库中视图不会保存数据数据真正保存在数据表中。当对视图中的数据进行增加、删 除和修改操作时数据表中的数据会相应地发生变化反之亦然。 视图是向用户提供基表数据的另一种表现形式。通常情况下小型项目的数据库可以不使用视 图但是在大型项目中以及数据表比较复杂的情况下视图的价值就凸显出来了它可以帮助我 们把经常查询的结果集放到虚拟表中提升使用效率。理解和使用起来都非常方便。 创建视图 查询语句中字段的别名会作为视图的别名出现 CREATE VIEW vu_emps AS SELECT employee_id,last_name,salary FROM emps;CREATE VIEW vu_emps2(emp_id,name,monthly_sal) AS SELECT employee_id,last_name,salary FROM emps;针对多表的视图创建 CREATE VIEW vu_emp_dept AS SELECT employee_id,e.department_id,department_name FROM emps e JOIN depts d ON e.department_id d.department_id;SELECT * FROM vu_emp_dept;利用视图对数据进行格式化 CREATE VIEW vu_emp_dept1 AS SELECT CONCAT(e.last_name,(,d.department_name,)) emp_info FROM emps e JOIN depts d ON e.department_id d.department_id;基于视图创建视图 CREATE VIEW vu_emp4 AS SELECT department_id,department_name FROM vu_emp_dept;SELECT * FROM vu_emp4;查看视图 查看数据库的表对象视图对象 SHOW TABLES;查看数据库结构 DESC vu_emp4;查看数据的属性信息 mysql SHOW TABLE STATUS LIKE vu_emp4\G; *************************** 1. row ***************************Name: vu_emp4Engine: NULLVersion: NULLRow_format: NULLRows: NULLAvg_row_length: NULLData_length: NULL Max_data_length: NULLIndex_length: NULLData_free: NULLAuto_increment: NULLCreate_time: NULLUpdate_time: NULLCheck_time: NULLCollation: NULLChecksum: NULLCreate_options: NULLComment: VIEW 1 row in set (0.00 sec)ERROR: No query specified 查看视图的详细定义信息 mysql SHOW CREATE VIEW vu_emp4\G; *************************** 1. row ***************************View: vu_emp4Create View: CREATE ALGORITHMUNDEFINED DEFINERroot% SQL SECURITY DEFINER VIEW vu_emp4 AS select vu_emp_dept.department_id AS department_id,vu_emp_dept.department_name AS department_name from vu_emp_dept character_set_client: utf8 collation_connection: utf8_general_ci 1 row in set (0.00 sec)ERROR: No query specified 更新视图数据 更新视图中的数据会导致基表中数据的修改 更新表中的数据也会导致视图中的数据的修改 要使视图可更新视图中的行和底层基本表中的行之间必须存在 一对一 的关系。另外当视图定义出现如下情况时视图不支持更新操作 在定义视图的时候指定了“ALGORITHM TEMPTABLE”视图将不支持INSERT和DELETE操作视图中不包含基表中所有被定义为非空又未指定默认值的列视图将不支持INSERT操作在定义视图的SELECT语句中使用了 JOIN联合查询 视图将不支持INSERT和DELETE操作在定义视图的SELECT语句后的字段列表中使用了 数学表达式 或 子查询 视图将不支持INSERT也 不支持UPDATE使用了数学表达式、子查询的字段值在定义视图的SELECT语句后的字段列表中使用 DISTINCT 、 聚合函数 、 GROUP BY 、 HAVING 、 UNION 等视图将不支持INSERT、UPDATE、DELETE在定义视图的SELECT语句中包含了子查询而子查询中引用了FROM后面的表视图将不支持 INSERT、UPDATE、DELETE视图定义基于一个 不可更新视图 常量视图。 虽然可以更新视图数据但总的来说视图作为虚拟表 主要用于方便查询 不建议更新视图的数据。对视图数据的更改都是通过对实际数据表里数据的操作来完成的。 修改视图 方式1使用CREATE OR REPLACE VIEW 子句修改视图 CREATE OR REPLACE VIEW empvu80 (id_number, name, sal, department_id) AS SELECT employee_id, first_name || || last_name, salary, department_id FROM employees WHERE department_id 80;CREATE OR REPLACE VIEW vu_emp4 AS SELECT CONCAT(e.last_name,(,d.department_name,)) emp_info FROM emps e JOIN depts d ON e.department_id d.department_id;说明CREATE VIEW 子句中各列的别名应和子查询中各列相对应。 方式2ALTER VIEW 修改视图的语法是 ALTER VIEW 视图名称 AS 查询语句ALTER VIEW vu_emp4 AS SELECT CONCAT(e.last_name,(,d.department_name,)) emp_info FROM emps e JOIN depts d ON e.department_id d.department_id;删除视图 DROP VIEW vu_emp4; DROP VIEW IF EXISTS vu_emp1;视图的优缺点 优点 操作简单减少数据冗余数据安全适应灵活多变的需求能够分解复杂的查询逻辑 缺点 维护成本高可读性不好
http://www.hkea.cn/news/14291164/

相关文章:

  • 剑网三奇遇查询网站怎么做wordpress底栏
  • 中英双语营销型网站网页网站建设的步骤流程
  • 网站建设与维护的案例wordpress怎么搜索网站
  • 网站建设北京个人网页网站制作维护
  • 建设银行网站怎么查开户行龙岩网站建设teams熊掌号
  • 做衣服外单网站电商网页建设
  • 江西建站哪家专业太原微信网站
  • 百度推广就是做网站吧报价网站建设
  • 化妆品商城网站建设策划方案政务网站的建设时期的概述
  • 义乌外贸网站建设来啦企业网站不付服务费应该怎么做
  • 珠海微网站建设怎么做网站促收录
  • 做瑜珈孕妇高清图网站大唐网站设计
  • 网站对位在线logo制作生成免费
  • 可以进不良网站的浏览器青岛seo
  • 大连网站开发建深圳市建设交易网站
  • 桂阳局网站建设方案外贸英文网站搭建的公司
  • 南充网站设计学校爱网站排行
  • 郑州大型网站建设价格seo经典案例分析
  • 深圳论坛网站建设wordpress 增加 推荐
  • 秦皇岛做网站的公司哪家好网站个人信息页面布局
  • 深圳网站设计互联网品牌什么是seo和sem
  • 如何建设远程教育网站网站建设 浏览器兼容
  • 网站运营经理岳阳卖房网站
  • wordpress网站的根目录在哪口碑好的聊城网站建设
  • 可以注册邮箱的网站开封建设网站
  • 济宁培训网站建设企业网站制作前期需要什么资料
  • 哪个网站推广比较好宣传片拍摄报价明细
  • 方太网站谁做的远程教育网站建设方案
  • 山东天成水利建设 网站自己怎么制作网站
  • 西安手机网站开发精品课程网站开发项目