Ändern von Einschränkungen¶
Nachdem eine Einschränkung erstellt wurde, können Sie diese auf folgende Weise ändern:
Kann die Einschränkung umbenannt werden.
Können bestimmte Eigenschaften geändert werden, z. B. RELY.
Können bestimmte Eigenschaften nicht geändert werden, z. B. DEFERRABLE. Zum Ändern der Eigenschaften muss die entsprechende Einschränkung gelöscht und neu erstellt werden.
Die Spaltendefinition für eine Einschränkung lässt nicht ändern (z. B. Hinzufügen von neuen Spalten, Löschen von vorhandenen Spalten oder Ändern der Reihenfolge von Spalten). Zum Vornehmen dieser Änderungen muss die Einschränkung gelöscht und neu erstellt werden.
Beim Ändern einer Einschränkung identifizieren Sie die Einschränkung entweder über den Einschränkungsnamen oder über die Spalten in der Einschränkungsdefinition sowie mit dem Typ der Einschränkung. Außerdem können Primärschlüssel mit dem Schlüsselwort PRIMARY KEY identifiziert werden, da jede Tabelle nur einen einzigen PRIMARY KEY aufweisen kann.
Wenn eine Tabelle mit Einschränkungen geändert wird, beispielsweise durch die Umbenennung der Tabelle oder die Ersetzung der Tabelle durch eine andere Tabelle, werden die Einschränkungen den Änderungen entsprechend aktualisiert.
Umbenennen einer Einschränkung¶
Verwenden Sie folgende Syntax für den Befehl ALTER TABLE, um eine Einschränkung umzubenennen:
Ändern der Eigenschaften einer Einschränkung¶
Verwenden Sie für den ALTER TABLE-Befehl folgende Syntax, um die Eigenschaften einer Einschränkung zu ändern:
Für CHECK-Einschränkungen ist die constraint_name erforderlich. Außerdem können Sie den Wert von expr nicht ändern, der mit einer CHECK-Einschränkung verbunden ist. Zum Ändern von expr muss die CHECK-Einschränkung gelöscht und neu erstellt werden.
Derzeit unterstützt Snowflake nur die Einstellen der folgenden Einschränkungseigenschaften:
[ NOT ] ENFORCED
NOVALIDATE und VALIDATE
RELY und NORELY
Snowflake unterstützt nicht die Einstellung von ENFORCED. Snowflake unterstützt nur das Einstellen von NOVALIDATE für CHECK-Einschränkungen. Siehe auch Nicht-Standardwerte für die Eigenschaften ENABLE und VALIDATE.
Beschreibungen zu den Einschränkungseigenschaften finden Sie unter Einschränkungseigenschaften.
Ändern einer Tabelle mit Einschränkungen¶
Wenn eine Tabelle mit Einschränkungen umbenannt wird, werden die Einschränkungen für die Tabelle sowie alle FOREIGN KEY-Einschränkungen, die auf die Tabelle verweisen, aktualisiert, um sich auf den neuen Namen zu beziehen.
Falls eine Tabelle durch eine andere vorhandene Tabelle ersetzt wird, werden alle Einschränkungen der Tabelle in der ausgetauschten Tabelle beibehalten.
Weitere Informationen zum Umbenennen oder Austauschen von Tabellen finden Sie unter ALTER TABLE.