PDA

View Full Version : SQL Query: Determine PK


rynox
12-02-2005, 09:34 PM
I want to do a query on a db's system tables to determine what column(s) are part of the primary key.

Example. SELECT syscolumns.[name]
FROM sysobjects,syscolumns,systypes
WHERE sysobjects.id=syscolumns.id AND
systypes.xtype=syscolumns.xtype AND
sysobjects.name='tablename'

Yields all the column names. But I just want to see those that are part of the primary key.

Ryan

rynox
12-05-2005, 07:30 PM
From Microsoft Support Newsgroup:

Try:

select
*
from
information_schema.constraint_column_usage
where
table_name = 'Order Details'
and objectproperty (object_id (constraint_name), 'IsPrimaryKey') = 1


--
Tom

----------------------------------------------------
Thomas A. Moreau, BSc, PhD, MCSE, MCDBA
SQL Server MVP
Columnist, SQL Server Professional
Toronto, ON Canada tom@cips.ca
www.pinpub.com