是语句:
DROP VIEW <view-name>
有效的 SQL92 语法?在某些数据库(例如Postgres,Redshift(中,可以选择显式定义删除行为
DROP VIEW <view-name> [RESTRICT|CASCADE]
而对于其他人来说,这是强制性的(例如Netteza(
DROP VIEW <view-name> {RESTRICT|CASCADE}
或者只是语法中不支持(例如 Transact-sql(。
sql92 标准对有关丢弃行为的删除视图语法有何规定? 我没有发现任何提及在 sql92 语法中删除行为的内容。
ANSI-92 标准中提到的RESTRICT
和CASCADE
在第 11.20 节中作为<drop behavior>
限定符
如果指定了 LIMIT,则不应在 中引用 V 任何视图描述符或任何断言描述符或约束描述符
注意:如果指定了级联,则任何此类依赖对象 将在执行规范时删除- 在本分项的一般规则中规定。
在此处搜索<drop behavior>
,第 6 次出现视图
https://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt
您可以查看 wiki 文章 .在底部的">外部链接"中,您可以找到SQL-92标准。向下滚动到">X3H2-92-154/DBL CBR-002,11.20 ",在那里您可以找到:
<drop view statement> ::=
DROP VIEW <table name> <drop behavior>
Note: If CASCADE is specified, then any such dependent object
will be dropped by the execution of the <revoke statement> spec-
ified in the General Rules of this Subclause.
是的,每个SQL 92标准都有,语法是
<drop view statement> ::=
DROP VIEW <table name> <drop behavior>
语法规则
1( 设 V 为由 标识的表,并设 VN 就是.由显式或标识的架构 VN 的隐式架构名称应包含 V 的描述符。
2( V 应为查看表。
3( 如果指定了 LIMIT,则不得在 任何视图描述符或任何断言描述符或约束描述符。
Note: If CASCADE is specified, then any such dependent object will be dropped by the execution of the <revoke statement> spec- ified in the General Rules of this Subclause.
访问规则
1( 电流应等于 拥有由 标识的架构 由 VN 标识的表。
一般规则
1( 设 A 为当前 .以下 在"_SYSTEM"电流下有效执行,无需进一步访问 规则检查:
REVOKE ALL PRIVILEGES ON VN FROM A CASCADE
2( 已识别的视图及其描述符被销毁。
分级规则
1( 以下限制适用于中间 SQL:
None.
2( 除条目 SQL 外,以下限制还适用于 任何中间 SQL 限制:
a) Conforming Entry SQL language shall not contain a <drop view statement>.