Ràng buộc CHECK trong SQL
Ràng buộc CHECK cho phép một điều kiện để kiểm tra giá trị đang được nhập vào một bản ghi. Nếu điều kiện được ước lượng là false, thì bản ghi vi phạm ràng buộc này và không được nhập vào trong bảng.
Ví dụ
Ví dụ sau tạo một bảng mới với tên SINHVIEN và thêm 5 cột. Ở đây, chúng ta thêm một ràng buộc CHECK cho cột TUOI, để bảng không nhận bất kỳ dữ liệu nào mà dưới 18 tuổi.
CREATE TABLE SINHVIEN( ID INT NOT NULL, TEN VARCHAR (20) NOT NULL, TUOI INT NOT NULL CHECK (TUOI >= 18), KHOAHOC CHAR (25) , HOCPHI DECIMAL (18, 2), PRIMARY KEY (ID) );
Nếu bảng đã được tạo, thì để thêm một ràng buộc CHECK cho cột TUOI, bạn viết lệnh tương tự như:
ALTER TABLE SINHVIEN MODIFY TUOI INT NOT NULL CHECK (TUOI >= 18 );
Bạn có thể sử dụng cú pháp sau, mà hỗ trợ việc đặt ràng buộc trong nhiều cột:
ALTER TABLE SINHVIEN ADD CONSTRAINT myCheckConstraint CHECK(TUOI >= 18);
Xóa một ràng buộc CHECK trong SQL
Để xóa một ràng buộc CHECK trong SQL, bạn sử dụng cú pháp sau. Cú pháp này không làm việc trong MySQL.
ALTER TABLE SINHVIEN DROP CONSTRAINT myCheckConstraint;