MAK*_*MAK 6 sql-server sql-server-2008-r2
我正在使用SQL Server 2008 R2。
我想删除表中已经存在的列,否则不抛出任何错误。
尝试过:
ALTER TABLE Emp
DROP COLUMN IF EXISTS Lname;
Run Code Online (Sandbox Code Playgroud)
错误:
关键字“ IF”附近的语法不正确。
通过搜索,我知道该选项从2016年开始可用。
SQL Server 2008 R2中有哪些替代方案?
Cha*_*kya 10
IF EXISTS (SELECT 1
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'Emp'
AND COLUMN_NAME = 'Lname'
AND TABLE_SCHEMA='DBO')
BEGIN
ALTER TABLE Emp
DROP COLUMN Lname
END
GO
Run Code Online (Sandbox Code Playgroud)