테이블에 새 열을 추가 한 다음 기존 열을 기반으로 해당 열을 업데이트하는 스크립트를 실행해야합니다.테이블 변경 스크립트가 추가하려고하는 것을 볼 수 없어 실패했습니다
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를 사용하여 이것을 우회 할 수 있지만 이는 해킹이 될 수 있습니다. 그것은 유일한 옵션입니까?
좋은 생각이들 것입니다. 문제는 변경이 버그 때문입니다. ModifiedDate 및 CreatedDate는 감사 필드이며 응용 프로그램에서 사용하기위한 것이 아니므로 별도의 '비즈니스 값'열이 필요합니다. – Craig