SELECT [name]
FROM syscolumns
WHERE [id] IN (SELECT [id]
FROM sysobjects
WHERE [name] = 'ACTIVITY')
AND colid IN (SELECT SIK.colid
FROM sysindexkeys SIK
JOIN sysobjects SO ON SIK.[id] = SO.[id]
AND SO.[name] = 'ACTIVITY')
它通過id返回所有列。我只需要主鍵。當我添加以下行時,它是空的:通過查詢獲取表主鍵列
WHERE SIK.indid = 1
這是爲什麼?還有其他方法可以做同樣的事情嗎?因爲我在搶
'indid = 1'只會提供有關表上聚簇索引的信息(如果有)。不能保證主鍵和聚簇索引是相同的東西。 – 2011-03-17 10:07:06