尋找某欄位存在那幾些資料表

尋找某欄位存在那幾些資料表

在管理資料庫時,

最怕就是同一欄位分散在不同資料表,

若要同時更新就很令人興奮(尤其是自已又忘了有那些資料表時),

有同事整理可以查詢相的「SQL」語法,

真是太好用啦~~~

DECLARE @COL1 NVARCHAR(50)
DECLARE @COL2 NVARCHAR(255)
DECLARE @FindColName NVARCHAR(50)
SELECT  @FindColName = 'id'   ------------ 打入想要找的 欄位名稱

CREATE TABLE #TEMP
(
	TabName NVARCHAR(80),
	ColName NVARCHAR(80)
)


DECLARE contact_cursor CURSOR 
FOR
	select name from sysobjects where type='U' 
	

OPEN contact_cursor
FETCH NEXT FROM contact_cursor INTO @COL1
WHILE @@FETCH_STATUS = 0
BEGIN

	SELECT @COL2 = 'insert into #TEMP select '''+@COL1+''', name from syscolumns where id=object_id('''+@COL1+''') and name = '''+@FindColName+''''
	EXEC  (@COL2)
	

FETCH NEXT FROM contact_cursor INTO @COL1
END  



CLOSE contact_cursor  
DEALLOCATE contact_cursor 


SELECT * FROM #TEMP

DROP TABLE #TEMP

 

自我LV~