Các bài tập chương 3: Thiết kế CSDL Quan hệ

8 1 0
  • Loading ...
    Loading ...
    Loading ...

Tài liệu liên quan

Thông tin tài liệu

Ngày đăng: 08/04/2021, 20:46

Ra: phép tách không mất mát thông tin bao gồm một tập các sơ đồ con ở BCNF với các phụ thuộc hàm là hình chiếu của F lên sơ đồ đó.. Giải thuật: B1..[r] (1)THIẾT KẾ CƠ SỞ DỮ LIỆU QUAN HỆ I Phụ thuộc hàm: Đ/N 1: Cho R(U) sơ đồ quan hệ, U tập thuộc tính X, Y  U X xác định hàm Y hay Y phụ thuộc hàm vào X với quan hệ r xác định R(U) với t1,t2  bất kỳ mà t1[X] = t2[X] t1[Y] = t2[Y] Ký hiệu: XY Đ/N 2:Bao đóng tập thuộc tínhX tập tất thuộc tính xác định hàm X thông qua tập F ký hiệu X  + X+= {A , X A suy diễn từ F} Thuật toán tính bao đóng của1 tập thuộctínhVào: Tập hữu hạn thuộc tính U, tập phụ thuộc hàm F U X URa: X+ Thuật toán B0 X0= X. Bi Tính Xitừ Xi-1 Nếu YZ suy diễn từ F, Y Xi-1, A Z , AXi-1 thì Xi= Xi-1A ngược lại, Xi= Xi-1 Nếu XiXi-1 thì thực Bi ngược lai, thực Bn Bn: X+= Xi Thuật toán tìm khốVào: U = {A1, A2, …, An} , FRa: khóa tối thiểu K xác định U FThuật toán B0 K0= U, n = |U| Bi Nếu (Ki-1\{Ai})U  Ki= Ki-1\{Ai} ngược lại, Ki= Ki-1 Nếu i<n (2)II Phép tách khơng mát thơng tin: Ví dụ: Quản lý thu tiền học phí, U={ MaSV, Hoten, Malop, TenLop, MaNganh, TenNganh, Hocphi, NgayQĐ, Hocky, Ngaythu} Tách U thành: U1= {MaNganh, TenNganh, Hocphi} U2={MaLop, TenLop, Manganh} U3={MaSV, Hoten, Malop} U4={Hocky,NgayQD} U5={MaSV, Ngaythu} Đ/N: Cho lược đồ quan hệ  =(U,F), phép tách  thành lược đồ {U1, U2, …, Uk} gọi phép tách không mát thông tin đ/v tập phụ thuộc hàm F với quan hệ r xác định U thỏa mãn F thì: r = r1*r2* … rk, r1=U1(r) 2 Thuật tốn kiểmtra tính khơng mát thơng tin: Bài toán Vào: U=A1A2 An, F, phép tách (U1, U2, , Uk) Ra: Phép tách  mát thơng tin hay khơng Thuật tốn B1 Thiết lập bảng k hàng, n cột Nếu Aj thuộc tính Ri điền aj vào (i,j) Nếu khơng điền bij Bi Xét f = XY F Nếu hàng t1, t2 thuộc bảng : t1[X] = t2[X]  thì t1[Y] = t2[Y], ưu tiên đồng giá trị a Lặp thay đổi giá trị bảng Bn Nếu bảng có hàng gồm kí hiệu a1, a2, … , an thì phép tách không mát thông tin ngược lại, phép tách khơng bảo tồn thơng tin Vd: Chứng minh (U1,U2,U3,U4,U5) phép tách khơng thất thơng tin Tìm phụ thuộc hàm: F=MaSVHoten, MaSV  Malop, MaLop  TenLop, MaNganh, (3)3 Chuẩn hóa lược đồ: Đ/N: Một sơ đồ quan hệ R(U) với tập phụ thuộc hàm F gọi dạng chuẩn BCNF (Boye-Codd) với XA   F+ AX (F+ tập phụ thuộc hàm suy diễn từ F) X Khóa Ví dụ R = {A,B,C} ; F = {ABC , CB} Khóa AB    R khơng phải BCNF CB, C khơng phải khóa    2 Thuật tốn tách khơng mát thơng tin BCNF Vào: Sơ đồ quan hệ R, tập phụ thuộc hàm F Ra: phép tách không mát thông tin bao gồm tập sơ đồ BCNF với phụ thuộc hàm hình chiếu F lên sơ đồ Giải thuật: B1 KQ =(U,F) B2.Với S KQ, S không BCNF, xét XA FS, với điều kiện X không chứa khóa S A X Thay S S1, S2 với S1=A X, S2 = S\A B3 Lặp (B2)cho đến S   KQ BCNF KQ gồm sơ đồ phép tách yêu cầu F=MaSVHoten, MaSV  Malop, MaLop  TenLop, MaNganh, MaNganhTenNganh, Hocky NgayQD, MaSV,Hocky  Ngaythu Khóa là: MaSV,Hocky (4)5 BÀI TẬP VỀ CHUẨN HÓA MỤC TIÊU CỦA BÀI NÀY GIÚP NGƯỜI HỌC  Phân biệt dạng chuẩn quan hệ  Xác định lược đồ dạng chuẩn  Vận dụng giải tập chuẩn hóa quan hệ (Đưa lược đồ quan hệ (quan hệ) từ dạng chuẩn thấp lên dạng chuẩn cao hơn)  Kiểm tra phép tách lược đồ aqua nhệ c ó thơng tin khơng Ví dụ: Cho lược đồ  = (U, F) với U=CRHTSG ( C : Course, T : Teacher, H Hour, R : Room, S : Student, G : Group) F ={CT , HR  C, CH  R, CS G, HS R} Nhận xét - Lược đồ có khố HS - Lược đồ chưa dạng BCNF - Ta thấy lược đồ  = (U, F) có phụ thuộc hàm CS G vi phạm điều kiện BCNF nên ta tách lược đồ thành lược U1 =CGS, U2 =CTHRS - Ta thấy lược đồ 2 = (U2, F2) có phụ thuộc hàm C T vi phạm điều kiện BCNF nên ta tách lược đồ thành lược U3 =CT, U4 =CHRS - Ta thấy lược đồ 4 = (U4, F4) có phụ thuộc hàm CH R vi phạm điều kiện BCNF nên ta tách lược đồ thành lược U5 =CHR, U6 =CHS  = (U, F) U1 =CSG F1={CSG} K=CS U2 =CTHRS F2={CT, HRC, CHR, HSR} K=HS U3 =CT F3={CT} K=C U4 =CHSR F4={ HRC, CHR, HSR} K=HS U5 =CHR F5={ HRC, HRC} K=HR, K=HC U6 =CHS F6={ HSC} (5)Như phép tách cuối ={ CSG, CT , CHR , CHS } III.MỘT SỐ LƯU Ý  Tầm quan trọng việc chuẩn hóa liệu  Phân biệt dạng chuẩn, phương pháp tách quan hệ dạng chuẩn thấp lên dạng chuẩn cao  Thuật toán kiểm tra phép tách có thơng tin khơng? B/ BÀI TẬP MẪU Bài số 1: Kiểm tra phép tách có thông tin hay không? Cho lược đồ quan hệ = (U, F) với U={A1, A2, A3, A4, A5} F={ A1 A2 A3 , A2 A4 A5 , A2 A3} ={ A1 A2 A4, A2 A3, A1 A4 A5} Hỏi phép tách  có kết nối không thông tin không? Hướng dẫn: Áp dụng thuật tốn kiểm tra phép tách có thông tin không, ta tiến hành bước Giải: Xây dựng bảng gồm dòng cột - Điền tín hiệu vào bảng A1 A2 A3 A4 A5 U1 a1 a2 b13 a4 b15 U2 b12 a2 a3 b24 b25 U3 a1 b32 b33 a4 a5 - Biến đổi bảng dựa vào tập phụ thuộc hàm F + Sử dụng phụ thuộc hàm A1 A2 A3 ta biến đổi bảng A1 A2 A3 A4 A5 U1 a1 a2 b13 a4 b15 (6)U3 a1 a2 b13 a4 a5 + Sử dụng phụ thuộc hàm A2 A4 A5 A1 A2 A3 A4 A5 U1 a1 a2 b13 a4 a5 U2 b12 a2 a3 b24 b25 U3 a1 a2 b13 b4 a5 + Sử dụng phụ thuộc hàm A2 A3 A1 A2 A3 A4 A5 U1 a1 a2 a3 a4 a5 U2 B12 a2 a3 b24 b25 U3 a1 a2 a3 a4 a5 Trong bảng có hàng cuối gồm tồn tín hiệu chính, phép tách  phép tách kết nối không thông tin C/ BÀI TẬP TỰ GIẢI Bài tập 1: Dùng kỹ thuật bảng kiểm tra phép tách sau có thơng tin khơng a) =(U, F) với U=ABCD, F={AB, ACD}, ={AB, ACD} b) =(U, F) với U=ABCDE, F={AC, BC, CD, DEC, CEA}, ={AD, AB, BE, CDE} c) Xác định giải thích dạng chuẩn cao lược đồ quan hệ =(U, F) với U=ABCD, F={AC, DB, CABD} Bài tập 2: Cho lược đồ quan hệ =(U, F) với U=ABCDEGH F={CDH, EB, DG, BHE, CHDG, CA } Hỏi phép tách =(ABCDE, BCH, CDEGH) có kết nối thông tin không Bài tập 3: (7)U=ABCD, F={DB, CA, BACD } Xác định dạng chuẩn cao lược đồ quan hệ Bài tập 4: Cho lược đồ quan hệ  =(U, F) với U=ABCD, F={CDB, AC, BACD } Xác định dạng chuẩn cao lược đồ quan hệ Bài tập 5: Cho =(u, F) với U=ABCDE F={AC, BC, AD, DEC, CEA} kiểm tra tính kết nối khơng thơng tin phép tách ={AD, AB, BE, CDE, AE } Bài tập 6: Cho =(u, F) với U=ABCDEF F={ABC, CB, ABDE, FA} kiểm tra tính kết nối khơng thơng tin phép tách ={BC, AC, ABDE, ABDF } Bài tập 7: Cho =(u, F) với U=ABCDEG F={DG, CA, CDE, AB} kiểm tra tính kết nối khơng thông tin phép tách ={DG, AC, SCE, AB } Bài tập 8: Cho =(u, F) với U=ABCDE F={AC, BC, CD, DEC, CEA} kiểm tra tính kết nối khơng thơng tin phép tách ={AC, CD, BE, BC, AE} Bài tập 9: Cho (=(U, F) với U=XYZW tập (8)Dạng chuẩn cao lược đồ gì? Bài tập 10: Cho (=(U, F) với U=ABCDEG tập phụ thuộc hàm F={ ABC, ACE, EGD, ABG } ={DEG, ABDEG } Phép tách có thơng tin khơng? Hãy chứng minh quan hệ có thuộc tính đề dạng chuẩn BCNF? Bài tập 11: Xét quan hệ R(ABCDE) tập phụ thuộc hàm F={ ABCE, EAB, CD } Hãy tìm dạng chuẩn cao lược đồ? Bài tập 12: Xét quan hệ R(ABCDEG) tập phụ thuộc hàm F={ AB, CDG , ACE, DG } - Hãy tìm khố lược đồ - Hãy tìm dạng chuẩn cao lược đồ Bài tập 13: Xét quan hệ R(ABCD) tập phụ thuộc hàm F={ ABD, ACBD, BC } Hãy tìm dạng chuẩn cao lược đồ Bài tập 14: Cho =(u, F) với U=ABCDEF F={ABC, CB, ABDE, FA}
- Xem thêm -

Xem thêm: Các bài tập chương 3: Thiết kế CSDL Quan hệ, Các bài tập chương 3: Thiết kế CSDL Quan hệ