做论坛网站需要多大空间,九龙坡网站建设多少钱,电脑怎样重新装wordpress,一键生成图片的软件目录
一、视图的简介
1.1 什么是视图#xff1f;
1.2 为什么使用视图#xff1f;
1.3 视图有哪些规则与限制#xff1f;
1.4 视图能否更新#xff1f;
二、视图的创建
三、视图的作用
3.1 用视图简化复杂的联结
3.2 用视图格式化检索出的数据
3.3 用视图过滤数据…目录
一、视图的简介
1.1 什么是视图
1.2 为什么使用视图
1.3 视图有哪些规则与限制
1.4 视图能否更新
二、视图的创建
三、视图的作用
3.1 用视图简化复杂的联结
3.2 用视图格式化检索出的数据
3.3 用视图过滤数据 一、视图的简介
*本节涉及概念来源于图灵程序设计丛书数据库系列——《MySQL必知必会》
1.1 什么是视图
视图为虚拟的表并不包含数据。视图只包含使用时动态检索数据的查询返回的数据是从其他表中检索出来的。
在视图创建之后可以用与表基本相同的方式使用它。可以对视图执行查询、过滤和排序等操作也可以进行联结到其他视图或表。
1.2 为什么使用视图
视图提供了一种查询语句层次的封装可以用来简化数据处理、格式化基础数据或保护基础数据。视图的常见应用有
①重用SQL语句简化复杂的SQL操作。
②更改数据格式和表示。
③过滤不需要的数据。
④保护数据可以给用户授予表的特定部分的访问权限而不是整个表的访问权限。
1.3 视图有哪些规则与限制
①视图必须唯一命名不可与别的视图或表重名。
②可创建的视图数目没有限制视图可嵌套即从其他视图中检索数据的查询来构造一个视图。
③视图的中可以使用ORDER BY 但如果使用该视图的查询语句中也含有ORDER BY则视图中的会被覆盖如果同时使用的是WHERE子句则会两组子句自动组合。
④视图不能索引也不能有关联的触发器或默认值。
⑤创建视图必须有足够的访问权限。
1.4 视图能否更新
视图本身不包含数据返回的数据是从其他表中检索出来的当更改这些表中的数据时视图将返回更改后的数据。(视图不包含数据每次使用视图时都会处理查询执行时所需的任一个检索)
视图是可更新的但上述有提到视图中的数据来源于其他表那么对视图进行更新实际上是对其基表进行更新。
视图更新有很多限制视图的主要作用是用于数据检索而不是更新数据。 二、视图的创建
①创建 CREATE VIEW name AS ...
②查看 SHOW CREATE VIEW name
③删除 DROP VIEW name
④更新 可以先用DROP再用CREATE或者直接用CREATE OR REPLACE VIEW如果要更新的视图不存在则会创建一个视图否则会替换原视图。 三、视图的作用
3.1 用视图简化复杂的联结 以表格customers与orders为例。 视图可以简化SQL语句的使用利用视图可以一次性编写基础的SQL然后根据需要多次使用。
myview视图中返回将c表与o表联结起来并进行对应查询所得用户姓名、id以及订单号。 如要检索订单号为20009的客户的名字以及id可以直接从myview视图中进行检索。在处理此查询时会将WHERE子句与视图中原有的WHERE子句结合起来正确检索数据。 3.2 用视图格式化检索出的数据
以表格vendors为例。 如果想要输出 vend_name(vend_country) 的格式并经常使用该格式可以创建一个视图。 3.3 用视图过滤数据
在customers表格中有些用户没有email信息如果要过滤掉cust_email为null的行可以创建一个视图后续可以直接使用该视图进行其他检索。 *只要不主动删除视图是一直存在于对应的数据库中的。