sqlserver get primary column name

علی ذوالفقار
1402/05/01 12:57:13 (357)
SELECT 
      C.COLUMN_NAME 
    , C.TABLE_NAME 
FROM  
    INFORMATION_SCHEMA.TABLE_CONSTRAINTS T  
    JOIN INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE C  
    ON C.CONSTRAINT_NAME=T.CONSTRAINT_NAME  
WHERE  
    T.CONSTRAINT_TYPE='PRIMARY KEY'

OR : 

SELECT 
    TABLE_NAME , COLUMN_NAME 
FROM 
    INFORMATION_SCHEMA.KEY_COLUMN_USAGE
WHERE 
    OBJECTPROPERTY(OBJECT_ID(CONSTRAINT_SCHEMA + '.' + QUOTENAME(CONSTRAINT_NAME)), 'IsPrimaryKey') = 1


Back