Chuyển từ ER mở rộng về ER kinh điển

Một phần của tài liệu Giáo trình phân tích và thiết kế một hệ thống thông tin doc (Trang 78 - 83)

Các bước thực hiện

Các hệ QT CSDL quan hệ ngày nay đòi hỏi giá trị đơn cho các kiểu thuộc tính và cấm khái niệm thừa kế giữa các quan hệ. Do đó để thành lập một CSDL quan hệ bắt đầu từ một lược đồ khái niệm theo mô hình ER mở rộng, trước hết cần phải chuyển lược

đồ này sang ER kinh điển. Sau đây là các quy tắc để biến đổi mô hình ER mở rộng sang mô hình ER kinh điển

Quy tắc 1: Xử lý các thuộc tính đa trị của một kiểu thực thể. Thay một kiểu thuộc tính đa trị T của một kiểu thực thể A bởi một kiểu thực thể mới E – T và kết nối A với E – T bởi một kiểu liên kết. Đưa vào kiểu thực thể mới E – T một kiểu thuộc tính đơn trị t, tương ứng với giá trị thành phần của T. Nghiên cứu bản số mới cho kiểu liên kết mới (giữa A và E - T)

Ví dụ. Kiểu thực thể nhân viên có kiểu thuộc tính đa trị là : các ngoại ngữ

Chuyển sang ER kinh điển, ta có

Một trường hợp đặc biệt quan trọng thường gặp trong mô hình hóa là trường hợp các chứng từ có bảng. Ví dụ như Hóa đơn sau

Ta nhận thấy trong Hóa đơn trên có hai danh mục

o Các danh mục ở ngoài bảng, chỉ nhận một giá trị duy nhất.

o Các danh mục ở trong bảng, có thể nhận nhiều giá trị

HÓA ĐƠN Số ______ Họ tên khách hàng:__________________________ Địa chỉ:______________________________

Hình thức thanh toán:_________________________

Mã hàng Tên hàng Đơn vị tính Số lượng Đơn giá Thành tiền Cộng tiền:___________________ Ngày: ______________________

Khi tiến hành mô hình hóa, một cách tự nhiên ta diễn tả Hóa đơn là một kiểu thực thể với tất cả danh mục có trong Hóa đơn được lấy làm kiểu thuộc tính. Như vậy ta có một mô hình ER mở rộng. Sau đó ta biến đổi ER mở rộng về ER kinh điển bằng cách loại bỏ các thuộc tính đa trị. Ở đây chỉ cần tạo một kiểu thực thể phụ thuộc duy nhất, mà mỗi thực thể trong đó tương ứng với một dòng các giá trị viết trong bảng

trở thành

Quy tắc 2: Xử lý các kiểu thuộc tính đa trị của một kiểu liên kết: Thực thể hóa kiểu liên kết đó rồi áp dụng qui tắc 1 cho kiểu thực thể mới lập

Hai kiểu thuộc tính Các môn học, các năm học của kiểu liên kết Dạy là kiểu thuộc tính đa trị. Ta có thể biến đổi như sau

Qui tắc 3: Xử lý các kiểu thực thể con. Giả sử kiểu thực thể A có kiểu thực thể con là B. Có hai cách xử lý tùy chọn như sau.

Qui tắc 3.1: Loại bỏ kiểu thực thể B và bổ sung mọi kiểu thuộc tính của B vào trong A, đồng thời một kiểu thuộc tính cho phép phân loại các thực thể của A (thuộc tính B hay không thuộc tính B). Chuyển mọi kiểu liên kết với B sang A, và nghiên cứu cụ thể các bản số tối thiểu.

Qui tắc 3.2. Thay mối liên quan thừa kế giữa A và B bởi một kiểu liên kết giữa A và B mà các bản số tối đa đều là 1.

Nếu áp dụng qui tắc 3.2.

Chú ý:

- Trong mô hình ER trên khi Loại người = Viên chức, các kiểu thuộc tính Bút hiệu, Số tác phẩm không dùng tới, nghĩa là không có giá trị. Tuy nhiên để cho các kiểu thuộc tính đối với một kiểu thực thể luôn có giá trị, trong trường hợp trên, ta gán cho kiểu thuộc tính một giá trị quy ước: NULL (được hiểu là không tồn tại hoặc chưa được biết).

- Nếu kiểu thuộc tính Loại người là thuộc tính đa trị (nghĩa là có người vừa là nhà văn vừa là viên chức), ta lại phải áp dụng qui tắc 1 để xử lý tiếp, lúc đó mô hình ER trở thành

Hình 4 – 3. Mô hình ER kinh điển

Một phần của tài liệu Giáo trình phân tích và thiết kế một hệ thống thông tin doc (Trang 78 - 83)