sys.foreign_key_columns (Transact-SQL)
Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Warehouse in Microsoft Fabric
Enthält eine Zeile für jede Spalte oder Spaltengruppe, die einen Fremdschlüssel enthält.
Spaltenname | Datentyp | BESCHREIBUNG |
---|---|---|
constraint_object_id | int | ID der FOREIGN KEY-Einschränkung. |
constraint_column_id | int | ID der Spalte oder der Spaltengruppe, die die FOREIGN KEY-Anweisung enthält (1..n, wobei n die Anzahl der Spalten darstellt). |
parent_object_id | int | Die ID des übergeordneten Objekts der Einschränkung, das das verweisende Objekt darstellt. |
parent_column_id | int | Die ID der übergeordneten Spalte, die die verweisende Spalte darstellt. |
referenced_object_id | int | Die ID des Objekts, auf das verwiesen wird und das den Kandidatenschlüssel aufweist. |
referenced_column_id | int | Die ID der Spalte, auf die verwiesen wird (Kandidatenschlüsselspalte). |
Berechtigungen
Die Sichtbarkeit der Metadaten in Katalogansichten ist auf sicherungsfähige Elemente beschränkt, die ein Benutzer besitzt oder für die der Benutzer eine Berechtigung erteilt hat. Weitere Informationen finden Sie unter Metadata Visibility Configuration.
Beispielabfrage
Die folgende Transact-SQL-Abfrage ruft alle Fremdschlüssel in der Datenbank ab, einschließlich der zugehörigen Tabellen und Spalten.
SELECT fk.name AS ForeignKeyName
, t_parent.name AS ParentTableName
, c_parent.name AS ParentColumnName
, t_child.name AS ReferencedTableName
, c_child.name AS ReferencedColumnName
FROM sys.foreign_keys fk
INNER JOIN sys.foreign_key_columns fkc
ON fkc.constraint_object_id = fk.object_id
INNER JOIN sys.tables t_parent
ON t_parent.object_id = fk.parent_object_id
INNER JOIN sys.columns c_parent
ON fkc.parent_column_id = c_parent.column_id
AND c_parent.object_id = t_parent.object_id
INNER JOIN sys.tables t_child
ON t_child.object_id = fk.referenced_object_id
INNER JOIN sys.columns c_child
ON c_child.object_id = t_child.object_id
AND fkc.referenced_column_id = c_child.column_id
ORDER BY t_parent.name, c_parent.name;
Siehe auch
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für