现行规则 特别登记
CURRENT RULES(当前规则)指定SQL语句是按照 Db2 规则还是SQL标准规则执行。
登记的数据类型为CHAR(3),唯一有效的值为“ DB2 '和'STD'。
CURRENT RULES是数据库服务器上的一个注册。 如果服务器不是本地的 Db2 ,则寄存器的初始值为“ DB2 '。 否则,初始值与SQLRULES绑定选项的值相同。 用户定义的函数或存储过程中的当前规则的初始值根据用户定义的函数或存储过程中的特殊寄存器中的规则进行继承。
您可以通过执行语句SET CURRENT RULES来更改寄存器的值。
CURRENT RULES 影响下表所列的语句,该表总结了哪些语句受到影响,并显示了更多信息的来源。
| 语句 | 什么受到影响 |
|---|---|
| 所有语句 | SQL错误代码 Db2 是指任何引用不存在的对象名称的SQL语句。
|
| ALTER TABLE | 以下行为:
|
| CREATE TABLE | 以下行为:
|
| GRANT | 给自己特权。 |
| REVOKE | 撤销授权ID的特权。 |
设置当前规则,以便后续的ALTER TABLE语句能够按照SQL标准规则执行:
SET CURRENT RULES = 'STD';