3.3. Các đặc trưng của quan hệ

3.2.2 Các đặc trưng RBTV

Mỗi một ràng buộc toàn vẹn khi mô tả được xác định qua ba đặc trưng: Bối cảnh, Nội dung và tầm ảnh hưởng

Bối cảnh

Dùng để xác định những quan hệ có khả năng xảy ra hay vi phạm RBTV khi thực hiện các phép cập nhật hay nói cách khác bối cảnh dùng để xác định các quan hệ cần phải được kiểm tra RBTV. Bối cảnh có thể là một hoặc nhiều quan hệ của một Cơ sở dữ liệu.

Ví dụ: “Mức lương của một người nhân viên không được vượt quá trưởng phòng”

Ràng buộc trên sẽ có khả năng xảy ra vi phạm khi thực hiện trong trường hợp:

– Cập nhật lương cho nhân viên đã có,

– Thêm một nhân viên mới vào phòng ban,

– Bổ nhiệm một người làm trưởng phòng của một phòng ban.

Vậy ràng buộc toàn vẹn trên xảy ra khi thực hiện thao tác trên hai quan hệ là “NHAN VIEN” và “PHONG BAN”. Vì vậy bối cảnh của RBTV là “NHAN VIEN” và “PHONG BAN”.

Nội dung

Dùng để mô tả hay biểu diễn một cách hình thức nội dung hay yêu cầu của một ràng buộc toàn vẹn, thông thường một ràng buộc toàn vẹn thường được phát biểu bằng: ngôn ngữ tự nhiên hay bằng ngôn ngữ hình thức (sử dụng các phép toán như: tồn tại ($), với mọi (“), phủ định (!), chiếu (p), chọn (s), kết nối (*))

Tầm ảnh hưởng

Là một bảng để xác định thao tác nào cần phải kiểm tra ràng buộc toàn vẹn khi thực hiện hoặc xác định thời điểm cần phải tiến hành kiểm tra ràng buộc toàn vẹn.

Bảng tầm ảnh hưởng có hai loại: bảng tầm ảnh hưởng cho một RBTVbảng tầm ảnh hưởng cho nhiều RBTV

Nguyên tắc xây dựng bảng tầm ảnh hưởng:

– Bảng gồm 4 cột và ít nhất 2 hàng, mỗi hàng tương ứng cho một quan hệ

  • Cột 1 chứa tên các quan hệ liên quan tới RBTV.
  • 3 cột tiếp theo là tên các thao tác: Thêm / Sửa / Xoá

– Điền nội dung vào bảng theo nguyên tắc:

  • Nếu RBTV cần được kiểm tra nguy cơ dẫn tới vi phạm cho quan hệ thì đánh dấu cộng (+);
    • Có thể chỉ rõ các thuộc tính nào nếu được cập nhật mới dẫn đến vi phạm bằng cách liệt kê chúng dưới dấu (+)
  • Nếu không có nguy cơ bị vi phạm thì đánh dấu trừ (-);
  • Nếu không bị vi phạm vì không được phép sửa đổi thì kí hiệu là trừ với dấu nhân: (- (*)).

Dạng bảng tầm ảnh hưởng của một RBTV

Trong đó:

Dấu (+) thể hiện trạng thái Xảy ra Vi phạm RBTV,

Dấu () thể hiện trạng thái Không  xảy ra vi phạm RBTV,

Dấu +(Thuộc tính) thể hiện trạng thái  xảy ra RBTV khi thao tác trên thuộc tính tương ứng,

Dâu -(*) thể hiện trạng thái không thể gây ra vi phạm RBTV do thao tác không thực hiện được.

Ví dụ: Giới tính của nhân viên chỉ nhận giá trị “Nam” hoặc “Nữ”

Có nghĩa là: ràng buộc này xảy ra khi thêm mới hoặc khi sửa trên thuộc tính có tên là “giới tính”.

Dạng bảng tầm ảnh hưởng tổng hợp

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *