
- 1. Vai trò của các ràng buộc (constraints) trong SQL
- 2. Các loại ràng buộc (constraints) trong SQL
- 3. Hướng dẫn sử dụng các ràng buộc (constraints)
- 3.1. NOT NULL
- 3.1.1. Ý nghĩa
- 3.1.2. Ví dụ
- 3.2. UNIQUE
- 3.2.3. Ý nghĩa
- 3.2.4. Ví dụ
- 3.3. PRIMARY KEY
- 3.3.5. Ý nghĩa
- 3.3.6. Ví dụ
- 3.4. FOREIGN KEY
- 3.4.7. Ý nghĩa
- 3.4.8. Ví dụ
- 3.5. CHECK
- 3.5.9. Ý nghĩa
- 3.5.10. Ví dụ
- 3.6. DEFAULT
- 3.6.11. Ý nghĩa
- 3.6.12. Ví dụ
- 4. Kết luận
Trong khi thiết lập DB thì cần phải có các quy tắc để đảm bảo được lượng dữ liệu sẽ được chứa trong DB, bài hôm nay chúng ta cùng tìm hiểu các quy tắc này dựa qua các ràng buộc (constraints).
Vai trò của các ràng buộc (constraints) trong SQL
Các ràng buộc (constraints) thường được sử dụng như là quy tắc cho các dữ liệu ở table.
Ràng buộc dùng để giới hạn các dữ liệu đến table. Đảm bảo tính chính xác và rõ ràng của dữ liệu. Nếu có bất kì sự vi phạm nguyên tắc đến các ràng buộc thì thao tác đó sẽ bị huỷ.
Các loại ràng buộc (constraints) trong SQL
Ở SQL, bao gồm các loại ràng buộc chung sau đây:
- NOT NULL
- UNIQUE
- PRIMARY KEY
- FOREIGN KEY
- CHECK
- DEFAULT
Cú pháp chung:
CREATE TABLE table_name (
column1 datatype constraint,
column2 datatype constraint,
column3 datatype constraint,
constraint
....
);
Hướng dẫn sử dụng các ràng buộc (constraints)
NOT NULL
Ý nghĩa
Mặc định, các cột sẽ có giá trị là NULL.
Khi định nghĩa cột là NOT NULL, thì sẽ bảo đảm người dùng không nhập được giá trị NULL đến cột, tức là cột phải có giá trị rõ ràng.
Ví dụ
CREATE TABLE doctor (
doctor_id INT,
first_name VARCHAR(10) NOT NULL,
middle_name VARCHAR(10)
);
Với ví dụ trên, bạn hãy thử INSERT hay UPDATE một record ở doctor với giá trị ở cột first_name là NULL, thì sẽ bị lỗi và không thể thực hiện các thao tác đó.
UNIQUE
Ý nghĩa
Ràng buộc UNIQUE sẽ đảm bảo giá trị các cột luôn khác nhau.
Với PRIMARY KEY thì cũng đảm bảo việc này, với PRIMARY KEY thì các column mặc định sẽ là khác nhau mà không cần phải khai báo.
Sử dụng UNIQUE sẽ áp dụng nhiều lần ở một table, nhưng với PRIMARY KEY thì không.
Ví dụ
CREATE TABLE doctor (
doctor_id INT,
first_name VARCHAR(10),
middle_name VARCHAR(10),
id_card VARCHAR(15),
UNIQUE (id_card)
);
Từ đó, đảm bảo id_card (căn cước công dân) sẽ không bị trùng lặp giữa các bác sĩ.
PRIMARY KEY
Ý nghĩa
Đảm bảo tính duy nhất ở mỗi record trong table.
Với primary key, thì nó sẽ là UNIQUE và NOT NULL.
Mỗi table chỉ có một khoá chính, khoá chính có thể chứa 1 hoặc nhiều cột.
Ví dụ
CREATE TABLE doctor (
doctor_id INT PRIMARY KEY,
first_name VARCHAR(10),
middle_name VARCHAR(10)
);
Hoặc có thể dùng cách 2 bên dưới.
CREATE TABLE doctor (
doctor_id INT,
first_name VARCHAR(10),
middle_name VARCHAR(10),
CONSTRAINT pk_doctor PRIMARY KEY (doctor_id)
);
Với cách 2 thì có thể tạo khoá chính với nhiều cột.
FOREIGN KEY
Ý nghĩa
Đảm bảo dữ liệu luôn được liên kết giữa 2 table, nếu khác thì quá trình INSERT, UPDATE sẽ bị huỷ.
FOREIGN KEY là một cột ở table, nó tham chiếu đến PRIMARY KEY ở table khác.
Ví dụ
CREATE TABLE specialization (
specialization_id INT PRIMARY KEY,
specialization_name VARCHAR(50)
);
CREATE TABLE doctor (
doctor_id INT PRIMARY KEY,
`first_name` VARCHAR (10),
`middle_name` VARCHAR (10),
`last_name` VARCHAR (10),
date_of_birth DATE,
qualification INT,
specialization_id INT,
FOREIGN KEY (specialization_id) REFERENCES specialization(specialization_id)
);
Với cột specialization_id (chuyên khoa) ở table doctor, thì giá trị sẽ chỉ thuộc ở table specialization, nếu cố tình nhập giá trị khác thì sẽ bị lỗi và thao tác bị huỷ bỏ.
CHECK
Ý nghĩa
Giới hạn phạm vi giá trị ở cột.
Hay nói cách khác, ràng buộc này sẽ giúp kiểm tra giá trị nhập vào phải khớp với điều kiện đã được khai báo với cột đó.
Ví dụ
CREATE TABLE doctor (
doctor_id INT PRIMARY KEY,
first_name VARCHAR(10),
middle_name VARCHAR(10),
qualification INT,
CHECK (qualification >= 0)
);
Với cách khai báo như trên, thì số năm kinh nghiệm (qualification) của doctor phải lớn hơn hoặc bằng 0, nếu nhập số âm sẽ báo lỗi.
DEFAULT
Ý nghĩa
Dùng để gán giá trị mặc định đến một cột, trong trường hợp người dùng không nhập giá trị cho cột này.
Ví dụ
CREATE TABLE doctor (
doctor_id INT PRIMARY KEY,
first_name VARCHAR(10),
middle_name VARCHAR(10),
qualification INT DEFAULT 1
);
Nếu người dùng không nhập giá trị cho cột qualification, thì giá trị mặc định sẽ là 1.
Kết luận
Để giữ được dữ liệu luôn chuẩn xác, dễ thao tác và bảo trì trong tương lai, thì các ràng buộc (constraints) cũng là một yếu tố khá quan trọng.

Devwork là Nền tảng TUYỂN DỤNG IT CẤP TỐC với mô hình kết nối Nhà tuyển dụng với mạng lưới hơn 30.000 headhunter tuyển dụng ở khắp mọi nơi.Với hơn 1800 doanh nghiệp IT tin dùng Devwork để :
Tag Cloud:
Tác giả: quyenntt
Việc làm tại Devwork
Bài viết liên quan

Cách xóa ứng dụng trên máy tính đơn giản trên win 7, 10
Bạn đang nao núng mỗi khi muốn gỡ bỏ phần mềm không cần thiết trên máy tính? Trong bài viết này, chúng tôi sẽ hướng dẫn chi tiết cách xóa ứng dụng trên máy tính theo hai phương pháp chính, áp dụng đơn giản trên cả Windows 7 và Windows 10, giúp bạn làm sạch hệ thống, giải phóng dung lượng, và giúp máy chạy mượt hơn. Hãy cùng khám phá ngay!...
Cách kết nối Bluetooth Win 10 với các thiết bị
Bluetooth đã trở thành một phần không thể thiếu trong cuộc sống hiện đại. Từ việc kết nối tai nghe không dây để nghe nhạc trong lúc nấu ăn, chia sẻ tài liệu giữa các thiết bị, đến việc trình chiếu slide trong các buổi họp quan trọng, Bluetooth giúp cuộc sống của chúng ta trở nên dễ dàng và tiện lợi hơn rất nhiều. Bài viết này sẽ cung cấp một hướng dẫn chi tiết, dễ hiểu về kết nối bluetooth win 10, dành cho tất cả mọi người, từ người nội trợ, sinh viên, dân văn phòng đến khách hàng doanh nghiệp.

Top 6 phần mềm khôi phục dữ liệu hoàn toàn miễn phí
Bạn vừa lỡ tay xóa nhầm file báo cáo quan trọng? Chiếc USB chứa ảnh kỷ niệm gia đình bỗng dưng "dở chứng"? Trong thời đại số, mất dữ liệu là "tai nạn" mà ai cũng có thể gặp phải. Nhưng tin vui là, với sự trợ giúp của các phần mềm khôi phục dữ liệu, bạn hoàn toàn có thể "cứu" lại những thông tin quý giá này. Bài viết này sẽ giới thiệu Top phần mềm khôi phục dữ liệu đã xóa trên ổ cứng, USB, thẻ nhớ miễn phí

Tại sao kiểm tra nhiệt độ CPU lại quan trọng? Cách kiểm tra nhiệt độ CPU
Bạn có bao giờ tự hỏi, chiếc máy tính thân yêu của mình đang "khỏe" đến mức nào? Chúng ta thường quan tâm đến việc máy chạy nhanh hay chậm, cài được game gì, nhưng lại quên mất một yếu tố quan trọng ảnh hưởng trực tiếp đến tuổi thọ và hiệu suất của máy đó là nhiệt độ CPU. Hãy cùng Devwork tìm hiểu tại sao kiểm tra nhiệt độ CPU lại quan trọng? Cách kiểm tra nhiệt độ CPU nhé.


Hướng Dẫn Chi Tiết Cách Đổi Hình Nền Máy Tính Cho Mọi Hệ Điều Hành
Đôi khi, một hình nền đẹp còn có thể truyền cảm hứng, giúp bạn làm việc hiệu quả và vui vẻ hơn. Nếu bạn đang tìm kiếm cách đổi hình nền máy tính một cách dễ dàng và nhanh chóng, bài viết này chính là dành cho bạn! Devwork sẽ hướng dẫn chi tiết từng bước cho các hệ điều hành phổ biến nhất, từ Windows đến macOS và thậm chí cả Linux, cùng với những mẹo hay để tối ưu hóa trải nghiệm của bạn.

5 phần mềm xóa file cứng đầu tốt nhất và những lưu ý khi xóa
Việc xóa file cứng đầu một cách an toàn là rất quan trọng để bảo vệ dữ liệu cá nhân và tránh mất mát thông tin nhạy cảm. Tuy nhiên, không phải ai cũng biết cách thực hiện điều này một cách hiệu quả. Trong bài viết này, chúng tôi sẽ giới thiệu đến bạn 8 phần mềm xóa file cứng đầu tốt nhất giúp bạn thực hiện việc này một cách dễ dàng và an toàn.
