sysdefaults 系统目录表列出了对数据库中的每一列设置的用户定义的缺省值。对于每
个用户定义的缺省值,都存在一行。
sysdefaults 表具有以下列:
表 12. SYSDEFAULTS 表列描述
列
类型
解释
tabid
INTEGER
唯一地标识表的代码。当 class 列包含代码 P 时,
tabid 列会引用过程标识,而不是表标识。
colno
SMALLINT
唯一地标识列的代码。
GBase 8s SQL 指南:参考
南大通用数据技术股份有限公司 - 34 -
列
类型
解释
type
CHAR(1)
标识缺省值类型的代码:C = 当前L = 文字值N =
NULLS = Dbservername 或 Sitename T = 今天U = 用
户
default
CHAR(256)
如果 sysdefaults.type = L,那么为文字缺省值。
class
CHAR(1)
标识列种类的代码:T = 表t = ROW 类型P = 过程
如果 CREATE
TABLE 或 ALTER
TABLE 语句中未明确指定缺省值,
那么 sysdefaults 表
中不存在该列的条目。
如果指定文字作为缺省值,那么它将以 ASCII 文本的形式存储在缺省列中。如果文字
值不是下一段中列出的数据类型之一,那么 default 列由两部分组成。第一部分是缺省值
结构的二进制值的 6 位表示法。第二部分是 ASCII 文本形式的缺省值。这两个部分由空
格隔开。
如果列的数据类型不是 CHAR、NCHAR、NVARCHAR 或 VARCHAR 或者(用于 GBase 8s)
BOOLEAN 或 LVARCHAR,那么在缺省列中对缺省值的二进制表示进行编码。
tabid、colno 和 class 列的组合索引只允许唯一值。