繁体   English   中英

查询以查找所有FK约束及其删除规则(SQL Server)

[英]Query to find all FK constraints and their delete rules (SQL Server)

在SQL Server 2005中,我可以发出SQL查询来列出数据库中表的所有FK约束,并显示删除规则吗? (即没有,级联,设置为null或设置默认值)

我正在寻找的输出类似于:

FK_NAME                  ON_DELETE
==================================
FK_LINEITEM_STATEMENT    CASCADE
FK_ACCOUNTREP_CLIENT     NOTHING

你可以试试这个:

SELECT name, delete_referential_action_desc
FROM sys.foreign_keys

这里游戏的后期不多,但你也可以试试这个:

select * from INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS

您还可以在WHERE块中使用表达式:

objectproperty(object_id('FK_your_constraint_name'), 'CnstIsDeleteCascade')

要么

objectproperty(your_constraint_object_id, 'CnstIsDeleteCascade')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM