读书笔记_mysql必知必会_22_使用视图

视图(只包含使用时动态检索数据的查询,不包含数据)

视图是虚拟的表。 与包含数据的表不一样,视图只包含使用时动态检索数据的查询
 
作为视图,它不包含表中应该有的任何列或数据,它包含的是一个SQL 查询(与上面用以正确联结表的相同的查询)。
 

为什么使用视图

重用 SQL 语句。
简化复杂的 SQL 操作。在编写查询后,可以方便地重用它而不必知道它的基本查询细节。
使用表的组成部分而不是整个表。
保护数据。可以给用户授予表的特定部分的访问权限而不是整个表的访问权限。
更改数据格式和表示。视图可返回与底层表的表示和格式不同的数据。
 
在视图创建之后,可以用与表基本相同的方式利用它们。
 
重要的是知道视图 仅仅是用来查看存储在别处的数据的一种设施 视图本身不包含数据 ,因此它们返回的数据是从其他表中检索出来的。在添加或更改这些表中的数据时,视图将返回改变过的数据。
 

视图的规则和限制

 

与表一样,视图必须 唯一命名 (不能给视图取与别的视图或表相同的名字)。
对于可以创建的 视图数目没有限制
为了创建视图,必须具有 足够的访问权限 。这些限制通常由数据库管理人员授予。
视图可以嵌套 ,即可以利用从其他视图中检索数据的查询来构造一个视图。
ORDER BY 可以用在视图中,但如果从该视图检索数据 SELECT 中也 含有ORDER BY ,那么该视图中的 ORDER BY 将被覆盖。
视图不能索引 ,也不能有关联的触发器或默认值。
图可以和表一起使用 。例如,编写一条联结表和视图的 SELECT语句。
 

使用视图

视图用 CREATE VIEW 语句来创建。
使用 SHOW CREATE VIEW viewname ;来查看创建视图的语句。
DROP 删除视图,其语法为 DROP VIEW viewname;
更新视图时,可以 先用DROP再用CREATE ,也可以直接用 CREATE OR REPLACE VIEW 。如果要更新的视图不存在,则第 2 条更新语句会创建一个视图;如果要更新的视图存在,则第2 条更新语句会替换原 有视图。
 

利用视图简化复杂的联结

用视图重新格式化检索出的数据

用视图过滤不想要的数据

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值