对象的命名规则¶
在神通数据库中,对象的命名首先要遵守 关键字和标识符 一节的要求。
同时同一名称空间的对象的名称不能相同,不同名称空间的对象的名称可以相同。 表、视图、序列和索引在神通数据库中属于同一名称空间, 因此同一个模式下的表、视图、序列和索引不能同名, 如同一模式下不能既存在一个名为aaa的表又存在一个名为aaa的索引。
而约束、存储过程、触发器和由 CREATE OBJECT TABLE 生成的自定义对象类型都有各自的名称空间, 所以在同一模式下它们可以同名,如同一个模式下可以分别有名称为aaa的约束、存储过程和触发器。
同一模式下的同一类对象不能同名。对于用户、角色和表空间,它们不包含在模式中, 其名称空间是整个数据库,因此同一数据库中可以存在同名的用户、角色和表空间, 如同一数据库中可以存在用户aa、角色aa和表空间aa,但不能存在两个用户aa。 神通数据库有自己的保留名称空间,不可以使用保留名称空间来命名用户对象。
神通数据库的保留名称空间如下表:
表21神通数据库的保留名称空间
| 名字空间 | 描述 |
|---|---|
| ESQL | ESQL系统库函数。经过预编译输出的目标C文件需要通过底层的ONET库与后台数据库进行通信,ESQL库提供了与预编译相对应的后处理功能,对SQL语句进行一些处理,并且调用ONET的库函数与后台数据库通信。 |
| ONET | ONET库函数。与后台数据库通信。 |
| SYS_GLOBALE_TEMP | 系统用于建立全局临时表的模式 |
| SYS_TMP_[Session号] | 系统用于建立局部临时表的模式 |
| INFO_SCHEM | 系统表所在的模式 |
| SYS_xxx | 系统表名 |
| V_SYS_xxx | 系统视图名 |