CHƢƠNG 5
Thiết kế CSDL quan hệ mức khái niệm
Tiến sĩ: Lê Thị Tú Kiên
Giới thiệu
2
Các bước thiết kế CSDL
Tập
hợp các yêu cầu và phân tích
Thiết kế khái niệm
Thiết kế logic
Thiết kế vật lí
3
Nội dung
4
Dư thừa và dị thường dữ liệu
Phụ thuộc hàm
Hệ tiên đề Armstrong
Bao đóng của tập thuộc tính
Phủ của một tập PTH
Xác định khóa của lược đồ quan hệ
Chuẩn hóa lược đồ quan hệ
Các phép tách lược đồ quan hệ
Chuyển đổi mô hình thực thể liên kết sang mơ hình quan hệ
5
Dƣ thừa và dị thƣờng dữ liệu
Dƣ thừa dữ liệu
6
NHAN_VIEN_PHONG(MSNV,HO_TEN,NG_SINH,
GIOI_TINH,LUONG,MA_DV,TEN_PHONG,MA_TP)
Dị thƣờng dữ liệu
7
Dị thường khi thêm bộ
Dị thƣờng dữ liệu
8
Dị thường khi xóa bộ
Dị thƣờng dữ liệu
9
Dị thường khi sửa bộ
Cách giải quyết dị thƣờng dữ liệu
10
Tách lược đồ NHAN_VIEN_PHONG thành hai lược đồ:
NHAN_VIEN(MSNV,HO_TEN,NG_SINH,GIOI_TINH,LUONG,MA_DV)
PHONG(MA_DV,TEN_PHONG,MA_TP)
Cách giải quyết dị thƣờng dữ liệu
11
12
Phụ thuộc hàm
Định nghĩa phụ thuộc hàm
13
U: tập thuộc tính
R(U): lược đồ quan hệ xác định trên U
A
X, Y U
a1
b1
c1
d1
Y phụ thuộc hàm vào X trên R(U) nếu:
a1
b1
c1
d2
r R(U), t1, t2 r
a1
b2
c2
d1
t1[X]=t2[X] t1[Y]=t2[Y]
a2
b1
c1
d3
Ký hiệu XY
B
C
D
ABC là PTH
Phụ thuộc hàm suy diễn
14
F: tập các phụ thuộc hàm trên R(U)
XY được suy diễn logic từ F nếu rR(U), r thỏa F kéo theo r
thỏa XY
Kí hiệu: F ╞ (XY)
Ví dụ: F={AB, BC} thì F ╞ (AC)
Bao đóng của tập phụ thuộc hàm
15
F+={(XY) | F ╞ (XY)}
Nếu F+=F, thì F được gọi là họ phụ thuộc hàm đầy đủ
Ví dụ: Cho F={ACB, DE}, vì F=F+ nên F là tập PTH
đầy đủ.
16
Hệ tiên đề Armstrong
Hệ tiên đề Armstrong
17
Cho U, R(U), F, và X, Y, Z U. Kí hiệu XY=XY
A1. Phản xạ (Reflexivity):
Nếu Y X thì F ╞ (XY )
A2. Tăng trưởng (Augmentation)
Nếu F ╞ (XY ) thì Z U, F╞ (XZYZ)
A3. Bắc cầu (Transitivity)
Nếu F ╞ (XY ) và F ╞ (YZ ) thì F ╞ (XZ).
Ví dụ
18
A1. Phản xạ
Nếu Y X thì F ╞ (XY )
A2. Tăng trưởng
Nếu F ╞ (XY )
thì Z U, F╞ (XZYZ)
A3. Bắc cầu
Nếu F ╞ (XY ) và
F ╞ (YZ ) thì F ╞ (XZ)
Cho F={ABC, CA}.
Chứng minh: F ╞ (BCABC)
Giải:
CA nên theo tiên đề tăng
trưởng ta có: BCAB (1)
Do ABC nên cũng theo tiên đề
tăng trưởng ta có: ABABC (2)
Từ (1) và (2), áp dụng tiên đề bắc
cầu ta được: BCABC. Suy ra
đpcm.
Do
Hệ tiên đề Armstrong mở rộng
19
A4. Quy tắc hợp (Union)
{XY, XZ}╞ (XYZ)
A5. Quy tắc giả bắc cầu (Pseudotransivity)
{XY, WYZ}╞ (WXZ)
A6. Quy tắc tách (Decomposition)
Nếu XY đúng và Z Y thì XZ đúng
Ví dụ
20
Cho F={ABC, BD, CDE, CEGH, GA}.
Chứng minh F╞ (ABEG)
Ví dụ
21
Chứng minh {ABC, BD, CDE, CEGH, GA}╞ (ABEG)
Giải:
CEGH nên theo luật tách ta có: CEG (1)
Áp dụng luật tăng trưởng với (1) ta được CEEG (2)
Do CDE nên theo luật tăng trưởng ta có: CDCE (3)
Từ (2) và (3), áp dụng luật bắc cầu ta được: CDEG(4)
Do BD nên theo luật tăng trưởng ta có: BCCD (5)
Từ (4) và (5), áp dụng luật bắc cầu ta được: BCEG(6)
Do ABC nên theo luật tăng trưởng ta có: ABBC (7)
Từ (6) và (7), áp dụng luật bắc cầu ta được: ABEG. Suy ra đpcm.
Do
22
Bao đóng của tập thuộc tính
Định nghĩa bao đóng của tập thuộc tính
23
X+F ={AU| XA F+}
Thuật tốn tính X+F
24
Vào: U, F , X U;
Ra: X+F
Phương pháp:
Bước
0: Đặt X0=X
Bước
i: Xi=Xi-1A nếu tồn tại (YZ)F mà YXi -1 với AZ và
AXi-1
Vì
X=X0 X1 …U, do U hữu hạn nên sẽ tồn tại một chỉ số i nào
đó mà Xi=Xi+1, khi đó: X+F=Xi và dừng thuật toán.
Ví dụ tính X+F
25
F={ABC, DEG, ACDB, CA, BEC, CEAG, BCD, CGBD}
Tính (BD)+F
Giải
B0: Đặt X0 = BD
B1: X1 = X0EG = BDEG vì PTH DEG có vế trái D X0 và vế phải EGX0
B2: X2 = X1C = BDEGC vì PTH BEC có vế trái BE X1 và vế phải CX1
B3: X3 = X2A = BDEGCA vì PTH CA có vế trái C X2 và vế phải A X2
B4: X4 = X3 = ABCDEG = U
Kết luận: (BD)+F = U= ABCDEG