syscolumns表结构
系统表syscolumns保存的是表的字段信息。其包含的主要字段如下:
说明:在tabid和colno上建有复合主键。
coltype类型
coltype代码可通过叠加位值显示列的以下特征。
如:
包含NOT NULL属性的varchar类型的coltype的值是269,是十六进制值0x10d的十进制表示法,该十六进制值是0xd(varchar类型)与0x100(不允许使用NULL值)的叠加。
命名行类型的 coltype 值 4118,是十六进制值 0x1016 的十进制表示法,该十六进制值与设置了命名行类型位的未命名行类型 0x16 的十六进制 coltype 值相同。
文件 $GBASEDBTDIR/incl/esql/sqltypes.h 包含有关 syscolumns.coltype 代码的其他信息。
NOT NULL 约束
如上面所述:如果列不允许使用 NULL 值,那么 coltype 值将增加 256。要确定这种列的数据类型,根据可能的 coltype 值,从值中减去 256 并求余数。例如,如果 colty