簡體   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