1. 语法
create-view-stmt
select-stmt
通用表表达式
复合运算符
表达式
过滤子句
函数参数
字面量值
over子句
窗口规范
抛出函数
类型名称
带符号数字
连接子句
连接约束
连接运算符
排序项
结果列
表或子查询
窗口定义
窗口规范
2. 描述
CREATE VIEW 命令为预先打包的 SELECT 语句分配一个名称。创建视图后,可以在另一个 SELECT 语句的 FROM 子句中使用它来代替表名。
如果“TEMP”或“TEMPORARY”关键字出现在“CREATE”和“VIEW”之间,则创建的视图仅对创建它的 数据库连接 可见,并在数据库连接关闭时自动删除。
如果指定了 模式名称,则视图将在指定的数据库中创建。在 VIEW 上同时指定 模式名称 和 TEMP 关键字是错误的,除非 模式名称 为“temp”。如果没有指定模式名称,并且 TEMP 关键字不存在,则 VIEW 将在主数据库中创建。
您无法对视图执行 DELETE、INSERT 或 UPDATE 操作。视图在 SQLite 中是只读的。但是,在许多情况下,您可以使用视图上的 INSTEAD OF 触发器 来实现相同的功能。视图使用 DROP VIEW 命令删除。
如果 列名 列表跟在 视图名 之后,则该列表确定视图的列名。如果省略了 列名 列表,则视图中的列名将从 select-stmt 中结果集列的名称派生。建议使用 列名 列表。或者,如果省略了 列名 列表,则定义视图的 SELECT 语句中的结果列应使用“AS 列别名”语法具有明确定义的名称。SQLite 允许您创建依赖于自动生成的列名的视图,但您应该避免使用它们,因为用于生成列名的规则不是接口的定义部分,并且可能会在 SQLite 的未来版本中发生变化。
列名 列表语法是在 SQLite 3.9.0 版(2015-10-14)中添加的。
此页面上次修改于 2022-01-08 05:02:57 UTC