2016-05-11 29 views
1

有沒有辦法在一個SQL查詢中修改多個列?例如,我想要如下更改單個表中多個列的列定義。我正在使用SQL Server 2012.在單個變更表查詢中修改多個列

ALTER TABLE [Department]  
ALTER COLUMN [DepartmentName] VARCHAR(200) NULL , 
[ProjectManagerName] VARCHAR(200) NULL , 
[AccountManagerName] VARCHAR(200) NULL 
+0

沒有,也沒有必要這麼做。如果你想同時完成這一切,那麼簡單地包裝同一事務中的所有alter語句。 – Kahn

回答

6

一次更改多列 - 不可能。

您可以使用編輯過的列創建臨時表,將數據從源表複製到臨時表,刪除源表並重命名臨時表。

2

這是不可能做一個表的多個ALTER列。

你必須改變他們一個個像

ALTER TABLE Department ALTER COLUMN [DepartmentName] VARCHAR(200) NULL; 
ALTER TABLE Department ALTER COLUMN [ProjectManagerName] VARCHAR(200) NULL; 
ALTER TABLE Department ALTER COLUMN [ProjectManagerName] VARCHAR(200) NULL; 
ALTER TABLE Department ALTER COLUMN [AccountManagerName] VARCHAR(200) NULL;