如何找出使用select查询的表的主键

时间:2011-08-17 14:37:28

标签: database oracle select primary-key

是否可以运行SELECT PIRMARY_KEY FROM SomeTable,其中PRIMARY_KEY是一个自动转换为SomeTable主键列的关键字

我正在使用 Oracle 数据库

3 个答案:

答案 0 :(得分:3)

试试这个:

select cc.column_name
from user_cons_columns cc
join user_constraints c on c.constraint_name = cc.constraint_name
where c.table_name = 'MYTABLE'
and c.constraint_type = 'P'
order by cc.position

您可以在Oracle Database Reference

中详细了解这些和其他有用的数据字典视图

答案 1 :(得分:0)

如果您问“我如何弄清楚任何给定表的主键是什么”,那么'desc table_name'将显示您需要知道的所有详细信息。

答案 2 :(得分:0)

这是特定于数据库的。该信息通常驻留在专有系统表中。

但是,大多数情况下,数据库实现足以为您提供存储过程来获取此信息。有API可以为您提供获取此信息的数据库无关的方法,但我怀疑您是在直接从SQL访问的东西。发布您的特定数据库类型,我相信有人会知道。

相关问题