我正在做一个多数据库项目。我们在此项目中使用 DB2/400,我们需要知道表列的属性。
目的是确定此列是否属于行 ID 类型
使用SQLServer,等效命令是:
select object_NAME (ID) as ObjectName, Name as IdentityColumn from syscolumns
where COLUMNPROPERTY (id, name, 'IsIdentity') = 1 and
object_NAME (ID) = 'Table_Name';
此语句列出指定表的 ROW ID 列。
我正在寻找与 DB2/400 等效的命令。
我尝试查询"qsys"的表 QADBIFLD,但似乎没有列包含该信息。
我认为"QSYS"中一定有一个系统表可以提供这些信息,但我无法得到它。
如果有人有想法,谢谢你的帮助。
首先要注意的是,ROWID 通常是一个应用于 Oracle 的 ROWID 伪列的术语......
您只是在寻找自动识别的标识列...
在 Db2 for i...
select table_schema, table_name, column_name
from qsys2.syscolumns
where is_identity = 'YES'