Co So Du Lieu Le Thi Bao Thu Lab 7 Solution (Cuuduongthancong - Com)

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

Lab 7 – Functional Dependencies & Normalization Trang 1

Bài giả i tham khả o bài Thực hành số 7


Phụ thuộc hàm & Chuẩ n hóa dữ liệ u
Bài 1
Cho quan hệ R(A, B, C, D, E) với các phụ thuộc hàm sau:
 A, B --> C
 C, D --> E
 D, E --> B
Tìm tấ t cả các khóa củ a R.
 Lời giả i:
o

o
o

o
o Các tậ p con của L là
 . Vậ y {ABD} là mộ t khóa củ a R. Loạ i bỏ các tậ p cha củ a {B} là
{BC}, {BE}, {BCE}.
 . Vậ y {ACD} là mộ t khóa củ a R. Loạ i bỏ các tậ p cha củ a {C} là
{CE}.
 . Vậ y {ADE} là mộ t khóa củ a R.
Vậ y 3 khóa củ a R là {ABD}, {ACD} và {ADE}.

Bài 2
Cho quan hệ R(A, B, C, D, E, F, G, H, I, J) với các phụ thuộc hàm sau:
 A, B --> C
 A --> D, E
 B --> F
 F --> G, H
 D --> I, J
a. Tìm tấ t cả các khóa của R.
b. Chuẩ n hóa quan hệ trên theo thứ tự: 1NF, 2NF, 3NF.
 Lời giả i:
a. Tìm tấ t cả các khóa của R:
o

Hệ Cơ Sở Dữ Liệu – HK2 / 2011 – 2012 Khoa KH&KTMT – Bộ môn Hệ Thống Thông Tin

CuuDuongThanCong.com https://fb.com/tailieudientucntt
Lab 7 – Functional Dependencies & Normalization Trang 2

o
Vậ y R có khóa duy nhấ t là {AB}.
b. Chuẩ n hóa quan hệ trên theo thứ tự:
o Chuẩ n 1NF:
 R (A, B, C, D, E, F, G, H, I, J) F = {A,BC; AD,E; BF; FG,H; DI,J}
o Chuẩ n 2NF:
 R1 (A, B, C) F1 = {A,BC}
 R2 (A, D, E, I, J) F2 = {AD,E; DI,J}
 R3 (B, F, G, H) F3 = { BF; FG,H }
o Chuẩ n 3NF:
 R1 (A, B, C) F1 = {A,BC}
 R21 (A, D, E) F21 = {AD,E}
 R22 (D, I, J) F22 = {DI,J}
 R31 (B, F) F31 = {BF}
 R32 (F, G, H) F32 = {FG,H}
(Lưu ý: Các quan hệ trên cũng đã đạ t được chuẩ n BCNF)

Bài 3
Cho quan hệ R(A, B, C, D, E, F, G, H, I, J) với các phụ thuộc hàm sau:
 A, B --> C
 B, D --> E, F
 A, D --> G, H
 A --> I
 H --> J
a. Tìm tấ t cả các khóa của R.
b. Chuẩ n hóa quan hệ trên theo thứ tự: 1NF, 2NF, 3NF.
 Lời giả i:
a. Tìm tấ t cả các khóa của R:
o

o
Vậ y R có khóa duy nhấ t là {ABD}.
b. Chuẩ n hóa quan hệ trên theo thứ tự:
o Chuẩ n 1NF:
 R(A, B, D, C, E, F, G, H, I, J) F = {A,BC; B,DE,F; A,DG,H; AI; HJ}

Hệ Cơ Sở Dữ Liệu – HK2 / 2011 – 2012 Khoa KH&KTMT – Bộ môn Hệ Thống Thông Tin

CuuDuongThanCong.com https://fb.com/tailieudientucntt
Lab 7 – Functional Dependencies & Normalization Trang 3

o Chuẩ n 2NF:
 R1 (A, B, C) F1 = {A,BC}
 R2 (B, D, E, F) F2 = {B,DE,F}
 R3 (A, D, G, H, J) F3 = {A,DG,H; HJ}
 R4 (A, I) F4 = {AI}
o Chuẩ n 3NF:
 R1 (A, B, C) F1 = {A,BC}
 R2 (B, D, E, F) F2 = {B,DE,F}
 R31 (A, D, G, H) F31 = {A,DG,H}
 R32 (H, J) F32 = {HJ}
 R4 (A, I) F4 = {AI}
(Lưu ý: Các quan hệ trên cũng đã đạ t được chuẩ n BCNF)

Bài 4
Cho quan hệ R(ShipName, ShipType, VoyageID, Cargo, Port, Date) với các phụ thuộ c hàm sau:
 ShipName --> ShipType
 VoyageID --> ShipName, Cargo
 ShipName, Date --> VoyageID, Port
a. Tìm tấ t cả các khóa của R.
b. Chuẩ n hóa quan hệ trên theo thứ tự: 1NF, 2NF, 3NF, BCNF.
 Lời giả i:
a. Tìm tấ t cả các khóa của R:

o
o Các tậ p con của L là {ShipName}, {VoyageID}, {ShipName, VoyageID}
 . Vậ y {ShipName, Date} là mộ t khóa củ a R. Loại bỏ các tậ p
cha của {ShipName} là {ShipName, VoyageID}.
 . Vậ y {VoyageID, Date} là mộ t khóa củ a R.
Vậ y R có 2 khóa là {ShipName, Date} và {VoyageID, Date}.

Hệ Cơ Sở Dữ Liệu – HK2 / 2011 – 2012 Khoa KH&KTMT – Bộ môn Hệ Thống Thông Tin

CuuDuongThanCong.com https://fb.com/tailieudientucntt
Lab 7 – Functional Dependencies & Normalization Trang 4

b. Chuẩ n hóa quan hệ trên theo thứ tự:


o Chuẩ n 1NF:
 R (ShipName, ShipType, VoyageID, Cargo, Port, Date)
 Khóa: {ShipName, Date} và {VoyageID, Date}
 F = {ShipName  ShipType; VoyageID  ShipName, Cargo; ShipName, Date 
VoyageID, Port)
o Chuẩ n 2NF:
 R1 (ShipName, ShipType) F1 = {ShipName  ShipType}
 R2 (VoyageID, Cargo) F2 = {VoyageID  Cargo}
 R3 (ShipName, VoyageID, Port, Date)
Khóa: {ShipName, Date} và {VoyageID, Date}
F3 = {VoyageID  ShipName; ShipName, Date  VoyageID, Port)
Nhậ n xét: R1, R2, R3 cũng đạ t chuẩ n 3NF
o Chuẩ n BCNF:
 R1 (ShipName, ShipType) F1 = {ShipName  ShipType}
 R2 (VoyageID, Cargo) F2 = {VoyageID  Cargo}
 R31 (VoyageID, ShipName) F31 = {VoyageID  ShipName)
 R32 (VoyageID, Date, Port) F32 = {VoyageID, Date  Port)

Bài 5
Cho quan hệ sau với các dữ liệ u mẫu:

a. Xác đị nh các phụ thuộ c hàm.


b. Chuẩ n hóa quan hệ trên theo thứ tự: 1NF, 2NF, 3NF, BCNF.

Hệ Cơ Sở Dữ Liệu – HK2 / 2011 – 2012 Khoa KH&KTMT – Bộ môn Hệ Thống Thông Tin

CuuDuongThanCong.com https://fb.com/tailieudientucntt
Bài tập Hệ CSDL – HK2/2010 - 2011 Lab 7 – Functional Dependencies & Normalization

 Lời giả i:
a. Xác đị nh các phụ thuộ c hàm:
o PartNumber  Description
o Supplier  SupplierAddress
o PartNumber, Supplier  Price
b. Chuẩ n hóa các quan hệ :
o Xác đị nh khóa:


Vậ y R có 1 khóa duy nhấ t là .
o Chuẩ n 1NF:
 R (PartNumber, Description, Supplier, SupplierAddress, Price)
 F = {PartNumber  Description; Supplier  SupplierAddress; PartNumber, Supplier 
Price}
o Chuẩ n 2NF:
 R1 (PartNumber, Description) F1 = {PartNumber  Description}
 R2 (Supplier, SupplierAddress) F2 = { Supplier  SupplierAddress}
 R3 (PartNumber, Supplier, Price) F3 = { PartNumber, Supplier  Price}
R1, R2, R3 cũng đã đạ t được chuẩ n 3NF, BCNF.

CuuDuongThanCong.com https://fb.com/tailieudientucntt

You might also like