當前數(shù)據(jù)庫中的每個外約束在該視圖中占一行。該信息架構視圖返回當前用戶對其擁有權限的對象的有關信息。INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS 視圖以 sysreferences、sysindexes 和 sysobjects 系統(tǒ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) | 當 Transact-SQL 語句違反了該約束定義的引用完整性時將采取的操作。 返回 NO ACTION 或 CASCADE。如果對于該約束,在 ON UPDATE 上指定了 NO ACTION,那么對該約束中引用的主鍵的更新不會傳播到外鍵。如果因為至少有一個外鍵包含相同的值,而導致主鍵的這種更新違反引用完整性,那么 SQL Server 將不會對父表和涉及的表執(zhí)行任何更改。SQL Server 還將產(chǎn)生一個錯誤。 如果對于該約束,在 ON UPDATE 上指定了 CASCADE,那么對主鍵值所做的任何更改都將自動地傳播到外鍵值。 |
DELETE_RULE | varchar(9) | 當 Transact-SQL 語句違反了該約束定義的引用完整性時將采取的操作。 返回 NO ACTION 或 CASCADE。如果對于該約束,在 ON DELETE 上定義了 NO ACTION,那么對該約束中引用的主鍵所做的刪除將不會傳播到外鍵。如果因為至少有一個外鍵包含相同的值,而導致主鍵的這種刪除違反引用完整性,那么 SQL Server 將不會對父表和涉及的表執(zhí)行任何更改。SQL Server 還將產(chǎn)生一個錯誤。 如果對于該約束,在 ON DELETE 上指定了 CASCADE,那么對主鍵值所做的任何更改都將自動地傳播到外鍵值。 |