REFERENTIAL_CONSTRAINTS (Transact-SQL)
为当前数据库中的每个 FOREIGN KEY 约束返回一行。该信息架构视图返回当前用户对其拥有权限的对象的相关信息。
若要从这些视图中检索信息,请指定 **INFORMATION_SCHEMA.**view_name 的完全限定名称。
重要提示: |
---|
与 SQL Server 的早期版本相比,此功能有所更改。有关详细信息,请参阅 SQL Server 2005 中数据库引擎功能的行为更改。 |
列名 | 数据类型 | 说明 |
---|---|---|
CONSTRAINT_CATALOG |
nvarchar(128) |
约束限定符。 |
CONSTRAINT_SCHEMA |
nvarchar(128) |
包含该约束的架构的名称。 |
CONSTRAINT_NAME |
sysname |
约束名称。 |
UNIQUE_CONSTRAINT_CATALOG |
nvarchar(128) |
UNIQUE 约束限定符。 |
UNIQUE_CONSTRAINT_SCHEMA |
nvarchar(128) |
包含 UNIQUE 约束的架构的名称。 |
UNIQUE_CONSTRAINT_NAME |
sysname |
UNIQUE 约束。 |
MATCH_OPTION |
varchar(7) |
引用约束匹配条件。始终返回 SIMPLE。这表示没有定义匹配。当下列情况之一为真时,条件被视为匹配:
|
UPDATE_RULE |
varchar(11) |
当 Transact-SQL 语句违反该约束所定义的引用完整性时执行的操作。 返回下列项之一:
如果为该约束在 ON UPDATE 上指定了 NO ACTION,则对该约束中被引用主键的更新不会传播到外键。如果因为至少有一个外键包含相同的值,而导致主键的更新违反了引用完整性,则 SQL Server 将不会对父表和引用表执行任何更改。SQL Server 还将产生错误。 如果为该约束在 ON UPDATE 上指定了 CASCADE,则对主键值所做的任何更改都将自动地传播到外键值。 |
DELETE_RULE |
varchar(11) |
当 Transact-SQL 语句违反了该约束所定义的引用完整性时执行的操作。 返回下列项之一:
如果为该约束在 ON DELETE 上定义了 NO ACTION,则对该约束中被引用主键所做的删除将不会传播到外键。如果因为至少有一个外键包含相同的值而导致主键的删除违反了引用完整性,则 SQL Server 将不会对父表和引用表执行任何更改。SQL Server 还将产生错误。 如果为该约束在 ON DELETE 上指定了 CASCADE,则对主键值所做的任何更改都将自动传播到外键值。 |
请参阅
参考
系统视图 (Transact-SQL)
信息架构视图 (Transact-SQL)
sys.indexes (Transact-SQL)
sys.objects (Transact-SQL)
sys.foreign_keys (Transact-SQL)