Share via


REFERENTIAL_CONSTRAINTS (Transact-SQL)

Devuelve una fila para cada restricción FOREIGN KEY de la base de datos actual. Esta vista de esquema de información devuelve información acerca de los objetos para los que el usuario actual tiene permisos.

Para recuperar información de estas vistas, especifique el nombre completo de **INFORMATION_SCHEMA.**view_name.

Nombre de columna

Tipo de datos

Descripción

CONSTRAINT_CATALOG

nvarchar(128)

Calificador de la restricción.

CONSTRAINT_SCHEMA

nvarchar(128)

Nombre del esquema que contiene la restricción.

Nota importanteImportante
No utilice las vistas INFORMATION_SCHEMA para determinar el esquema de un objeto. La única manera confiable de localizar el esquema de un objeto consiste en consultar la vista de catálogo sys.objects.

CONSTRAINT_NAME

sysname

Nombre de la restricción.

UNIQUE_CONSTRAINT_CATALOG

nvarchar(128)

Calificador de la restricción UNIQUE.

UNIQUE_CONSTRAINT_SCHEMA

nvarchar(128)

Nombre del esquema que contiene la restricción UNIQUE.

Nota importanteImportante
No utilice las vistas INFORMATION_SCHEMA para determinar el esquema de un objeto. La única manera confiable de localizar el esquema de un objeto consiste en consultar la vista de catálogo sys.objects.

UNIQUE_CONSTRAINT_NAME

sysname

Restricción UNIQUE.

MATCH_OPTION

varchar(7)

Condiciones de coincidencia de restricción referencial. Siempre devuelve SIMPLE. Esto significa que no se define ninguna coincidencia. La condición se considera una coincidencia en una de las siguientes circunstancias:

  • Al menos un valor de la columna de clave externa es NULL.

  • Ninguno de los valores de la columna de clave externa es NULL y una fila de la tabla de clave principal tiene la misma clave.

UPDATE_RULE

varchar(11)

Acción que se realiza cuando una instrucción Transact-SQL infringe la integridad referencial definida por esta restricción.

Devuelve una de las siguientes opciones:

  • NO ACTION

  • CASCADE

  • SET NULL

  • SET DEFAULT

Si para esta restricción se especifica NO ACTION en ON UPDATE, la actualización de la clave principal a la que se hace referencia en la restricción no se propagará a la clave externa. Si una actualización de una clave principal de estas características provocara una infracción de la integridad referencial porque al menos una clave externa contiene el mismo valor, SQL Server no realizará ningún cambio en las tablas primaria y de referencia. Asimismo, SQL Server generará un error.

Si para esta restricción se especifica CASCADE en ON UPDATE, cualquier cambio en el valor de clave principal se propagará automáticamente al valor de clave externa.

DELETE_RULE

varchar(11)

Acción que se realiza cuando una instrucción Transact-SQL infringe la integridad referencial definida por esta restricción.

Devuelve una de las siguientes opciones:

  • NO ACTION

  • CASCADE

  • SET NULL

  • SET DEFAULT

Si para esta restricción se especifica NO ACTION en ON DELETE, la eliminación de la clave principal a la que se hace referencia en la restricción no se propagará a la clave externa. Si una eliminación de una clave principal de estas características provocara una infracción de la integridad referencial porque al menos una clave externa contiene el mismo valor, SQL Server no realizará ningún cambio en las tablas primaria y de referencia. Asimismo, SQL Server generará un error.

Si para esta restricción se especifica CASCADE en ON DELETE, cualquier cambio en el valor de clave principal se propagará automáticamente al valor de clave externa.