Tabellen-Primärschlüssel in SQL Server abrufen
Im Zusammenhang mit der Datenbankverwaltung ist es entscheidend zu wissen, wie die Primärschlüssel einer Tabelle abgerufen werden . In SQL Server gibt es mehrere Ansätze, um diese Aufgabe zu erfüllen.
Eine gängige Methode ist die Verwendung des integrierten Befehls OBJECTPROPERTY(). Mit diesem Befehl können Sie Informationen über die Eigenschaften von Datenbankobjekten abrufen, einschließlich Primärschlüsseln. So können Sie es verwenden:
SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE OBJECTPROPERTY(OBJECT_ID(CONSTRAINT_SCHEMA + '.' + QUOTENAME(CONSTRAINT_NAME)), 'IsPrimaryKey') = 1 AND TABLE_NAME = 'TableName' AND TABLE_SCHEMA = 'Schema'
In dieser Abfrage prüft die Funktion OBJECTPROPERTY(), ob die Eigenschaft IsPrimaryKey der Einschränkung (Primärschlüssel) mit dem Namen CONSTRAINT_NAME ist auf 1 gesetzt, was anzeigt, dass die Spalte Teil eines Primärschlüssels ist. TABLE_NAME und TABLE_SCHEMA geben die Tabelle und das Schema an, an denen Sie interessiert sind.
Darüber hinaus besteht eine weitere Option für bestimmte Versionen von SQL Server darin, die TabelleSYS.INDEXES in Kombination mit der Tabelle SYS.COLUMNS Tabelle. Mit diesem Ansatz können Sie die Primärschlüssel einer Tabelle programmgesteuert abrufen:
SELECT c.name FROM sys.tables t INNER JOIN sys.indexes i ON t.object_id = i.object_id INNER JOIN sys.index_columns ic ON i.index_id = ic.index_id AND ic.is_primary_key = 1 INNER JOIN sys.columns c ON ic.column_id = c.column_id WHERE t.name = 'TableName'
Das obige ist der detaillierte Inhalt vonWie kann ich Primärschlüssel aus einer SQL Server-Tabelle abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!