Freigeben über


REFERENTIAL_CONSTRAINTS (Transact-SQL)

Gibt eine Zeile für jede FOREIGN KEY-Einschränkung in der aktuellen Datenbank zurück. Diese Informationsschemasicht gibt Informationen zu den Objekten zurück, für die der aktuelle Benutzer über Berechtigungen verfügt.

Geben Sie zum Abrufen von Informationen aus diesen Sichten den vollgekennzeichneten Namen (**INFORMATION_SCHEMA.**view_name) an.

ms179987.note(de-de,SQL.90).gifWichtig:
Dieses Feature wurde im Vergleich zu früheren Versionen von SQL Server geändert. Weitere Informationen finden Sie unter Verhaltensänderungen von Datenbankmodul-Features in SQL Server 2005.
Spaltenname Datentyp Beschreibung

CONSTRAINT_CATALOG

nvarchar(128)

Einschränkungsqualifizierer

CONSTRAINT_SCHEMA

nvarchar(128)

Der Name des Schemas, das die Einschränkung enthält.

CONSTRAINT_NAME

sysname

Einschränkungsname

UNIQUE_CONSTRAINT_CATALOG

nvarchar(128)

Der UNIQUE-Einschränkungsqualifizierer.

UNIQUE_CONSTRAINT_SCHEMA

nvarchar(128)

Der Name des Schemas, das die UNIQUE-Einschränkung enthält.

UNIQUE_CONSTRAINT_NAME

sysname

UNIQUE-Einschränkung.

MATCH_OPTION

varchar(7)

Referenzielle Bedingungen für die Übereinstimmung von Einschränkungen. Es wird immer SIMPLE zurückgegeben. Dies bedeutet, dass keine Übereinstimmung definiert ist. Die Bedingung wird als Übereinstimmung betrachtet, wenn eine der folgenden Bedingungen zutrifft:

  • Mindestens ein Wert in der Fremdschlüsselspalte ist NULL.
  • Keiner der Werte in der Fremdschlüsselspalte ist NULL, und in der Primärschlüsseltabelle ist eine Zeile mit demselben Schlüssel vorhanden.

UPDATE_RULE

varchar(11)

Die Aktion, die ausgeführt wird, wenn eine Transact-SQL-Anweisung die referenzielle Integrität verletzt, die durch diese Einschränkung definiert ist.

Gibt einen der folgenden Werte zurück:

  • NO ACTION
  • CASCADE
  • SET NULL
  • SET DEFAULT

Wenn für diese Einschränkung NO ACTION für ON UPDATE angegeben ist, wird die Aktualisierung des Primärschlüssels, auf den in der Einschränkung verwiesen wird, nicht an den Fremdschlüssel weitergegeben. Wenn diese Aktualisierung des Primärschlüssels zu einer Verletzung der referenziellen Integrität führt, weil mindestens ein Fremdschlüssel denselben Wert aufweist, nimmt SQL Server keine Änderung an der übergeordneten Tabelle und den verweisenden Tabellen vor. Außerdem löst SQL Server einen Fehler aus.

Wenn für diese Einschränkung CASCADE für ON UPDATE angegeben ist, werden alle Änderungen des Primärschlüsselwertes automatisch an den Fremdschlüsselwert weitergegeben.

DELETE_RULE

varchar(11)

Die Aktion, die ausgeführt wird, wenn eine Transact-SQL-Anweisung die referenzielle Integrität verletzt, die durch diese Einschränkung definiert ist.

Gibt einen der folgenden Werte zurück:

  • NO ACTION
  • CASCADE
  • SET NULL
  • SET DEFAULT

Wenn für diese Einschränkung NO ACTION für ON DELETE angegeben ist, wird das Löschen des Primärschlüssels, auf den in der Einschränkung verwiesen wird, nicht an den Fremdschlüssel weitergegeben. Wenn das Löschen des Primärschlüssels zu einer Verletzung der referenziellen Integrität führt, weil mindestens ein Fremdschlüssel denselben Wert aufweist, nimmt SQL Server keine Änderung an der übergeordneten Tabelle und den verweisenden Tabellen vor. Außerdem löst SQL Server einen Fehler aus.

Wenn für diese Einschränkung CASCADE für ON DELETE angegeben ist, werden alle Änderungen des Primärschlüsselwertes automatisch an den Fremdschlüsselwert weitergegeben.

Siehe auch

Verweis

Systemsichten (Transact-SQL)
Informationsschemasichten (Transact-SQL)
sys.indexes (Transact-SQL)
sys.objects (Transact-SQL)
sys.foreign_keys (Transact-SQL)

Andere Ressourcen

Abfragen des SQL Server-Systemkatalogs

Hilfe und Informationen

Informationsquellen für SQL Server 2005