Cơ SỞ Dữ LIỆU QUAN HỆ
2.2. Toàn vẹn dữ liệu
Giữ gìn tính tồn vẹn của cơ sở dữ liệu có thể xem là sự bảo vệ dữ
liệu trong cơ sở dữ liệu. Mất tính tồn vẹn của cơ sở dữ liệu có thể do những nguyên nhân như hỏng hóc phần cứng, sai sót của người sử dụng máy tính, sai sót của người lập trình, ...
Các ràng buộc, ràng buộc toàn vẹn cung cấp phương tiện đảm bảo
những thay đổi được thực hiện đối với Cơ sở dữ liệu bởi những người sử dụng hợp pháp sẽ khơng làm mất tính tồn vẹn dữ liệu của cơ sở dữ liệu.
2.2.1. Ràng buộc
Ràng buộc (constíaint) là quy tắc được đặt vào một đối tượng cơ sở
dữ liệu (thường là một bảng hoặc một cột) để giới hạn giá trị dữ liệu cho phép đối với đối tượng cơ sở dữ liệu đó. Bàng và cột là các đối tượng
quan trọng nhất trong cơ sở dữ liệu quan hệ mà chúng ta sử dụng các
ràng buộc để cài đặt các quan hệ và quy tắc được chỉ ra trong thiết kế
logic. Mỗi ràng buộc sẽ được gán một tên duy nhất. Điều này cho phép cơ sở dữ liệu có thể tham chiếu tới ràng buộc đó trong các thơng báo lỗi
buộc, nếu không hệ quản trị cơ sở dữ liệu sẽ tự động sinh ra một tên cho ràng buộc, tên đó thường khơng có tính mơ tả, khơng có tính gợi nhớ.
2.2.1.1. Ràng buộc khóa chỉnh
Khố chính là định danh duy nhất cho mỗi bộ trong bảng. Ràng
buộc khố chính là loại ràng buộc thoả mãn hai điều kiện là giá trị tại
khố chính trong mỗi bộ khơng được nhận giá trị NULL và mỗi giá trị
phải xác định tính duy nhất trong tồn bộ bảng.
Hầu hết các ràng buộc khóa chính được cài đặt trong hệ quản trị cơ
sở dữ liệu bằng cách sử dụng chi mục (index), một kiểu đối tượng đặc biệt trong cơ sở dữ liệu, cho phép tìm kiếm nhanh. Khi thêm một dòng vào bảng, hệ quản trị cơ sở dữ liệu tự động tìm kiếm trên chỉ mục để đảm bảo giá trị khóa chính của dịng mới chưa được sử dụng trong bảng, nếu
giá trị khóa chính đã tồn tại, dịng mới thêm vào sẽ bị từ chối.
Ví dụ 2.16: Cho hai quan hệ SV(MSV,HTEN,NSINH, QQUAN,
MALHC) và LOP(MALHC,TENLHC), ta có phụ thuộc hàm
MSV HTEN,NSINH,QQUAN,MAHLC. Ta thấy từ MSV có thể
suy ra tồn bộ các thuộc tính cịn lại nên khi đó thuộc tính MSV là
khố chính trong quan hệ sv. Với các thể hiện cụ thể của hai quan hệ được biểu diễn như sau:
sv MSV HTEN NSINH QQUAN MALHC
11D130003 Lê Vãn An 1990 Hà Nội K47S1
12D 120002 Đỗ Hồng Quân 1993 Phú Thọ K48I1 13D12000I Nguyễn Hồng 1992 Thanh Hố K49N3
14D140003 Nguyễn Lan Anh 1991 Hà Nội K50S1