da-sztorc
1/19/2018 - 2:01 PM

Alter Table Template

Template for altering table and rollback of the operation.

IF OBJECT_ID(N'Schema.DF_Table_NewColumnName', N'D') IS NOT NULL 
BEGIN
	ALTER TABLE [Schema].[Table] 
	DROP CONSTRAINT [DF_Table_NewColumnName]
END

IF EXISTS ( SELECT TOP 1 NULL
            FROM sys.columns
            WHERE object_id = OBJECT_ID(N'[Schema].[Table]', N'U')
              AND name = N'NewColumnName')
BEGIN
	ALTER TABLE [Schema].[Table]
	DROP COLUMN [NewColumnName]
END
IF NOT EXISTS (	SELECT TOP 1 NULL
                FROM sys.columns
                WHERE object_id = OBJECT_ID(N'[Schema].[Table]', N'U')
                  AND name = N'NewColumnName')
BEGIN
	ALTER TABLE [Schema].[Table]
	ADD [NewColumnName] DATETIME2 NOT NULL
	CONSTRAINT [DF_Table_NewColumnName] DEFAULT sysutcdatetime()
END