PostgreSQL7.0手册-用户手册-19. SQL命令-CREATE VIEW

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-03-16 13:42:54
CREATE VIEW
名称
CREATE VIEW — 构建一个虚拟表(视图) 

语法
CREATE VIEW view AS SELECT query
输入
view 
所要创建的视图名称. 
query 
一个将为视图提供行和列的 SQL 查询. 
请参阅 SELECT 语句获取有效参数的更多信息. 

输出
CREATE 
如果视图创建成功,返回此信息. 
ERROR: Relation 'view' already exists 
如果在数据库中已经存在所声明的视图. 
NOTICE create: attribute named "column" has an unknown type 
  
  

如果不声明,所创建的视图将有一个未知类型的字段.例如,下面命令返回一个警告: 
CREATE VIEW vista AS SELECT 'Hello World'
然而下面命令将不出现警告: 
CREATE VIEW vista AS SELECT text 'Hello World'
描述
CREATE VIEW 将定义一个表的视图.这个视图不是物理上实际存在(于磁盘)的.具体的说,自动生成一个改写索引规则的查询用以支持在视图上的检索. 
注意
目前,视图是只读的. 
 
使用 DROP VIEW 语句删除视图. 

用法
创建一个由所有 Comedy (喜剧)电影组成的视图: 
CREATE VIEW kinds AS
    SELECT *
    FROM films
    WHERE kind = 'Comedy';

SELECT * FROM kinds;

 code             title            did  date_prod    kind   len
-------+---------------------------+-----+------------+--------+-------
 UA502  Bananas                    105  1971-07-13  Comedy  01:22
 C_701  There's a Girl in my Soup  107  1970-06-11  Comedy  01:36
(2 rows)
兼容性
SQL92
SQL92 为 CREATE VIEW 声明了一些附加的功能: 
CREATE VIEW view [ column [, ...] ]
    AS SELECT expression [ AS colname ] [, ...]
    FROM table [ WHERE condition ]
    [ WITH [ CASCADE  LOCAL ] CHECK OPTION ]
完整的SQL92命令可选的子句是: 
  
CHECK OPTION 
这个选项用于可更新视图.所有对视图的 INSERT 和 UPDATE 都要经过视图定义条件的校验.如果没有通过校验,更新将被拒绝. 
LOCAL 
对这个视图进行完整性检查. 
CASCADE 
对此视图和任何相关视图进行完整性检查.在既没有声明 CASCADE 也没有声名 LOCAL 时,假设为 CASCADE. 

Tags:

作者:佚名
分享到: 微信 更多