为了账号安全,请及时绑定邮箱和手机立即绑定

SQL Server:使用sql查询获取表主键

SQL Server:使用sql查询获取表主键

翻阅古今 2019-11-28 09:43:58
我想使用针对SQL Server数据库的SQL查询来获取特定表的主键。在MySQL中,我使用以下查询来获取表主键:SHOW KEYS FROM tablename WHERE Key_name = 'PRIMARY'什么是上述SQL Server查询的等效项?如果存在适用于MySQL和SQL Server的查询,则将是理想的情况。
查看完整描述

3 回答

?
Smart猫小萌

TA贡献1911条经验 获得超7个赞

找到了另一个:


SELECT KU.table_name as TABLENAME,column_name as PRIMARYKEYCOLUMN

FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS AS TC

INNER JOIN

    INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS KU

          ON TC.CONSTRAINT_TYPE = 'PRIMARY KEY' AND

             TC.CONSTRAINT_NAME = KU.CONSTRAINT_NAME AND 

             KU.table_name='yourTableName'

ORDER BY KU.TABLE_NAME, KU.ORDINAL_POSITION;

我已经在SQL Server 2003/2005上对此进行了测试


查看完整回答
反对 回复 2019-11-28
?
白板的微信

TA贡献1883条经验 获得超3个赞

从内存来看,要么是


SELECT * FROM sys.objects

WHERE type = 'PK' 

AND  object_id = OBJECT_ID ('tableName')

或这个..


SELECT * FROM sys.objects

WHERE type = 'PK' 

AND  parent_object_id = OBJECT_ID ('tableName')

我认为


查看完整回答
反对 回复 2019-11-28
  • 3 回答
  • 0 关注
  • 1056 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信