當(dāng)前數(shù)據(jù)庫中的每個(gè)外約束在該視圖中占一行。該信息架構(gòu)視圖返回當(dāng)前用戶對(duì)其擁有權(quán)限的對(duì)象的有關(guān)信息。INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS 視圖以 sysreferences、sysindexes 和 sysobjects 系統(tǒng)表為基礎(chǔ)。
若要從這些視圖中檢索信息,請(qǐng)指定完全合格的 INFORMATION_SCHEMA view_name 名稱。
列名 | 數(shù)據(jù)類型 | 描述 |
---|---|---|
CONSTRAINT_CATALOG | nvarchar(128) | 約束限定符。 |
CONSTRAINT_SCHEMA | nvarchar(128) | 約束所有者。 |
CONSTRAINT_NAME | sysname | 約束名稱。 |
UNIQUE_CONSTRAINT_CATALOG | nvarchar(128) | 唯一的約束限定符。 |
UNIQUE_CONSTRAINT_SCHEMA | nvarchar(128) | 唯一的約束所有者。 |
UNIQUE_CONSTRAINT_NAME | sysname | 唯一的約束。 |
MATCH_OPTION | varchar(7) | 引用約束匹配條件。始終返回 NONE,表示沒有定義匹配。下列情況下,則將條件視為匹配
|
UPDATE_RULE | varchar(9) | 當(dāng) Transact-SQL 語句違反了該約束定義的引用完整性時(shí)將采取的操作。 返回 NO ACTION 或 CASCADE。如果對(duì)于該約束,在 ON UPDATE 上指定了 NO ACTION,那么對(duì)該約束中引用的主鍵的更新不會(huì)傳播到外鍵。如果因?yàn)橹辽儆幸粋€(gè)外鍵包含相同的值,而導(dǎo)致主鍵的這種更新違反引用完整性,那么 SQL Server 將不會(huì)對(duì)父表和涉及的表執(zhí)行任何更改。SQL Server 還將產(chǎn)生一個(gè)錯(cuò)誤。 如果對(duì)于該約束,在 ON UPDATE 上指定了 CASCADE,那么對(duì)主鍵值所做的任何更改都將自動(dòng)地傳播到外鍵值。 |
DELETE_RULE | varchar(9) | 當(dāng) Transact-SQL 語句違反了該約束定義的引用完整性時(shí)將采取的操作。 返回 NO ACTION 或 CASCADE。如果對(duì)于該約束,在 ON DELETE 上定義了 NO ACTION,那么對(duì)該約束中引用的主鍵所做的刪除將不會(huì)傳播到外鍵。如果因?yàn)橹辽儆幸粋€(gè)外鍵包含相同的值,而導(dǎo)致主鍵的這種刪除違反引用完整性,那么 SQL Server 將不會(huì)對(duì)父表和涉及的表執(zhí)行任何更改。SQL Server 還將產(chǎn)生一個(gè)錯(cuò)誤。 如果對(duì)于該約束,在 ON DELETE 上指定了 CASCADE,那么對(duì)主鍵值所做的任何更改都將自動(dòng)地傳播到外鍵值。 |