Jika Anda sudah memiliki CHECK kendala di SQL Server, tetapi Anda perlu memodifikasinya, Anda harus menghapusnya dan membuatnya kembali. Tidak ada ALTER CONSTRAINT pernyataan atau yang serupa.
Jadi untuk “memodifikasi” batasan yang ada:
- Hilangkan batasan menggunakan
ALTER TABLEdenganDROP CONSTRAINT. - Buat batasan baru menggunakan
ALTER TABLEdenganADD CONSTRAINT.
Contoh
Berikut adalah contoh untuk menghapus dan membuat ulang CHECK kendala.
ALTER TABLE ConstraintTest DROP CONSTRAINT chkTeamSize; ALTER TABLE ConstraintTest ADD CONSTRAINT chkTeamSize CHECK (TeamSize >= 5 AND TeamSize <= 20) ;
Seperti yang disebutkan, Anda tidak dapat mengubahnya – Anda harus menghapusnya dan membuatnya dengan definisi baru.
Dalam hal ini, batasannya disebut chkTeamSize dan saya cukup membuangnya dan membuatnya dengan definisi baru.
Catatan tentang Pemesanan
Perhatikan bahwa CHECK batasan divalidasi dalam urutan pembuatannya, jadi menjatuhkan/membuat ulang batasan dapat menyebabkannya divalidasi dalam urutan yang berbeda dari sebelumnya. Hal ini dapat mengakibatkan kesalahan lain yang ditangkap sebelum batasan ini, ketika sebelumnya ditangkap setelahnya.