在Oracle中,我可以发出DROP TABLE ...级联的约束,也不会抱怨FKS,等等。

是否有在T-SQL的等效?

有帮助吗?

解决方案

没有,SSMS中右键单击表,并选择“脚本表作为”,然后“拖放到”,然后选择“新窗口”,“文件...”或“剪贴板”,它会产生一个脚本,将包括FKS等的所有必要的液滴。

其他提示

对于那些谁更普遍适用的答案的希望来到这里

这会发现约束,将其删除,那么列

感谢和一票添Lentine 如何找到一开始就默认约束的名称。

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
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top