1. Kiến thức trọng tâm
Trong cơ sở dữ liệu quan hệ, nhiều bảng liên kết với nhau qua khóa ngoài, tạo thành các bảng có tham chiếu. Khi cập nhật một bảng có tham chiếu, phải đảm bảo tính nhất quán của toàn bộ cơ sở dữ liệu. Ví dụ: xóa học sinh thì điểm thi của học sinh đó cũng phải xử lí; đổi mã lớp thì học sinh thuộc lớp đó cũng phải cập nhật.
Ba thao tác thường gặp: thêm bản ghi — khóa ngoài của bản ghi mới phải tồn tại trong bảng được tham chiếu; sửa bản ghi — nếu sửa khóa chính của bảng được tham chiếu, các bản ghi liên quan ở bảng chứa khóa ngoài phải cập nhật đồng thời; xóa bản ghi — không thể xóa bản ghi đang được tham chiếu, trừ khi đã xóa các bản ghi liên quan trước hoặc hệ quản trị được thiết lập xóa lan truyền.
Nhiều hệ quản trị hỗ trợ cập nhật lan truyền và xóa lan truyền: đổi khóa chính ở bảng được tham chiếu sẽ tự động đổi khóa ngoài ở bảng liên quan; xóa bản ghi ở bảng được tham chiếu sẽ tự động xóa các bản ghi liên quan.
2. Ví dụ minh họa
Ví dụ: bảng HocSinh có HS01, Nguyễn Văn An; bảng DiemThi có HS01, Toán, 8.5. Đổi mã HS01 thành HS10: nếu bật cập nhật lan truyền, bản ghi điểm tự đổi thành HS10, Toán, 8.5; nếu không, hệ thống báo lỗi hoặc để lại tham chiếu treo. Xóa học sinh HS01: nếu bật xóa lan truyền, bản ghi điểm tự động bị xóa; nếu không, hệ thống ngăn xóa. Thêm bản ghi điểm HS99, Toán, 7.0 bị từ chối vì HS99 không có trong bảng HocSinh.
3. Ghi nhớ
- Bảng có tham chiếu liên kết qua khóa ngoài, cập nhật phải giữ tính nhất quán toàn cơ sở dữ liệu.
- Thêm bản ghi: khóa ngoài phải tồn tại trong bảng được tham chiếu.
- Sửa, xóa bản ghi được tham chiếu cần xử lí các bản ghi liên quan trước.
- Cập nhật lan truyền và xóa lan truyền giúp hệ quản trị tự động đồng bộ dữ liệu liên quan.
