在db2中,如何获取特定db模式的主键列表和相应的表名称?获取主键列表和相应的表名
我已经发现了一些查询从表像获得主键,
SELECT sc.name
FROM SYSIBM.SYSCOLUMNS SC
WHERE SC.TBNAME = 'REGISTRATION'
AND sc.identity ='N'
AND sc.tbcreator='schemaname'
AND sc.keyseq=1
我可以修改同样获得完整的主键,列名和表名,形成一个模式?
在db2中,如何获取特定db模式的主键列表和相应的表名称?获取主键列表和相应的表名
我已经发现了一些查询从表像获得主键,
SELECT sc.name
FROM SYSIBM.SYSCOLUMNS SC
WHERE SC.TBNAME = 'REGISTRATION'
AND sc.identity ='N'
AND sc.tbcreator='schemaname'
AND sc.keyseq=1
我可以修改同样获得完整的主键,列名和表名,形成一个模式?
SELECT
tabschema, tabname, colname
FROM
syscat.columns
WHERE
keyseq IS NOT NULL AND
keyseq > 0
ORDER BY
tabschema, tabname, keyseq
你在哪个平台上运行DB2?您是在查找每个表中列的列表,还是查找每个表的主键中使用的列的列表? (有很大的区别) –
我需要表名,主键名和列名。 – NaaN
假设'sc.identity'是一个布尔(基本上)列,为什么要从列表中删除autogen/identity列?表格中的大多数主键都是精确的列类型。您是否在寻找自然(外部id)主键,而不是代理(代码,通常是数字)键? –