Wenn Sie bereits einen bestehenden CHECK
haben Einschränkung in SQL Server, aber Sie müssen sie ändern, Sie müssen sie löschen und neu erstellen. Es gibt kein ALTER CONSTRAINT
Erklärung oder ähnliches.
Um also eine bestehende Einschränkung zu „modifizieren“:
- Löschen Sie die Einschränkung mit
ALTER TABLE
mitDROP CONSTRAINT
. - Erstellen Sie die neue Einschränkung mit
ALTER TABLE
mitADD CONSTRAINT
.
Beispiel
Hier ist ein Beispiel für das Löschen und Neuerstellen eines CHECK
Einschränkung.
ALTER TABLE ConstraintTest DROP CONSTRAINT chkTeamSize; ALTER TABLE ConstraintTest ADD CONSTRAINT chkTeamSize CHECK (TeamSize >= 5 AND TeamSize <= 20) ;
Wie bereits erwähnt, können Sie es nicht ändern – Sie müssen es löschen und mit der neuen Definition erstellen.
In diesem Fall heißt die Einschränkung chkTeamSize und ich lösche es einfach und erstelle es mit der neuen Definition.
Hinweis zur Bestellung
Beachten Sie, dass CHECK
Einschränkungen werden in der Reihenfolge ihrer Erstellung validiert, sodass das Löschen/Neuerstellen einer Einschränkung dazu führen kann, dass sie in einer anderen Reihenfolge als zuvor validiert wird. Dies kann dazu führen, dass andere Fehler vor dieser Einschränkung abgefangen werden, wenn sie zuvor danach abgefangen wurden.