Bài giảng Cơ sở dữ liệu - Bài 8: Thiết kế CSDL mức quan niệm
Bài 8. THIẾT KẾ SCDL MỨC QUAN NIỆM
Trên thực tế, một ứng dụng có thể đựơc phân tích.
thiết kế thành nhiều lược đồ CSDL khác nhau. Để
đánh giá việc thiết kế một lược đồ CSDL, người ta
dựa trên các tiêu chuẩn về sự trùng lặp thông tin, chi
phí kiểm tra và các ràng buộc toàn vẹn...
Vậy để tránh sự dư thừa thông tin, ta cần chuẩn hoá
tất cả các lược đồ trong quá trình thiết kế.
1. Phé p tá ch cá c lược đồ quan hệ
é á á
- ĐN: Phép tách các lược đồ quan
hệ R = { A1, A2, .. An} là việc thay thế
lược đồ quan hệ R bằng tập các lược đồ
{ R1, R2, .., Rk}, trong đó
Ri R, i= 1,..,k
và R = R1 R2 ... Rk
Không đòi hỏi các Ri phải là phân biệt
- Mục đích : Loại bỏ các dị thường dữ
liệu
Ví dụ :
í
Cho lược đồ quan hệ người cung cấp :
S(MCTY, ĐC, MH, GIA)
với tập pth : MCTY ĐC
MCTY, MH GIA
Có thể được tách thành 2 lược đồ khác là :
S1(MCTY, ĐC) và S2 ( MCTY, MH, GIA)
như vậy sẽ không mất công lưu địa chỉ của
một công ty nhiều lần
Kết nối khô ng mất má t thô ng tin
á
- Nếu R là một lược đồ quan hệ được
tách thành các lược đồ con R1, R2, .., Rk
và D là một tập các phụ thuộc dữ liệu. Nói
rằng phép tách là tách - kết nối không mất
mát thông tin đối với D nếu với mỗi quan hệ
r trên R thoả D:
r = R1(r) * * ... *
R2 (r)
Rk(r)
tức là r được tạo nên từ phép kết nối tự nhiên
của các hình chiếu của nó trên các Ri, i=
1..,k
Kiểm tra phé p kết nối khô ng
é
mất má t thô ng tin
á
Input: R ={ A1, A2, .., An} tập các phụ
thuộc hàm và phép tách p =(R1, R2, ..,
Rk)
Output: Phép tách có phải là không mất
mát thông tin hay không ?
Phương pháp : Thiết lập một bảng với n cột
k hàng.; cột thứ j tương ứng với thuộc tính
Aj; hàng thứ i tương ứng với lược đồ Ri.
Tại ô (i,j) điền kí hiệu aj nếu Aj Ri, nếu
không điền kí hiệu bij
- Xét các pth:
+Xét ( X Y ) F , xét các hàng và nếu có
giá trị bằng nhau trên thuộc tính X thì làm bằng
các giá trị của chúng trên Y. Khi làm bằng trên
Y, nếu một trong hai giá trị là aj thì ưu tiên làm
bằng aj, nếu không làm bằng một trong các kí
hiệu bij.
+Tiếp tục với các pth khác ( kể cả việc lặp
lại các pth đã được áp dụng) cho đến khi không
còn áp dụng được nữa.
- Xem xét kq: Nếu xuất hiện một hàng gồm toàn
kí hiệu a1, a2, .. , an thì phép kết nối là không
mất mát thông tin, ngược lại là kết nối mất mát
thông tin.
VD1: Quan hÖ ng-êi cung cÊ p:
R(MCTY, ĐC, MH, GIA) ®-îc t¸ch thµnh 2 quan hÖ:
R1(MCTY, ĐC) vµ R2(MCTY, MH,GIA)
víi c¸c phô thuéc hµm: MCTY ĐC
MCTY,MH GIA
Kiểm tra xem phép tách trên có mất mát thông tin hay
không ?
B¶ng ban ®Çu ®-îc thiÕt lË p nh- sau:
1
2
3
4
MCTY
MH GIA
§C
R1 a1
R2 a1
a2
b13
a3
b14
a3
1
2
b22
¸p dông phô thuéc hµm MCTY ĐC cho 2
hµng cña b¶ng. Ta nhË n thÊ y 2 hµng b»ng nhau
trªn cét tªn (®Òu lµ a1) nªn ë cét §C chóng ®-îc
lµm b»ng vµ b»ng a2. Khi ®ã ta thÊ y b¶ng kÕt
qu¶ lµ:
Tªn ĐÞa chØ S¶n phÈm Gi¸
R1 a1
R2 a1
a2
b13
a3
b14
a3
a2
Cã hµng thø 2 cã c¸c gi¸ trÞ toµn lµ a, do ®ã phÐp
t¸ch lµ T¸ch - KÕt nèi kh«ng mÊ t m¸t th«ng tin.
Bµi tË p:
B1. Cho l-îc ®å quan hÖ R={A, B, C, D} vµ tË p phô
thuéc hµm F={AB, AC D}
PhÐp t¸ch quan hÖ R thµnh 2 quan hÖ R1={AB} vµ
R2={ACD} cã tæn thÊ t th«ng tin kh«ng? V× sao?
B2. Cho lược đồ quan hệ với các thuộc tính A, B, C, D, E, F
và tập phụ thuộc hàm
F= { AB C, C D, ABD E, F A}
Kiểm tra tính mất mát thông tin của phép tách R thành :
(R) = ( BC, AC, ABDE, ABDF)
B3. Dùng kĩ thuật bảng kiểm tra tính tổn thất của các
phép tách sau :
R= < U, F>, U = ABCDE ;
F = { A C, B C , CD , DE C , CEA}
p = ( AD, AB, BE , CDE)
2. Một số khá i niệm
á
* Thuộc tí nh khoá và khô ng khoá
í
á
á
- Cho một lược đồ quan hệ R trên tập
thuộc tính U ={ A1, .., An}. Thuộc tính A U
được gọi là thuộc tính khoá ( nguyên thuỷ
hay cơ bản) nếu A là một thành phần thuộc
một khoá nào đó của R, ngược lại A được gọi
là thuộc tính không khoá (phi nguyên thuỷ
hoặc thứ cấp).
-VD : Cho lược đồ R trên tập thuộc tính
u= { A, B, C, D } với các pth AB C , B D
, BC A . Ta thấy AB và BC là khoá. Vậy A,
B, C là thuộc tính khoá ( hay cơ bản) , còn D
là thuộc tính không khoá hay thứ cấp.
* Phụ thuộc hàm đầy đủ
Cho lược đồ quan hệ R(U) trên
tập thuộc tính U = { A1, ... ,Ak}. X
và Y là hai tập thuộc tính khác nhau
X U và Y U.
Y là phụ thuộc hàm đầy đủ vào X
nếu Y là pth vào X nhưng không pth
vào bất kì tập con thực sự nào của X
Phụ thuộc bắc cầu
Cho một lược đồ quan hệ R(U); X là một
tập con các thuộc tính X U, A là một thuộc
tính thuộc U. A được gọi là phụ thuộc bắc cầu
vào X trên R nếu tồn tại một tập con Y của R
sao cho X Y, Y A nhưng Y X với A
XY.
3. Cá c dạng chuẩn của lược đồ quan hệ
á
- Quan hệ được chuẩn hoá là quan
hệ trong đó mỗi miền của một thuộc
tính chỉ chứa các giá trị nguyên tố (
tức là không phân nhỏ được nữa)
- Quan hệ có chứa các miền giá trị
là không nguyên tố gọi là quan hệ
không chuẩn hoá.
- Mét quan hÖ ®-îc chuÈ n ho¸ cã thÓ thµnh mét
hoÆc nhiÒu quan hÖ chuÈ n ho¸ kh¸c vµ kh«ng
lµm mÊ t m¸t th«ng tin.
C¸c d¹ng chuÈ n:
- D¹ng kh«ng chuÈ n
- D¹ng chuÈ n thø nhÊ t (1NF: First Normal Form)
- D¹ng chuÈ n thø hai (2NF)
- D¹ng chuÈ n thø ba (3NF)
- D¹ng chuÈ n Boye – Codd (BCNF)
3.1. D¹ng chuÈn thø nhÊt:
Mét l-îc ®å quan hÖ R ®-îc gäi lµ ë d¹ng chuÈ n
mét (1NF) nÕu vµ chØ nÕu toµn bé c¸c miÒn cã
mÆt trong R ®Òu chØ chøa c¸c gi¸ trÞ nguyªn tè.
VD: Cho bảng quan hệ GD ( Ten_GV, MON_GD)
Ten_GV
Lan
Mon_GD
PASCAL, NM CSDN
Hà
C, VISUAL BASIC, TK WEP
Các giá trị ở thuộc tính Mon_GD chưa là giá trị
nguyên tố nên bảng trên chưa ở dạng chuẩn 1.
Để đưa lược đồ trên về dạng chuẩn 1 ta tách
thuộc tính kép thành các thuộc tính đơn như sau :
Bảng GD ở dạng chuẩn 1:
Ten_GV
Mon_GD
Lan PASCAL
Lan NM CSDN
Hà C
Hà VISUAL BASIC
Hà TK WEP
3.2. D¹ng chuÈn thø 2:
L-îc ®å quan hÖ R ë d¹ng chuÈ n 2 (2NF) nÕu:
R ë d¹ng chuÈ n mét
Mọi thuéc tÝnh kh«ng kho¸ cña R lµ phô thuéc hµm ®Çy
®ñ vµo kho¸ chÝnh.
VD:Cho quan hÖ:
SVTHI ( MONTHI, MSSV, TEN, TUOI, DIACHI, DIEM )
M«n thi MSSV
Tªn
Lan
Ha
Tuæi ĐÞa chØ §iÓm
3
3
4
4
5
5
11
12
11
12
11
13
20
21
20
21
20
22
HN
HP
HN
HP
HN
HT
8
6
7
6
7
2
Lan
Ha
Lan
Tu
Khoá chính của quan hệ trên là (Monthi ,
MSSV).Ta thấy các thuộc tính không khoá: ten,
tuoi , diachi không phụ thuộc đầy đủ vào khoá
chính (chỉ phụ thuộc vào MSSV). Do đó, vi phạm
2NF. Để lược đồ ở dạng chuẩn 2, ta tách thành 2
quan hệ :
SINHVIEN (MSSV, TEN, TUOI, DIACHI) vµ
THIXONG (MONTHI, MSSV, DIEM)
Hai quan hệ trên đã ở 2NF vì mọi thuộc tính
không khoá đều đã phụ thuộc hàm đầy đủ vào
khoá chính
3.3 Dạng chuẩn thứ 3 ( 3NF)
Lược đồ quan hệ R ở dạng chuẩn thứ 3 ( 3NF) nếu :
R ở dạng chuẩn 2
Mỗi thuộc tính không khoá là không phụ thuộc hàm bắc
cầu vào khoá chính.
- VD1 : Cho lược đồ quan hệ R ( SAIP) với các phụ thuộc
hàm : SI P và S A.
R không ở 3NF. Vì có A là một thuộc tính không khoá, phụ
thuộc bắc cầu vào khoá chính: SI S , S A và S SI.
- VD2: Lược đồ quan hệ R ( CSZ) với các phụ thuộc hàm:
CS Z, Z C. Trong lược đồ này, mọi thuộc tính đều là
thuộc tính khoá. Do vậy R ở 3 NF
Tải về để xem bản đầy đủ
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Cơ sở dữ liệu - Bài 8: Thiết kế CSDL mức quan niệm", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
bai_giang_co_so_du_lieu_bai_8_thiet_ke_csdl_muc_quan_niem.pdf

