Bài giảng Cơ sở dữ liệu – Đỗ Thị Mai Hường

88 60 0
Bài giảng Cơ sở dữ liệu – Đỗ Thị Mai Hường

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bài giảng Cơ sở dữ liệu biên soạn bởi giáo viên Đỗ Thị Mai Hường với các nội dung lý thuyết thiết kế cơ sở dữ liệu quan hệ; sự dư thừa; phụ thuộc hàm; hệ tiên đề Armstrong; tính chất của bao đóng X+...

CƠ SỞ DỮ LIỆU U GIÁO VIÊN: ĐỖ THỊ T MAI HƯỜNG BỘ MÔN: CÁC HỆ T THỐNG THÔNG TIN KHOA: CÔNG NG GHỆ THÔNG TIN Lý thuyết CSDL CHƯƠNG Lý th thuyế ết thiết kế sở liệ ệu quan hệ Lý thuyết CSDL Nội dung chi tiết • • • • • • • • Giới h hạn ủ ER Sự dư thừa Ph thuộc Phụ h ộ hàm hà Hệ suy diễn Amstrong Th ậ tốn Thuật tìm ì bao b đóng Thuật tốn tìm khóa Cá dạng chuẩn Các ẩ Kiểm tra kết nối không thô ông tin Lý thuyết CSDL Sự dư thừa • Sự phụ thuộc thuộc tính gây g dư thừa Ví dụ: Điểm mơn học  Điểm trrung bình  xếp loại • Thuộc tính đa trị lược đồ ER  nhiều số liệu lược đồ quan hệ • Ví dụ: NHANVIEN(TENNV HONV, NHANVIEN(TENNV, HONV NS S DCHI GT LUONG BANGCAP) S,DCHI,GT,LUONG, TENNV HONV NS D DCHI GT LUONG BANGCAP Tung Nguyen 12/08/1955 638 NVC Q5 Nam 40000 Trung học Nhu Le 06/20/1951 291 HVH H QPN Nu 43000 Trung học Nhu Le 06/20/1951 291 HVH H QPN Nu 43000 Đại học Hung Nguyen 09/15/1962 Ba Ria VT Nam 38000 Thạc sỹ Lý thuyết CSDL Sự dư thừa (tt) • Sự dư thừa  dị thường – Thao tác sửa đổi: cập nhật tất giá trị liên quan – Thao tác xóa: người cuối g đơn vị  thông tin đơn vị – Thao tác chèn TENPB MAPB MaTP NG_NHAN NCHUC MANV TENNV HONV … Nghien cuu NV01 05/22/1 1988 NV01 Tung Nguyen … Dieu hanh NV02 01/01/1 1995 NV02 Hung Nguyen … Quan ly NV03 06/19/1 1981 NV03 Vinh Pham … Lý thuyết CSDL Sự dư thừa (tt) • Các Cá giá iá trị t ị khô không xác định đị h – Đặt thuộc tính Trưởng phịng vàào quan hệ NHANVIEN thay vào quan hệ PHONGBAN • Các giả – Sử dụng phép nối Lý thuyết CSDL Sự dư thừa (tt) • Một số quy tắc 1.Rõ ràng mặt ngữ nghĩa, tránnh phụ thuộc thuộc tính với T h ttrùng 2.Tránh ù lặp lặ vềề nội ội dung d g đảm đả bảo bả tránh t h đ dị thường th thao tác cập nhật liệu Tránh đặt thuộc tính có nhhiều giá trị Null • Khó thực phép nối kết k hợp Thiết kế lược đồ quan hệ s cho chúng nối với điều ề kiện ằ thuộc tính khố khố ngồi theo cách đảm bảo không sinhh “giả” => Lý thuyết chuẩn hóa: (dự ựa phụ thuộc hàm, hàm …)) tảng sở để thực việc v phân tích chuẩn hóa lược đồ quan hệ Lý thuyết CSDL Phụ thuộc hàm Ph thuộc Phụ th ộ hà hàm ttrong quan hệ r • Cho lược đồ quan hệ R X, Y làà tập R r quan hệ R m Y ký hiệu X → Y r với • Ta nói X xác định phụ thuộc hàm t t’ r mà t, t’ nhaau tập X chúng tập Y, tức  t, t’  r t.X = t’.X  t.Y = t’.Y • Ví dụ: – X={MaNV}, { }, Y={Hoten,NS} { , } thỏ ỏa mãn X → Y – X={Hoten}, Y={DC, GT} khơng g thỏa mãn X → Y • Phụ thuộc hàm r trường hợ ợp riêng phụ thuộc hàm R R Lý thuyết CSDL Phụ thuộc hàm(tt) • Phụ thuộc hàm quan hệ r Ví dụ: lược đồ quan hệ sau giả g thiết Hoten nhập vào khác từ Hoten suy diễn tất thuộc tính khác Nhưng ế thêm vào cóó H Hoten giống iố với ới bộộ cóó hì phụ h thuộc h ộ hàm hà khơng khơ cịn HoTen NgaySinh MaPB TenPB Nguyễn ễ Văn A 1/1/1980 / / PB01 Hành Nguyễn Văn B 20/2/1981 PB02 Tổng hợp Trần ầ C 13/6/1981 PB03 Dự án Trần ầ C Lý thuyết CSDL 10/2/1982 PB01 Hành Phụ thuộc hàm(tt) Bài tập: Cho bảng quan hệ r sau: A B C D x u x y y x z x z y y y y z w z Trong phụ thuộc hàm sau PT TH không thỏa mãn r A →B,A B A →C,B C B →A,C A C →D,D D D →C C D →A C,D A Lý thuyết CSDL 10 Tách kết nối không m thông tin(tt) R R1 R2 X Y Z X Y X Z x1 y1 z1 x1 y1 x1 z1 x2 y2 z2 x2 y2 x2 z2 x3 y2 z3 x3 y2 x3 z3 x4 y3 z4 x4 y3 x4 z4 R = R1  R2 • Nếu ế phép tách khơng có tính chất c ấ nối ố khơng ấ mát thơng tin nhận b phụ thêm (các giả) sau áp dụng phép chiếu nối tự nhiêên ên Nghĩa từ mát mát thông tin chưa giá trị Vì vậy, với tính chất ta nên gọi xác l tính chất nối khơng phụ thêm • Ta thấy Lý thuyết CSDL 74 Kiểm tra tính tách kếtt nối khơng thơng tin tin… • Đị Địnhh lý: lý Nếu Nế R R={R1, {R1 R2} tách tá h ủ R, R F tập tậ PTH R phép tách không thhông tin F khi: R1  R2 -> > R1-R R2 hoặ h ặc R1  R2 -> R2-R1 • Ví dụ: R(MaSV, MaMT, DieemThi) • R1 ((MaSV,, TenSV)) • R2 (MaSV, MaMT, DiemThi) • R1  R2 ={MaSV} • R1-R2={Hoten} Ta cóó R1  R2 -> R1-R T R2 nên nê phép tách tá h không khô ất Lý thuyết CSDL 75 thơng tin Kiểm tra tính tách kết nố ối khơng thơng tin Thuật tốn Chase • Input I t Sơ S đồ quan hệ: hệ R={A R {A1,A A2,…,A An} llược đồ quan hệ hệ F tập PTH; phép tách ρ= (R1, R2, , Rk ) • Output: Khẳng định phép tách h kết nối khơng hay khơng? Thuật tốn: - Xây dựng bảng • Xây dựng bảng gồm n cộtt m hàng, cột j tương ứng với thuộc tính Aj , hàng i tương ứng với Ri • Ở vị trí hàng i cột j, ta ký hiệu aj Aj thuộc Ri , Ngược lại ta ký hiệu bij • Ta có bảng T sau: Lý thuyết CSDL 76 Kiểm tra tính tách kết nố ối không thông tin… Bước lặp: Áp dụng PTH trongg F cho bảng vừa xây dựng: • Xét nhiều lần phụ thuộc hààm X  Y thuộc F không g xét ợ Với FTH F XY mà trongg bảngg có giá g trị giống tập X ta cho chúng tập Y với lưu ý ký ý hiệu aj chọn aj, ngược lại làm chúng trongg kí hiệu bij • Th Thuật ậ tốn dừng dừ bảng bả g cóó ộ dị dịng tồn ký tự a không xét dư ược - Kết luận: Nếu có dịng tồnn a phép tách kết nối khơng thơngg tin Ngược g lại pphép p tách t có thơngg tin Lý thuyết CSDL 77 Kiểm tra tính tách kết nố ối khơng thơng tin… Ví dụ: Cho R= {A , B, C, D, E, F}; R1 := {A , B, D, E} : {A , C, C D D, F } • R2 := • R3 := {B, C, E, F } F := {A → B, F → E} Lý thuyết CSDL 78 Kiểm tra tính tách kết nố ối khơng thơng tin… • Suy phép tách không làm m thông tin Lý thuyết CSDL 79 Kiểm tra tính tách kết nố ối khơng thơng tin… • • Ví dụ: F={A→B,C F={A→B C →D,D →D D →EG} R1={A,B,C,D}, R2={D,E,G} • A B C D E G R1 a1 a2 a3 a4 b15 b16 R2 b21 b22 b23 a4 a5 a6 Ta thấy bảng g thuộc tính D Sử dụng PTH D →EG ta có b15=a5 b16=a a6 Như dịng đầu bảng chứa tồn t ai, i nên ê phép tá tách h khô không g ất thông thô tin ti Lý thuyết CSDL 80 Kiểm tra tính tách kết nố ối khơng thơng tin… Ví dụ: • • • • • Cho lược đồ quan hệ R=ABCD DE Tách R thành lược đồ sau: R1 = AD, R2=AB, R3= BE, R4= CDE, R5= AE pp phụ thuộc hàm F=(AC,B ( BC,CD,DEC,CEA)) Tập Xác định phép tách có mấ ất thông tin hay không? Lý thuyết CSDL 81 Kiểm tra tính tách kết nố ối khơng thơng tin… F=(AC,BC,CD,DE C,CEA Lý thuyết CSDL 82 Tách quan hệ thành quan hệ BCNF với tính chất nối khơng thông tin Input: Lược đồ quan hệ R tập cá ác phụ thuộc hàm F thuộc tính R Đặt D := : {R} ; ong D BCNF, thực Khi có lược đồ quan hệ Q tro ệ vịng g lặp: ặp • Với lược đồ quan hệ Q D khơng BCNF tìm phụ thuộc hàm X→ Y Q vi phạm BCNF th hay Q D hai lược đồ quan hệ (Q-Y) (Q Y) (XUY) Y) Q trình lặp dừng khơng cịn quan hệ D vi phạm BCNF • n trên, tách quan hệ Q Mỗi lần vào vòng lặp thuật tốn khơng phải BCNF thành hai lược đồ qu uan hệ Kết thúc thuật toán, tất quan hệ D BCNF Lý thuyết CSDL 83 Tách quan hệ thành quan hệ BCNF với tính chất nối khơng g thơng g tin • Trong bước thuật toán n, cần ầ xác định xem lược đồ quan hệ Q có BCNF hay khơng g Một phương pháp để làm điều kiểm tra tra Với phụ thuộcc hàm X → Y Q, Q ta tính X+ Nếu X+ khơng chứa tất th huộc tính Q X → Y vi phạm p BCNF X khơng gp phải ộ siêu khóa Lý thuyết CSDL 84 Ví dụ • Xét lược đồ quan hệ R = { A, B, C, D, E, E F) Với phụ h th thuộc ộ hàm: hà A → BCDEF, BCDEF BC C → ADEF, ADEF B B→ F, F D D→ E E, D→ D B Lược đồ quan hệ có hai khóa A v BC • Ta T cóó B → F vii phạm h BCNF vìì B+ ≠ R nên ê B khơng khơ phải hải siêu iê khóa, khó R tách thành: R1(B,F) với phụ thuộc hàm B→ F, R2(A,B,C,D,E) với phụ thuộc hàm A→BCDE, A→BCDE BC→ →ADE D→E →ADE, D→E, D→B • Xét R2 : Do D→ E vi phạm BCNF ( D thuộc tính khơng khóa ), R2 tách tác thành: t : R21((D,E) , ) vớ với pphụụ tthuộc uộc hàm D → E,, R22((ABCD) C ) với vớ phụ thuộc hàm A → BCD, BC→ AD D, D→ B • Xét R22 : Do D → B vi phạm BCNF F (Dkhơng phải thuộc tính khóa), R22 tách thành: R221(D,B) , R222(A A,C,D) với phụ thuộc hàm A → CD (phụ thuộc hàm BC → AD bị mất) • Tóm lại, ta có phép tách D = {R1, R21, R221, R222} Lý thuyết CSDL 85 THẢO LUẬN Nội dung 1: Trả lời câu hỏi • Trình khái niệm phụ thuộc c hàm, Hệ suy diễn Amstrong? • Các khái niệm phụ thuộc h hàm bao đóng khóa? hàm, • Phân biệt dạng chuẩn? • Các cách kiểm tra tách kết nố ối có làm thơng tin? • Trình bày phương pháp chuẩn c hóa liệu? Lý thuyết CSDL 86 THẢO LUẬN Nội dung 2: Thảo luận theo nh hóm Thực hiệ Th chuẩn h ẩ hó hóa liệ ệ với ệu ới đề tài ài nhóm hó chọn h chương theo lý thuyyết dạng chuẩn 1, 2, Lý thuyết CSDL 87 Lý thuyết CSDL 88 ... (liên quan tới dư thừa bất thường cập nhật) • Chuẩn hóa liệu: q trình phân p tích lược đồ quan hệ dựa FD khóa h để đạt – Cực tiểu dư thừa – Cực tiểu phép cập nhậ ật bất thường Lý thuyết CSDL 48 Các... CSDL Sự dư thừa (tt) • Sự dư thừa  dị thường – Thao tác sửa đổi: cập nhật tất giá trị liên quan – Thao tác xóa: người cuối g đơn vị  thông tin đơn vị – Thao tác chèn TENPB MAPB MaTP NG_NHAN... chuẩn hố cung cấp – Một cấu hình thức để ph hân tích lược đồ quan hệ dựa khố v phụ thuộc hàm thuộc tính nó – Một loạt kiểm tra dạng chuẩn thực lược đồ quan hệ riêng rẽ sa ao cho sở liệu quan hệ chuẩn

Ngày đăng: 24/09/2020, 04:19

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan