Löschen von Primärschlüsseln
Gilt für: SQL Server 2016 (13.x) und höhere Versionen
Azure SQL-Datenbank
azure SQL Managed Instance
SQL-Datenbank in Microsoft Fabric
Sie können einen Primärschlüssel in SQL Server mit SQL Server Management Studio oder Transact-SQL löschen (trennen).
Wenn der Primärschlüssel gelöscht wird, wird auch der zugehörige Index gelöscht. Dieser Index kann der gruppierte Index der Tabelle sein, wodurch die Tabelle zu einem Heap wird. Weitere Informationen finden Sie unter Heaps (Tabellen ohne gruppierte Indizes). Die meisten Tabellen sollten über einen gruppierten Index verfügen. Informationen zum erneuten Erstellen des Primärschlüssels finden Sie unter Erstellen von Primärschlüsseln.
Auf Primärschlüssel kann von Fremdschlüsseln in einer anderen Tabelle verwiesen werden. Wenn auf einen Fremdschlüssel verwiesen wird, müssen Sie zuerst auf Fremdschlüssel verweisen, und dann den Primärschlüssel ablegen. Weitere Informationen finden Sie unter Primär- und Fremdschlüsselbeschränkungen.
Berechtigungen
Erfordert die ALTER
-Berechtigung für die Tabelle.
Verwenden von SQL Server Management Studio
Löschen einer Primärschlüsseleinschränkung mithilfe des Objekt-Explorers
Erweitern Sie im Objekt-Explorer die Tabelle, die den Primärschlüssel enthält, und erweitern Sie dann Schlüssel.
Klicken Sie mit der rechten Maustaste auf den Schlüssel, und klicken Sie dann auf Löschen.
Überprüfen Sie im Dialogfeld Objekt löschen, ob der richtige Schlüssel angegeben ist, und klicken Sie auf OK.
Löschen einer Primärschlüsseleinschränkung mithilfe des Tabellen-Designers
Klicken Sie im Objekt-Explorer mit der rechten Maustaste auf die Tabelle mit dem Primärschlüssel, und klicken Sie auf Entwerfen.
Klicken Sie in der Tabelle mit der rechten Maustaste auf die Zeile mit dem Primärschlüssel, und wählen Sie Primärschlüssel entfernen aus, um die Einstellung zu deaktivieren.
Hinweis
Schließen Sie die Tabelle, ohne die Änderungen zu speichern, um diese Aktion rückgängig zu machen. Das Löschen eines Primärschlüssels lässt sich nicht rückgängig machen, ohne dass auch alle anderen Änderungen an der Tabelle aufgehoben werden.
Klicken Sie im Menü Datei auf SpeichernTabellenname.
Verwenden von Transact-SQL
Löschen einer Primärschlüsseleinschränkung
Stellen Sie im Objekt-Explorer eine Verbindung mit einer Datenbank-Engine-Instanz her.
Klicken Sie in der Standardleiste auf Neue Abfrage.
Kopieren Sie das folgende Beispiel in das Abfragefenster, und klicken Sie dann auf Ausführen.
Sie müssen zuerst den Namen der Primärschlüsseleinschränkung identifizieren.
USE AdventureWorks2022; GO -- Return the name of primary key. SELECT name FROM sys.key_constraints WHERE type = 'PK' AND OBJECT_NAME(parent_object_id) = N'TransactionHistoryArchive'; GO
Verwenden Sie das Ergebnis aus der vorherigen Abfrage, um das
DROP
Skript zu erstellen. Ersetzen Sie<primary-key-constraint>
durch den richtigen Wert. Es könnte ähnlich aussehen wiePK_TransactionHistoryArchive_TransactionID
.ALTER TABLE Production.TransactionHistoryArchive DROP CONSTRAINT <primary-key-constraint>; GO