Trong ngữ cảnh cơ sở dữ liệu, "Ràng buộc toàn vẹn" đề cập đến các quy tắc cụ thể được triển khai để đảm bảo tính chính xác và nhất quán của dữ liệu trong cơ sở dữ liệu quan hệ . Các quy tắc này chi phối dữ liệu khi dữ liệu được chèn, cập nhật và xóa, do đó ngăn ngừa hỏng dữ liệu không mong muốn và thực thi cấu trúc logic mong muốn. Định nghĩa về các ràng buộc toàn vẹn có thể được trình bày chi tiết hơn trong một số khía cạnh:
Tính toàn vẹn miền: Điều này đảm bảo rằng tất cả các mục nhập trong một cột nhất định đều nhất quán và nằm trong một miền xác định. Ví dụ: nếu một cột được mong đợi có số dương, ràng buộc miền sẽ ngăn không cho các số âm hoặc giá trị không phải là số được chèn vào.
Tính toàn vẹn của thực thể: Điều này đề cập đến tính duy nhất của các hàng trong một bảng, thường được thực thi thông qua việc sử dụng các khóa chính. Khóa chính xác định duy nhất một bản ghi trong bảng và tính toàn vẹn của thực thể đảm bảo rằng không có khóa trùng lặp nào tồn tại, do đó duy trì tính khác biệt của từng bản ghi.
Tính toàn vẹn tham chiếu: Ràng buộc này đảm bảo rằng các mối quan hệ giữa các bảng vẫn nhất quán. Khi một bảng có khóa ngoại là tham chiếu đến khóa chính của bảng khác, tính toàn vẹn tham chiếu đảm bảo rằng kết nối này được duy trì. Nếu một bản ghi được tham chiếu bởi khóa ngoại bị xóa hoặc thay đổi, thì cơ sở dữ liệu sẽ thực hiện các hành động đã xác định, chẳng hạn như cập nhật khóa tham chiếu hoặc từ chối thay đổi.
Tính toàn vẹn do người dùng xác định: Các ràng buộc này dành riêng cho logic nghiệp vụ hoặc quy tắc liên quan đến trường hợp sử dụng cụ thể của cơ sở dữ liệu. Ví dụ: ràng buộc do người dùng xác định có thể yêu cầu lương của nhân viên không được vượt quá một số tiền nhất định hoặc độ tuổi của khách hàng phải trên 18. Các quy tắc này có thể được điều chỉnh theo các yêu cầu cụ thể của một ứng dụng nhất định.
Kiểm tra các ràng buộc: Các ràng buộc này cho phép xác định các quy tắc cụ thể hơn cho dữ liệu trong một cột hoặc tập hợp các cột. Ví dụ: ràng buộc kiểm tra có thể yêu cầu giá trị phần trăm phải nằm trong khoảng từ 0 đến 100 hoặc mục nhập ngày sinh phải sớm hơn ngày hiện tại.
Ràng buộc Null: Điều này xác định liệu một giá trị null có thể được phép cho một thuộc tính cụ thể hay không. Nếu một ràng buộc null được áp dụng cho một cột, nó đảm bảo rằng mọi hàng trong cột đó phải chứa một giá trị.
Tính toàn vẹn tạm thời: Điều này đảm bảo tính chính xác và nhất quán của dữ liệu ngày và giờ trong cơ sở dữ liệu, thường đảm bảo rằng các giá trị ngày và giờ tuân theo trình tự logic và tuân thủ các định dạng đã xác định.
Ràng buộc toàn vẹn đóng một vai trò quan trọng trong việc duy trì độ tin cậy và mạnh mẽ của một hệ thống cơ sở dữ liệu. Chúng thường được xác định trong giai đoạn thiết kế cơ sở dữ liệu và được thi hành bởi hệ thống quản lý cơ sở dữ liệu (DBMS).
Nếu không có các ràng buộc toàn vẹn thích hợp, cơ sở dữ liệu có thể bị mâu thuẫn, mơ hồ và lỗi có thể ảnh hưởng đáng kể đến khả năng sử dụng và độ tin cậy của nó. Do đó, những ràng buộc này tạo thành một phần thiết yếu của kiến trúc cơ sở dữ liệu, đảm bảo rằng dữ liệu tuân thủ các quy tắc và tiêu chuẩn chất lượng dự kiến.