Sql 是否打开级联删除?
是否有方法检查表是否已启用级联删除?我正在查看表的脚本(来自SQL Server),没有看到任何级联删除的迹象 外键关系请使用Sql 是否打开级联删除?,sql,sql-server,Sql,Sql Server,是否有方法检查表是否已启用级联删除?我正在查看表的脚本(来自SQL Server),没有看到任何级联删除的迹象 外键关系请使用sys.foreign\u key 列-delete\u referential\u action帮助您了解是否存在级联删除 下面查看类似作品的帮助: sys.default_constraints for default constraints on columns sys.check_constraints for check constraints on colu
sys.foreign\u key
列-delete\u referential\u action
帮助您了解是否存在级联删除
下面查看类似作品的帮助:
sys.default_constraints for default constraints on columns
sys.check_constraints for check constraints on columns
sys.key_constraints for key constraints (e.g. primary keys)
sys.foreign_keys for foreign key relations
来源:我找到了如何做到这一点: 我将表上的FK脚本化为一个新的查询窗口:
ALTER TABLE [dbo].[myTable] WITH CHECK ADD CONSTRAINT [FK_myTable_myTableHeaders] FOREIGN KEY([ID])
REFERENCES [dbo].[myTableHeaders] ([_ID])
ON DELETE CASCADE
GO
这就是我能够确认它的原因。您可以使用标准方法的信息模式,例如
select * from INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
where DELETE_RULE ='CASCADE'
表本身没有启用“级联删除”。外键约束可以。谢谢你的回答。这比我的解决方案更快更简单。您知道如何在具有Delete_referential_action=0和Delete_referential_action_desc='NO_action'的FK上启用级联删除吗