1. Trang chủ
  2. » Kỹ Năng Mềm

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

8 213 0

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 8
Dung lượng 20,51 KB

Nội dung

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ính

Và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} , F

Ra: 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}

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

TỪ KHÓA LIÊN QUAN

w