视图

来源:互联网 发布:软件研发管理制度 编辑:程序博客网 时间:2024/04/27 13:35

视图是关系数据库系统提供给用户以多种角度观察数据库中数据的一种重要方法。视图已经定义就可以和基本表一样被查询、被删除,也可以在若干视图之上在定义新的视图,当然用视图完成数据的更新(增加、删除、修改)操作有以下限制:

  • 如果一个视图是从多个表使用连接操作导出的,那么不允许对这个视图执行更新操作。
  • 如果在导出视图的过程中,使用了分组和集函数,也不允许对这个视图执行更新操作。
  • 如果一个视图是从单个基本表使用选择和投影,操作导出且视图的属性集合包含了基本表的一个候选键,那么允许对这个视图执行更新操作。

建立视图

CREATE VIEW<视图名>[(<列名>[,<列名>]...)]AS <SELECT 子查询语句>[WITH CHECK OPTION]

其中,SELECT 子查询语句可以是任意复杂的SELECT语句,但通常不允许含有ORDER BY子句和DISTINCT短语;WITH CHECK OPTION 表示视图进行UPDATE,INSERT和DELETE操作时要保证更新、插入或删除的元组满足视图定义的谓词条件。

删除视图

DROP VIEW <视图名>

试图删除后视图的定义将从数据字典删除没,但是由该视图带出的其它视图定义仍在数据字典中。

更新视图

视图定义后,用户就可以像查询基本表一样使用视图。由于视图不是实际存储数据的虚表,因此对视图的更新,最终将要转换为对基本表的更新。

0 0