Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für: SQL Server 2016 (13.x) und spätere Versionen
Azure SQL-Datenbank
Azure SQL Managed Instance
SQL database in Microsoft Fabric
Sie können die Fremdschlüsselseite einer Beziehung in SQL Server mit SQL Server Management Studio oder Transact-SQL ändern. Wenn Sie den Fremdschlüssel einer Tabelle ändern, wird entsprechend angepasst, welche Spalten mit den Spalten in der Primärschlüsseltabelle verknüpft sind.
In diesem Thema
Vorbereitungen:
So ändern Sie einen Fremdschlüssel mit:
Bevor Sie beginnen
Beschränkungen und Einschränkungen
Die neue Fremdschlüsselspalte muss in Datentyp und Größe mit der Primärschlüsselspalte übereinstimmen, auf die sie sich bezieht, mit diesen Ausnahmen:
Eine Spalte vom Typ char oder sysname kann mit einer Spalte vom Typ varchar verknüpft werden.
Eine Spalte vom Typ binary kann mit einer Spalte vom Typ varbinary verknüpft werden.
Ein Aliasdatentyp kann mit seinem Basistyp verknüpft werden.
Security
Permissions
Erfordert die ALTER-Berechtigung für die Tabelle.
Verwendung von SQL Server Management Studio
So ändern Sie einen Fremdschlüssel
Erweitern Sie im Objekt-Explorer die Tabelle, die den Fremdschlüssel enthält, und erweitern Sie anschließend Schlüssel.
Klicken Sie mit der rechten Maustaste auf den zu ändernden Fremdschlüssel, und wählen Sie die Option Ändern.
Im Dialogfeld Fremdschlüsselbeziehungen können Sie die folgenden Änderungen vornehmen.
Ausgewählte Beziehung
Listet bestehende Beziehungen auf. Wählen Sie eine Beziehung aus, um ihre Eigenschaften im Datenblatt rechts anzuzeigen. Wenn die Liste leer ist, wurden bisher keine Beziehungen für die Tabelle definiert.Add
Erstellt eine neue Beziehung. Die Tabellen- und Spaltenspezifikation muss festgelegt werden, bevor die Beziehung gültig wird.Delete
Löscht die in der Liste ausgewählte Beziehung ausgewählte Beziehung. Um das Hinzufügen einer Beziehung abzubrechen, verwenden Sie diese Schaltfläche, um die Beziehung zu entfernen.Allgemeine Kategorie
Erweitern Sie, um Vorhandene Daten bei Erstellung oder erneutem Aktivieren überprüfen und Tabellen- und Spaltenspezifikationen anzuzeigen.Überprüfen vorhandener Daten beim Erstellen oder erneuten Aktivieren
Überprüft alle Daten, die vor der Erstellung oder Reaktivierung der Einschränkung in der Tabelle vorhandenen sind, auf die Einschränkung hin.Kategorie Tabellen- und Spaltenspezifikation
Erweitern Sie die Ansicht, um anzuzeigen, welche Spalten aus welchen Tabellen in der Beziehung als Fremdschlüssel bzw. als Primärschlüssel oder eindeutiger Schlüssel fungieren. Klicken Sie rechts neben dem Eigenschaftenfeld auf die Schaltfläche mit den Auslassungspunkten (...), um diese Werte zu bearbeiten oder zu definieren.Fremdschlüssel-Basistabelle
Zeigt an, welche Tabelle die Spalte enthält, die in der ausgewählten Beziehung als Fremdschlüssel fungiert.Fremdschlüsselspalten
Zeigt an, welche Spalte in der ausgewählten Beziehung als Fremdschlüssel fungiert.Basistabelle für Primärschlüssel/eindeutigen Schlüssel
Zeigt an, welche Tabelle die Spalte enthält, die in der ausgewählten Beziehung als Primärschlüssel oder eindeutiger Schlüssel fungiert.Primär-/Eindeutige Schlüsselspalten
Zeigt an, welche Spalte in der ausgewählten Beziehung als Primärschlüssel oder eindeutiger Schlüssel fungiert.Identitätskategorie
Erweitern Sie die Ansicht, um die Eigenschaftsfelder für Name und Beschreibung anzuzeigen.Name
Zeigt den Namen der Beziehung an. Wenn eine neue Beziehung erstellt wird, erhält sie einen Standardnamen, der auf der Tabelle im aktiven Fenster im Tabellen-Designer basiert. Sie können den Namen jederzeit ändern.Description
Beschreibt die Beziehung. Um eine detailliertere Beschreibung zu erstellen, klicken Sie auf Beschreibung , und klicken Sie anschließend auf die Auslassungspunkte (...) rechts neben dem Eigenschaftenfeld. Dadurch wird ein größerer Bereich verfügbar, in den Sie Text eingeben können.Kategorie Tabellen-Designer
Ausklappen, um Informationen zu Vorhandene Daten bei Erstellung oder Reaktivierung prüfen und Für die Replikation erzwingen anzuzeigen.Für Replikation erzwingen
Gibt an, ob die Einschränkung erzwungen wird, wenn durch den Replikations-Agent in der Tabelle eine INSERT-, ein UPDATE- oder DELETE-Anweisung ausgeführt wird.Fremdschlüsseleinschränkung erzwingen
Gibt an, ob Änderungen der Daten in den Spalten der Beziehung zulässig sind, wenn die Integrität der Fremdschlüsselbeziehung durch diese Änderungen aufgehoben werden. Wählen Sie Ja aus, um solche Änderungen nicht zuzulassen, und wählen Sie Nein aus, um sie zuzulassen.INSERT und UPDATE Spezifikationskategorie
Erweitern Sie diese Option, um Informationen zur Löschregel und zur Aktualisierungsregel für die Beziehung anzuzeigen.Regel löschen
Gibt an, was geschehen soll, wenn ein Benutzer versucht, eine Zeile mit Daten zu löschen, die Teil einer Fremdschlüsselbeziehung ist.Keine Aktion Eine Fehlermeldung teilt dem Benutzer mit, dass der Löschvorgang nicht zulässig ist und das DELETE Rollback ausgeführt wird.
Kaskadierung Löscht alle Zeilen, die Daten enthalten, die an der Fremdschlüsselbeziehung beteiligt sind. Geben Sie CASCADE nicht an, wenn die Tabelle in eine Mergeveröffentlichung einbezogen werden soll, bei der logische Datensätze verwendet werden.
NULL festlegen Legt den Wert auf NULL fest, wenn alle Fremdschlüsselspalten der Tabelle NULL-Werte annehmen können.
Standard festlegen Legt den Wert auf den für die Spalte definierten Standardwert fest, wenn für alle Fremdschlüsselspalten der Tabelle Standardwerte definiert sind.
Regel aktualisieren
Geben Sie an, was geschieht, wenn ein Benutzer versucht, eine Zeile mit Daten zu aktualisieren, die an einer Fremdschlüsselbeziehung beteiligt sind:Keine Aktion Eine Fehlermeldung teilt dem Benutzer mit, dass das Update nicht zulässig ist und das UPDATE Rollback ausgeführt wird.
Cascade Aktualisiert alle Zeilen, die Daten enthalten, die Teil der Fremdschlüsselbeziehung sind. Geben Sie CASCADE nicht an, wenn die Tabelle in eine Mergeveröffentlichung einbezogen werden soll, bei der logische Datensätze verwendet werden.
NULL festlegen Legt den Wert auf NULL fest, wenn alle Fremdschlüsselspalten der Tabelle NULL-Werte annehmen können.
Standard festlegen Legt den Wert auf den für die Spalte definierten Standardwert fest, wenn für alle Fremdschlüsselspalten der Tabelle Standardwerte definiert sind.
Klicken Sie im Menü Datei auf Speichern > Tabellenname.
Verwenden von Transact-SQL
So ändern Sie einen Fremdschlüssel
Um eine FOREIGN KEY-Einschränkung mit Transact-SQL zu ändern, müssen Sie zuerst die vorhandene FOREIGN KEY-Einschränkung löschen und sie dann mit der neuen Definition neu erstellen. Weitere Informationen finden Sie unter Fremdschlüsselbeziehungen löschen und Fremdschlüsselbeziehungen erstellen.