
DB2® 对象命名规则
所有对象都遵从一般命名规则。此外,某些对象具有下表所示的其他限制。
对象 | 准则 |
---|---|
|
注: 为避免潜在的问题,在想要在通信环境中使用数据库的情况下,不要在数据库名称中使用特殊字符 @、# 和 $。而且,因为并非所有键盘都使用这些字符,所以,如果打算使用另一种语言版本的数据库,不要使用这些特殊字符。
|
对象 | 准则 |
---|---|
|
有关更多信息,请参阅标识。 |
对象 | 准则 |
---|---|
|
这些对象的长度必须小于或等于
SQL 和 XML
限制中列示的长度。联合数据库对象的名称还可以包括:
|
定界标识和对象名
可以使用关键字。如果在某个上下文中使用了一个关键字,而该关键字还可以解释为 SQL 关键字,那么必须将其指定为定界标识。
使用定界标识时,可能会创建违反这些命名规则的对象;但是,如果随后使用该对象,那么可能导致错误。例如,如果您创建一列,其名称中包括 + 号或 - 号,然后又在索引中使用该列,那么当您试图重组该表时将遇到问题。
其他模式名信息
- 用户定义的类型 (UDT) 的模式名长度不能超出 SQL 和 XML 限制中列示的长度。
- 下列模式名是保留字,不能使用:SYSCAT、SYSFUN、SYSIBM、SYSSTAT 和 SYSPUBLIC。
- 为了避免将来升级数据库时的潜在问题,切勿使用以 SYS 开头的模式名。数据库管理器不允许您使用以 SYS 开头的模式名来创建触发器、用户定义的类型或用户定义的函数。
- 建议不要将 SESSION 用作模式名。已声明临时表必须用 SESSION 来限定。因此,可以让应用程序使用与持久表完全相同的名称来声明临时表,在这种情况下,应用程序逻辑可能会变得过分复杂。除非在处理已声明临时表,否则应避免使用模式 SESSION。