2014-07-25 87 views
-1

假設如果我知道列名稱,如何確定哪些表具有這些列名稱?在我的數據庫中,我有很多表,但我不確定哪些表包含這些列名。打開數據庫中的所有表格實際上是不可能的?請幫忙。 我知道一些表的關鍵列值,但我不知道確切地說,那些對應於我的id的值被定義。例如。我知道地址碼,運輸密鑰等,但不知道在哪個表中我會找到這些值。 ? 如果我有地址鍵1,我應該能夠找到對應於1的地址。是否在SQL服務器上找到這個方法?從列名中確定表名稱

回答

0

你可以做以下

select TABLE_NAME,COLUMN_NAME 
from INFORMATION_SCHEMA.COLUMNS 
where COLUMN_NAME = 'YourColumnNameHere' 

這將返回在使用你的列中的所有表(和視圖)。

0

尋找具有特定列名的表格(一個或多個)相對簡單:

SELECT t.name FROM sys.columns c 
JOIN sys.tables t ON c.object_id = t.object_id 
WHERE c.name = 'NAME' 
ORDER BY t.name 

這將無法確定哪個表具有的ID值,雖然。你將不得不分別查詢返回的表。