如何创建一个查询,该查询为我提供了SQL Server中具有复合主键的表的列表?也许使用sys.tables或information_schema.tables或其他?
您必须使用eigher架构表或列表。就这个。
SELECT K.TABLE_CATALOG,
K.TABLE_NAME,
K.COLUMN_NAME,
K.ORDINAL_POSITION FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE K
INNER JOIN INFORMATION_SCHEMA.TABLE_CONSTRAINTS TC
ON K.TABLE_CATALOG = TC.TABLE_CATALOG
AND K.TABLE_SCHEMA = TC.TABLE_SCHEMA
AND K.CONSTRAINT_NAME = TC.CONSTRAINT_NAME
WHERE TC.CONSTRAINT_TYPE = 'PRIMARY KEY'
请参阅链接 - Retrieving column information (composite key) in SQL