Khóa chính (Primary Key)
Định nghĩa
Khóa chính (Primary Key - PK) là một (hoặc một tổ hợp) cột trong một bảng của cơ sở dữ liệu quan hệ, được sử dụng để định danh duy nhất (uniquely identify) cho mỗi hàng trong bảng đó. 🔑
2 Ràng buộc Quan trọng
Một cột được chọn làm khóa chính phải tuân thủ 2 ràng buộc cốt lõi:
- Duy nhất (Unique): Giá trị của khóa chính phải là duy nhất cho mỗi hàng. Không thể có hai hàng nào có cùng giá trị khóa chính.
- Không được NULL (Not NULL): Giá trị của khóa chính không bao giờ được phép để trống (NULL).
Mục đích
- Đảm bảo Tính duy nhất: Ngăn chặn việc nhập trùng lặp dữ liệu.
- Xác định Bản ghi: Cho phép truy xuất chính xác một hàng cụ thể.
- Tạo Mối quan hệ: Khóa chính được khóa ngoại ở bảng khác tham chiếu đến để tạo liên kết giữa các bảng.
Ví dụ
- Trong bảng
SinhVien, cộtMaSVlà ứng viên tốt nhất cho Khóa chính. - Trong bảng
DonHang, cộtSoDonHangthường là Khóa chính. - Khóa chính Tổ hợp (Composite PK): Đôi khi cần kết hợp nhiều cột để tạo ra tính duy nhất (ví dụ: trong bảng
ChiTietDonHang, Khóa chính có thể là tổ hợp củaSoDonHangvàMaSanPham).