· 7 years ago · Nov 29, 2018, 12:26 PM
1IF OBJECT_ID('[dbo].[SafeDropColumn]') IS NOT NULL
2BEGIN
3 PRINT N'Dropping [dbo].[SafeDropColumn]';
4 DROP PROCEDURE [dbo].[SafeDropColumn];
5END
6GO
7
8CREATE PROCEDURE [dbo].[SafeDropColumn]
9 @TableName sysname,
10 @ColumnName sysname
11AS
12BEGIN
13 EXEC [dbo].[SafeDropAnonymousDefault] @TableName=@TableName, @ColumnName=@ColumnName;
14 IF EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA='dbo' AND TABLE_NAME=@TableName AND COLUMN_NAME=@ColumnName)
15 BEGIN
16 PRINT N'Dropping column ' + @ColumnName + N' from table ' + @TableName;
17 DECLARE @sql nvarchar(max);
18 SET @sql = N'ALTER TABLE [dbo].[' + @TableName + N'] DROP COLUMN [' + @ColumnName + N']';
19 EXEC(@sql);
20 END
21END
22GO