如何在DB2中查找表的主键的名称和值

时间:2012-08-08 06:05:51

标签: sql db2 primary-key

如何查找表的主键列名称和值?我试过查看SYSCAT表,但找不到任何内容。

4 个答案:

答案 0 :(得分:2)

答案 1 :(得分:1)

SELECT TBCREATOR,
       TBNAME,
       NAME,
       KEYSEQ

FROM SYSIBM.SYSCOLUMNS

WHERE TBCREATOR = 'DBSCHEMA'
  AND TBNAME = 'TABLE_NAME'
  AND KEYSEQ > 0

ORDER BY KEYSEQ

答案 2 :(得分:0)

您是尝试使用Java / Perl等编程语言还是在db2命令行中执行此操作?

答案 3 :(得分:0)

使用以下查询列出数据库中的所有主键和外键:

select tbname, pkcolnames, fkcolnames from sysibm.sysrels 

对于特定的表,只需限制查询:

select tbname, pkcolnames, fkcolnames from sysibm.sysrels where tbname='<table name>'

我在以下网址找到了这些信息:

http://database.ittoolbox.com/groups/technical-functional/db2-l/how-to-find-a-primary-keys-and-foreign-keys-in-a-db2-table-268422