Share via


REFERENTIAL_CONSTRAINTS (Transact-SQL)

Van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-database in Microsoft Fabric

Geeft één rij terug voor elke FOREIGN KEY-beperking in de huidige database. Deze informatieschemaweergave geeft informatie terug over de objecten waarvoor de huidige gebruiker rechten heeft.

Om informatie uit deze weergaven op te halen, specificeer je de volledig gekwalificeerde naam van INFORMATION_SCHEMA. view_name.

Kolomnaam Gegevenstype Description
CONSTRAINT_CATALOG Nvarchar(128) Beperkingskwalificatie.
CONSTRAINT_SCHEMA Nvarchar(128) Naam van het schema dat de beperking bevat.

Belangrijk: Gebruik geen INFORMATION_SCHEMA views om het schema van een object te bepalen. INFORMATION_SCHEMA weergaven vertegenwoordigen slechts een deelverzameling van de metadata van een object. De enige betrouwbare manier om het schema van een object te vinden is door de sys.objects catalogusweergave te bevragen.
CONSTRAINT_NAME sysname Beperkingsnaam.
UNIQUE_CONSTRAINT_CATALOG Nvarchar(128) UNIEKE beperkingskwalificatie.
UNIQUE_CONSTRAINT_SCHEMA Nvarchar(128) Naam van het schema dat de UNIEKE constraint bevat.

Belangrijk: Gebruik geen INFORMATION_SCHEMA views om het schema van een object te bepalen. INFORMATION_SCHEMA weergaven vertegenwoordigen slechts een deelverzameling van de metadata van een object. De enige betrouwbare manier om het schema van een object te vinden is door de sys.objects catalogusweergave te bevragen.
UNIQUE_CONSTRAINT_NAME sysname UNIEKE beperking.
MATCH_OPTION Varchar(7) Referentiebeperkings-matching voorwaarden. Geeft altijd SIMPLE terug. Dit betekent dat er geen overeenkomst is gedefinieerd. De voorwaarde wordt als een match beschouwd wanneer een van de volgende voorwaarden waar is:

Ten minste één waarde in de kolom vreemde sleutel is NULL.

Alle waarden in de kolom vreemde sleutel zijn niet NULL, en er is een rij in de primaire sleuteltabel met dezelfde sleutel.
UPDATE_RULE Varchar(11) Actie die wordt ondernomen wanneer een Transact-SQL-uitspraak de referentieintegriteit schendt die door deze beperking wordt gedefinieerd. Geeft een van de volgende opties terug:
GEEN ACTIE
CASCADE
SET NULL
STEL STANDAARD IN

Als GEEN ACTIE is gespecificeerd op ON UPDATE voor deze constraint, zal de update van de primaire sleutel die in de constraint wordt genoemd niet worden doorgegeven aan de vreemde sleutel. Als zo'n update van een primaire sleutel een referentieintegriteitsschending veroorzaakt omdat ten minste één vreemde sleutel dezelfde waarde bevat, zal SQL Server geen wijzigingen aanbrengen in de hoofd- en referentietabellen. SQL Server zal ook een foutmelding geven.

Als CASCADE wordt gespecificeerd op ON UPDATE voor deze beperking, wordt elke wijziging van de primaire sleutelwaarde automatisch doorgegeven aan de vreemde sleutelwaarde.
DELETE_RULE Varchar(11) Actie die wordt ondernomen wanneer een Transact-SQL-uitspraak de referentieintegriteit schendt die door deze beperking wordt gedefinieerd. Geeft een van de volgende opties terug:
GEEN ACTIE
CASCADE
SET NULL
STEL STANDAARD IN

Als GEEN ACTIE is gespecificeerd op ON DELETE voor deze constraint, wordt het verwijderen van de primaire sleutel waarnaar in de constraint wordt verwezen niet naar de vreemde sleutel doorgegeven. Als zo'n verwijdering van een primaire sleutel een schending van referentieintegriteit veroorzaakt omdat ten minste één vreemde sleutel dezelfde waarde bevat, zal SQL Server geen wijzigingen aanbrengen in de ouder- en referentietabellen. SQL Server zal ook een foutmelding geven.

Als CASCADE op ON DELETE op deze beperking is gespecificeerd, wordt elke wijziging van de primaire sleutelwaarde automatisch doorgegeven aan de vreemde sleutelwaarde.

Zie ook

Systeemweergaven (Transact-SQL)
Informatieschemaweergaven (Transact-SQL)
sys.indexes (Transact-SQL)
sys.objects (Transact-SQL)
sys.foreign_keys (Transact-SQL)