IV. Thiết kế CSDL logic và mô hình quan hệ
2. Các bớc thiết kế dữ liệu Logic
Quá trình thiết kế dữ liệu Logic có đầu vào là một mô hình dữ liệu quan niệm, đầu ra là một tập các quan hệ đợc chuẩn hoá. Hình dới đây chỉ ra các b- ớc thiết kế Logic một cơ sở dữ liệu:
Quá trình thiết kế Logic
2.1. Biểu diễn các mối quan hệ:
Biểu diễn một mối quan hệ phụ thuộc vào cả bậc cũng nh bản số của mối quan hệ đó. Ta có các trờng hợp sau đây:
a. Mối quan hệ là bậc hai dạng một – nhiều (1:N) và không có thuộc tính riêng.
b. Mối quan hệ trong sơ đồ E – R đợc biểu diễn bằng cách thêm khoá chính của quan hệ tơng ứng với phía 1 (mã khách) vào quan hệ t ớng ứng với phía nhiều để trở thành một khoá ngoại của quan hệ này.
c. Mối quan hệ bất kỳ dạng nhiều – nhiều (N:N), mối quan hệ bậc hai dạng một – nhiều nhng có thuộc tính riêng, mối quan hệ bậc ba.
Một mối quan hệ trong mô hình E-R ở trờng hợp này đợc biểu diễn bằng cách thêm một mối quan hệ mới có khoá chính gồm các khoá chính của các
Biểu diễn các thực thể Biểu diễn các thực thể Biểu diễn các mối quan hệ
Biểu diễn các mối quan hệ Chuẩn hoá các quan hệ
Chuẩn hoá các quan hệ Hợp nhất các quan hệ
Hợp nhất các quan hệ Mô hình dữ liệu Logic
(các quan hệ chuẩn) Mô hình dữ liệu Logic(các
quan hệ chuẩn)
Mô hình dữ liệu quan niệm (sơ đồ E-R)
quan hệ liên kết với nó hoặc thêm một thuộc tính của chính nó. Mọi thuộc tính đợc gắn với thuộc tính này trở thành thuộc tính của quan hệ mới.
2.2. Chuẩn hoá các quan hệ
Chuẩn hoá thờng gồm một số bớc, mỗi bớc tơng ứng với một dạng chuẩn. Để chuẩn hoá ta xét lần lợt từng quan hệ và kiểm tra tính chuẩn của nó. Muốn vậy trớc hết ta xác định các phụ thuộc hàm và khoá chính của quan hệ. Sau đó tiến hành kiểm tra lần lợt các chuẩn đối với quan hệ:
* Nếu quan hệ không phải là chuẩn 1: Phân rã quan hệ thành hai quan hệ:
Quan hệ 1: Các thuộc tính lặp và phần khoá chính xác định chúng.
Quan hệ 2: Các thuộc tính còn lại và phần khoá chính xác định phần này.
* Nếu quan hệ không phải là chuẩn 2: Phân rã quan hệ thành hai quan hệ:
Quan hệ 1: Các thuộc tính phụ thuộc vào một phần khoá chính và phần khoá chính xác định chúng.
Quan hệ 2: Các thuộc tính còn lại và khoá chính.
* Nếu quan hệ không phải là chuẩn 3: Phân rã quan hệ thành hai quan hệ:
Quan hệ 1: Các thuộc tính phụ thuộc bắc cầu và thuộc tính cầu. Quan hệ 2: Các thuộc tính còn lại và thuộc tính cầu.