SQL As Understood By SQLite

CREATE VIEW

sql-command ::= CREATE [TEMP | TEMPORARY] VIEW [IF NOT EXISTS] [database-name.] view-name AS select-statement

CREATE VIEW 对一个已经打包的 SELECT语句指定一个名字。 一旦创建一个视图,就可以在另外的SELECT语句的FROM子句中原先使用表名的地方使用它。

如果 "TEMP" 或 "TEMPORARY" 关键字出现在 "CREATE" 和 "VIEW" 之间, 那么,创建的视图只是打开数据库的进程中可见,并将在关闭数据库时自动删除。

如果指定一个 <database-name> ,那么视图将会创建到该数据库上中。 同时指定 <database-name> 和 TEMP 关键字是错误的,除非数据库 <database-name> 本身就是临时的。如果不指定数据库名,且未指定TEMP关键字, 视图将建立在主数据库上。

不能 COPY, DELETE, INSERT 或 UPDATE 一个视图。在SQLite中, 视图是只读的。但在很多情况下可以以视图上使用 触发器 来做同样的操作。使用 DROP VIEW 命令来删除视图。