UNIQUE (J, P)

Một phần của tài liệu Chuẩn hóa cơ sở dữ liệu (Trang 55 - 64)

Nh vậy, định nghĩa BCNF đ hạn chế đã ợc một số trờng hợp xuất hiện trong định nghĩa 3NF

khoá chính, phụ thuộc hàm đầy đủ và phụ thuộc hàm bắc cầu

Nhng mặt khác, định nghĩa 3NF vẫn còn có ích trong thực tế vì nó tham gia vào quá trình thực sự theo từng bớc một mà ngời sử dụng cần phải tiến hành để chuyển một quan hệ bất kỳ thành một tập tơng đơng của các quan hệ 3NF

3.5. Kết luận

Các bớc để chuyển mô hình dữ liệu quan hệ thành các quan hệ ở dạng chuẩn hóa 4NF:

1. B ớc 1 : Chuyển một quan hệ từ dạng cha chuẩn hoá thành một tập các quan hệ tơng đơng ở dạng chuẩn hoá 1NF

Có hai phơng pháp chuyển một quan hệ từ dạng cha chuẩn hoá thành một tập các quan hệ tơng đơng ở dạng chuẩn hoá 1NF:

==============================================================================="Cơ sở dữ liệu". PGS.TS. Nguyễn Việt Hơng. Khoa ĐT-VT. ĐHBK-HN. 11/2004 "Cơ sở dữ liệu". PGS.TS. Nguyễn Việt Hơng. Khoa ĐT-VT. ĐHBK-HN. 11/2004

+ Loại bỏ các nhóm lặp lại bằng cách đa dữ liệu thích hợp vào các cột trống của các hàng chứa dữ liệu lặp lại

Cách này thông thờng đợc gọi là "làm phẳng" ("flattening") bảng đ choã

Với phơng pháp này, sự d thừa đ đã ợc đa vào quan hệ kết quả và sau này sự d thừa này sẽ đợc loại bỏ trong quá trình chuẩn hoá

+ Cách thứ hai:

Chỉ định một hoặc một nhóm các thuộc tính làm khoá chính cho bảng cha chuẩn hoá

Loại bỏ các nhóm lặp lại bằng cách mang nhóm các thuộc tính lặp lại cùng với bản copy của khoá chính sang một quan hệ tách biệt

Nhận diện khoá chính cho các quan hệ mới nhận đợc

Đôi khi bảng cha chuẩn hoá có thể chứa hơn một nhóm lặp lại hay các nhóm lặp lại lồng nhau

Trong các trờng hợp nh vậy, cách tiếp cận này đợc ứng dụng lặp đi lặp lại cho đến khi nào không còn các nhóm lặp lại nữa

Cả hai cách tiếp cận đều đúng, tuy nhiên, với cách tiếp cận thứ hai, ngay từ đầu sẽ tạo ra những quan hệ ít nhất là ở dạng chuẩn thứ nhất (1NF) với ít sự d thừa hơn

==============================================================================="Cơ sở dữ liệu". PGS.TS. Nguyễn Việt Hơng. Khoa ĐT-VT. ĐHBK-HN. 11/2004 "Cơ sở dữ liệu". PGS.TS. Nguyễn Việt Hơng. Khoa ĐT-VT. ĐHBK-HN. 11/2004

Minh hoạ hai cách tiếp cận này bằng cách xét ví dụ của công ty cho thuê tài sản tên là "DreamHome".

Để đơn giản hoá ví dụ này, giả thiết:

+ Mỗi khách chỉ đợc thuê một tài sản đ cho chỉ một lầnã

+ Mọi khách hàng đều không đợc thuê hơn một tài sản cùng một lúc

Mẫu biểu chi tiết thuê tài sản của khách hàng của công ty DreamHome đợc minh hoạ trên hình 3.17

Thông tin về các tài sản mà hai khách thuê có tên John Kay và Aline Stewart thuê đợc chuyển thành bảng Customer_Rental với các hàng và cột nh trên hình 3.18

DreamHome

Customer Rental Details

Customer Name John Kay Customer Number CR76 Property

Number

Property Address Rent Start Rent Finish Rent Owner Number Owner Name PG4 6 Lawrence Street, Glasgow

1-Jul-93 31-Aug-95 350 CO40 Tina Murphy PG16 5 Novar Drive,

Glasgow

1-Sep-95 1-Sep-96 450 CO93 Tony Shaw

Hình 3.17. Mẫu biểu chi tiết đơn thuê của khách hàng của công ty DreamHome

Customer_Rental

==============================================================================="Cơ sở dữ liệu". PGS.TS. Nguyễn Việt Hơng. Khoa ĐT-VT. ĐHBK-HN. 11/2004 "Cơ sở dữ liệu". PGS.TS. Nguyễn Việt Hơng. Khoa ĐT-VT. ĐHBK-HN. 11/2004

Customer_No CName Property_No PAddress RentStart RentFinish Rent Owner_ No OName CR76 John Kay PG4 6 Lawrence Street, Glasgow

1-Jul-93 31-Aug-95 350 CO40 Tina Murphy

PG16 5 Novar Drive, Glasgow

1-Sep-95 1-Sep-96 450 CO93 Tony Shaw CR56 Aline Stewart PG4 6 Lawrence Street, Glasgow

1-Sep-92 10-June-93 350 CO40 Tina Murphy

PG36 2 Manor Road, Glasgow

10-Oct-93 1-Dec-94 375 CO93 Tony Shaw PG16 5 Novar Drive,

Glasgow

1-Jan-95 10-Aug-95 450 CO93 Tony Shaw

Hình 3.18. Bảng cha chuẩn hoá Customer_Rental

Thuộc tính khoá chính đợc nhận diện cho bảng cha chuẩn hoá Customer_Rental là Customer_No

Nhóm lặp lại trong bảng cha chuẩn hoá là các thuộc tính của tài sản đ đã ợc thuê mà đợc lặp lại cho từng khách hàng:

Nhóm lặp lại = (Property_No, PAddress, RentStart, RentFinish, Rent, Owner_ No, OName)

Để chuyển bảng cha chuẩn hoá này thành dạng chuẩn 1NF, chúng ta phải đảm bảo chỉ có một giá trị tại mỗi ô cắt nhau của mỗi hàng và mỗi cột

a. Cách thứ nhất : Loại bỏ nhóm lặp lại bằng cách đa dữ liệu về khách hàng tơng ứng vào từng hàng

==============================================================================="Cơ sở dữ liệu". PGS.TS. Nguyễn Việt Hơng. Khoa ĐT-VT. ĐHBK-HN. 11/2004 "Cơ sở dữ liệu". PGS.TS. Nguyễn Việt Hơng. Khoa ĐT-VT. ĐHBK-HN. 11/2004

Dạng chuẩn 1NF của quan hệ Customer_Rental đợc minh hoạ trên hình 3.19

Khoá chính cho quan hệ Customer_rental này là thuộc tính ghép bao gồm hai thuộc tính (Customer_No, Property_No)

Customer_Rental (1NF)

CR76 PG4 John Kay

Một phần của tài liệu Chuẩn hóa cơ sở dữ liệu (Trang 55 - 64)

Tải bản đầy đủ (DOC)

(73 trang)
w