您的位置:首页 > 数据库

SQL SERVER获得指定表的主键

2007-05-18 15:09 190 查看
有时候要获得表主键字段,虽然系统自带有存储过程可以获得,但是对于熟悉系统表的话,自己写个也很容易。

2 Declare @table_name varchar(100)
3 Set @table_name='table_Pqs'
4 --1、可以根据系统存储过程
5 Execute sp_pkeys @table_name
6
7 --2、根据系统表获得
8 Declare @objectid int
9 Set @objectid=object_id(@table_name)
10 Select
11 col_name(@objectid,colid) '主键字段'
12 From sysobjects as o
13 Inner Join sysindexes as i On i.name=o.name
14 Inner Join sysindexkeys as k On k.indid=i.indid
15 Where
16 o.xtype = 'PK' and parent_obj=@objectid and k.id=@objectid

这里应用了sysobjects(对象表),sysindexes(索引表),sysindexkeys(索引键表)。
这个查询直接获取对象表里主键的索引来获得的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: