1
我有一個數據庫用於在從第三方導入數據時跨主生產數據庫傳輸數據。將標識列添加到數據庫中的所有表Sql server 2005
我想爲每張表添加Identity
列。
我知道下面的SQL會爲單個表執行操作,我怎麼能爲數據庫中的所有表執行操作?
ALTER TABLE dbo.YourTable
ADD Id INT IDENTITY(1,1) NOT NULL
非常感謝
我有一個數據庫用於在從第三方導入數據時跨主生產數據庫傳輸數據。將標識列添加到數據庫中的所有表Sql server 2005
我想爲每張表添加Identity
列。
我知道下面的SQL會爲單個表執行操作,我怎麼能爲數據庫中的所有表執行操作?
ALTER TABLE dbo.YourTable
ADD Id INT IDENTITY(1,1) NOT NULL
非常感謝
你必須做一個表在一個時間 - 有沒有「神奇」的方式把它做的所有表一次。
你可以有SQL Server的產生通過檢查sys.tables
目錄視圖需要該操作的T-SQL語句 - 假設你要調用標識列Id
的所有表:
SELECT
t.NAME,
'ALTER TABLE [' + SCHEMA_NAME(t.SCHEMA_ID) + '].[' + t.NAME +
'] ADD Id INT IDENTITY(1,1) NOT NULL'
FROM
sys.tables t
,請複製&粘貼這條語句的結果行並對數據庫執行這些行 - 然後就完成了!
感謝您的幫助。工作 – user9969
SP_MSFOREACHTABLE「ALTER TABLE?ADD SQL_ID INT IDENTITY PRIMARY KEY」剛剛找到它。 – user9969