【发布时间】:2016-09-20 01:10:09
【问题描述】:
我需要执行一个脚本,将新列添加到表中,然后根据现有列更新该列。
PRINT 'Adding Column to Table...'
ALTER TABLE dbo.Table
ADD [Column] DATETIME2 NULL;
PRINT 'Updating data...'
UPDATE dbo.Table
SET [column] = ISNULL([ModifiedDate],[CreatedDate])
PRINT 'Finalising table structure...'
ALTER TABLE dbo.Table
ALTER COLUMN [Column] DATETIME2 NOT NULL
PRINT 'Complete!'
但是,当我一口气执行它时,它在更新时出错,说“列”不存在。
如果我一次运行一行,它就可以工作。
有没有办法解决这个问题?
我可以通过使用 EXEC 来执行 UPDATE 来绕过这个,但这似乎很老套。这是唯一的选择吗?
【问题讨论】:
标签: sql sql-server sql-server-2014 ddl