SQL ADD CONSTRAINT

Giới thiệu về SQL ADD CONSTRAINT

Trong ngôn ngữ lập trình SQL, một trong những khía cạnh quan trọng trong việc thiết kế cơ sở dữ liệu là khả năng đảm bảo tính toàn vẹn của dữ liệu. Để làm điều này, chúng ta có thể sử dụng các ràng buộc (constraints) để kiểm soát và hạn chế loại dữ liệu mà có thể được đưa vào bảng. Câu lệnh SQL ADD CONSTRAINT cho phép người lập trình thêm các ràng buộc vào bảng đã có hoặc trong quá trình tạo bảng mới.

Định nghĩa

Câu lệnh ADD CONSTRAINT được sử dụng để thêm ràng buộc vào một bảng trong cơ sở dữ liệu. Các ràng buộc này có thể bao gồm:

  • PRIMARY KEY: Để xác định khóa chính cho bảng
  • FOREIGN KEY: Để xác định ràng buộc khóa ngoại giữa hai bảng
  • UNIQUE: Để đảm bảo rằng tất cả các giá trị trong một cột là duy nhất
  • CHECK: Để xác định một điều kiện xác định giá trị hợp lệ cho một cột
  • NOT NULL: Để đảm bảo rằng một cột không thể chứa giá trị NULL

Cú pháp

Cú pháp chung của câu lệnh ADD CONSTRAINT như sau:

ALTER TABLE table_name
ADD CONSTRAINT constraint_name constraint_type (column_name);

Các ví dụ

1. Thêm ràng buộc PRIMARY KEY

ALTER TABLE employees
ADD CONSTRAINT pk_employee_id PRIMARY KEY (employee_id);

Trong ví dụ này, chúng ta thêm ràng buộc khóa chính cho cột employee_id trong bảng employees.

2. Thêm ràng buộc FOREIGN KEY

ALTER TABLE orders
ADD CONSTRAINT fk_customer_id FOREIGN KEY (customer_id)
REFERENCES customers (customer_id);

Ở đây, chúng ta thêm ràng buộc khóa ngoại cho cột customer_id trong bảng orders, liên kết với cột customer_id trong bảng customers.

3. Thêm ràng buộc UNIQUE

ALTER TABLE users
ADD CONSTRAINT unique_email UNIQUE (email);

Ví dụ này đảm bảo rằng tất cả các giá trị trong cột email trong bảng users là duy nhất.

4. Thêm ràng buộc CHECK

ALTER TABLE products
ADD CONSTRAINT check_price CHECK (price > 0);

Trong ví dụ này, chúng ta thêm ràng buộc kiểm tra để đảm bảo rằng giá cả của sản phẩm phải lớn hơn 0 trong bảng products.

5. Thêm ràng buộc NOT NULL

ALTER TABLE orders
ADD CONSTRAINT not_null_order_date NOT NULL (order_date);

Cuối cùng, chúng ta thêm ràng buộc không NULL cho cột order_date trong bảng orders.

Kết luận

Câu lệnh ADD CONSTRAINT là một công cụ hữu hiệu trong ngôn ngữ SQL để đảm bảo tính toàn vẹn và chất lượng của dữ liệu trong cơ sở dữ liệu. Hiểu và sử dụng đúng các ràng buộc sẽ giúp người lập trình tổ chức và quản lý dữ liệu một cách hiệu quả hơn.