有没有办法在一个SQL查询中修改多个列?例如,我想更改单个表中多列的列定义,如下所示。我正在使用SQL Server 2012。
ALTER TABLE [Department]
ALTER COLUMN [DepartmentName] VARCHAR(200) NULL ,
[ProjectManagerName] VARCHAR(200) NULL ,
[AccountManagerName] VARCHAR(200) NULL
答案 0 :(得分:11)
一次改变多个列 - 不可能。
您可以使用已编辑的列创建Temp表,将数据从源表复制到临时表,删除源表并重命名临时表。
答案 1 :(得分:4)
为表格执行多个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;