1
ĐẠI HC QUC GIA THÀNH PH H CHÍ MINH
TRƯỜNG ĐI HC CÔNG NGH THÔNG TIN
KHOA H THNG THÔNG TIN
ĐẶC T THUT TOÁN MÔN THIT K CƠ SỞ D LIU
Sinh viên thc hin :
Trần Hưng Nghiệp – 07520245
Nguyễn Thành Phương 07520285
Nguyn Ngc Linh – 07520194
GIÁO VIÊN HƯỚNG DN: Phan Nguyn Thy An
Thành ph H Chí Minh, tháng 1 năm 20
2
CHƯƠNG 1: TỔNG QUAN
1. Đặt vn đ:
Cơ sở d liu quan h được xây dng theo lý thuyết do E.F.Codd gii thiu năm
1970. Mô hình quan h nhiều ưu điểm hơn hẳn các mô hình trước nó t m
1980 đã tr thành hình được dùng rng rãi để phát trin h qun tr CSDL.
Cùng vi s phát trin ca mô hình d liu quan h, có nhiu vấn đ lý thuyết
thc nghim nảy sinh và được gii quyết . Khi thiết kế CSDL quan h ta thưng đng
trước vấn đề la chn giữa các lược đ quan hệ: lược đồ nào tốt hơn? Tại sao? …
Có th nói tng quát một lược đồ quan h có cu trúc tốt là lược đồ không cha
đựng các vn đ liệt kê sau đây:
a. thừa d liu
Là s trùng lp thông tin trong CSDL.
Ví dụ: Xét lược đồ quan h NHACC(Ten_NCC, Hang, DonGia, Diachi_NCC).
Nếu mt nhà cung cp cung cp nhiu mt hàng thì địa ch nhà cung cp phi lp li
nhiu ln kéo theo dư thừa d liu.
Ngoài vic gây lãng phí dung lượng lưu trữ, s dư tha d liu có th gây ra nhng hu
qu nghiêm trọng đối vi d liệu khi người dùng cp nht d liu làm cho d liu không
tương thích, thiếu nht quán.
Ví d: Xét lại lược đồ NHACC trên. Ta th sửa đa ch mt nhà cung cp ti mt b
nào đó không sửa mt b khác gây ra địa ch không nht quán ca ng mt nhà cung
cp.
b. D thường do thêm d liu
Không th chèn b mi vào quan h nếu không có đầy đủ d liu.
d: Ta không th ghi nhận địa ch mt nhà cung cp nếu nhà cung cấp đó không
cung cp mt hàng nào c vì Ten_NCC, Hang to thành mt khoá cho quan h.
c. D thường do xóa d liu
3
Ngược li vi vấn đề c, khi ta xoá hết các mt hàng do mt hãng cung cp, ta không th
theoi đưc địa ch ca hãng đó.
Trong ví d trên, vấn đề này skhông còn na khi ta thay quan hệ NHACC bằng hai
quan hệ:
NCC_ĐC(TÊN_NCC, ĐC_NCC)
NCC_HG(TÊN_NCC, TÊN_HG, GIA)
Cách gii quyết các vấn đề trên khi thiết kế lược đồ quan h là xây dựng lược đồ đạt các
dng chun.
2. Cơ sở kiến thc:
a. Ph thuc hàm:
Ph thuc hàm (functional dependancy) là mt công c dùng đ biu din mt cách hình
thc các ràng buc toàn vẹn. Phương pp biu din y rt nhiều ưu điểm, đây là một
công cc k quan trng, gn cht vi lý thuyết thiết kế cơ sở d liu. Ph thuc hàm có ng
dng trong vic gii quyết các bài toán như: tìm khoá, tìm ph ti thiểu, c đnh dng
chun…
Định Nghĩa Phụ Thuc Hàm:
Cho R(A1,…,An) mt đồ quan h vi tp thuc tính U={A1,…,An}. X Y tp
con ca U. Xét mt quan h c th r nao đó. Ta nói X Y (đọc là: X xác đnh hàm Y hoc Y
ph thuc hàm vào X) nếu vi mi cp b u, v ca r tha:
u[X] = v[X] u[Y] = v[Y]
Để chng minh và suy ra các ph thuc hàm khác t các ph thuộc hàm đã có ta ng h
tiên đ Armstrong:
Gọi R(U) là lược đồ quan h vi U = {A1,…,An} là tp các thuc tính. X, Y, Z,
W U. H tiên đề Armstrong bao gm:
F1) Tính phn x:
Y X X Y
4
F2) Tính tăng trưởng:
X Y XZ YZ
F3) Tính bc cu:
X Y, Y Z X Z
b. Bao đóng:
Bao đóng (closure) của tp ph thuc hàm F (ký hiu F+) là tp hp tt c các
ph thuc hàm th suy ra t F da vào các tiên đề Armstrong. Tc nó phi tho hai tính
cht sau:
i) F+ F
ii) Khi áp dng các h tiên đề Armstrong cho F+ ta không thu đưc ph thuc
hàm nào nm ngoài F+.
Bao Đóng Ca Tp Thuc Tính : Cho tp ph thuc hàm F trên tp thuc tính U
X U. Bao đóng của tp thuộc tính X (đối vi F), ký hiu X+, là tp sau:
X+ = {A | X A F+}
c. Bài toán thành viên:
Qua phn trên ta nhn thy X+ được đnh nghĩa thông qua F+. Vấn đ ny sinh khi
nghiên cu thuyết CSDL là: Cho trước tp các ph thuc hàm F mt ph thuc
m f, bài toán kim tra có hay không f F+ gi là bài toán thành viên.
d. Siêu khóa, khóa:
Cho quan h R(U, F), vi U là tp thuc tính, F là tp ph thuc hàm. Cho K U.
Định nghĩa Siêu Khoá Ca Quan H :
K là mt siêu khoá ca R nếu tho điều kin sau:
K xác đnh hàm mi thuc tính trong U. Tc là K+ = U.
Định nghĩa Khoá Của Quan H :
5
K là mt khoá ca R nếu tha:
K là siêu khóa và không có siêu khóa nào nh hơn K. Tc là K+ = U và
HK H+ U.
Một lược đồ quan hthnhiu siêu khoá, nhiu khoá.
e. Ph ti thiu:
Tp ph thuc hàm ti thiu là tp ph thuc hàm tho mãn các điều kin sau:
1) Vế phi ca mi ph thuc hàm trong F ch có 1 thuc tính.
2) Mi ph thuc m X A F đều không dư thừa, tc là tp ph thuc hàm
t F bng s loi b ph thuc m X A: F \ {X A} không tương
đương với F.
3) Vi mi ph thuc m X A F, mi thuc tính B X đều không dư
tha, tc tp ph thuc hàm t F bng vic thay ph thuc hàm X A
bi ph thuc hàm (X \{B}) A : (F \ {X A}) {X \ {B}) A} không
tương đương với F.
Tp ph thuộc hàm tương đương của F:
Tp ph thuộc hàm G được gọi là tương đương vi F nếu và ch nếu F+ = G+
hiu: F G
Ph ti thiu ca F:
Là tp ph thuc hàm ti thiểu và tương đương với F
hiu : PTT(F)
f. Các dng chun:
Như đã nói trên, một lược đồ quan h th b dư thừa d liu, d thường do thêm,
d thường do xóa. Nhng vấn đề trên đã được gii quyết qua vic xây dng các dng
chun.
Xét lược đồ quan h R(U, F), vi U là tp thuc tính, F là tp ph thuc hàm.