在 Oracle 中,我可以发出 DROP TABLE ... 级联约束,它不会抱怨 FK 等。
T-SQL 中有等效的吗?
对于那些希望获得更普遍适用的答案的人
这将找到约束,删除它,然后删除列
感谢蒂姆·伦汀并投票如何查找默认约束的名称 https://stackoverflow.com/questions/141682/how-do-i-find-a-default-constraint-using-information-schema首先。
Declare @sql VarChar(255)
Declare @tableName Varchar(255)
Declare @columnName VarChar(255)
Select @tableName = 'MyTableName'
Select @columnName = 'MyColumnName'
select @sql = o.[name] from sysobjects o
inner join syscolumns c
on o.id = c.cdefault
inner join sysobjects t
on c.id = t.id
where o.xtype = 'd'
and t.name = @tableName
and c.name = @columnName
if @sql is not null
begin
select @sql = 'Alter Table ' + @tableName + ' Drop Constraint ' + @sql + ' Alter Table ' + @tablename + ' Drop Column ' + @columnName
exec(@sql)
end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)