1. Trang chủ
  2. » Công Nghệ Thông Tin

Bai tap co so du lieu

17 13 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 17
Dung lượng 336 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tìm tất cả các khóa của lược đồ.. Kiểm tra phép tách lược đồ trên thành các lược đồ trên thành hai lược đồ CSG, CTHRS... Tìm tất cả các khoá của lược đồ quan hệ.. Giả sử PHIEUDIEM được t

Trang 1

BÀI TẬP MÔN CƠ SỞ DỮ LIỆU

Bài 1 Cho sơ đồ quan hệ W=<U, F>

U=ABCDEIGH F={AB→G, AG →CI, BE→A, E→DH, C→AE}

1 Chứng minh AB→E

AB->G (gt)

AB->AG (tăng trưởng)

AG -> C (gt)

 AB->C (bắc cầu)

C->E (gt)

 AB->E (bắc cầu)

Kiểm tra E có phụ thuộc hàm đầy đủ vào AB hay không?

Từ CM trên ta có AB->E

Lại có:

(A)+ = A => E không phụ thuộc hàm A->E (B)+ = B => E không phụ thuộc hàm B->E

=> Vậy E là phụ thuộc hàm đầy đủ vào AB

2 Tính bao đóng của các tập thuộc tính: AB, AG, C

(AB)+

X0 = AB

X1 = ABG vì AB->G

X2 = ABGCI vì AG->CI

X3 = ABGCIE vì C->E

X4 = ABGCIEDH

vì E -> DH

=> (AB)+ = ABCDEIGH = U

(AG)+

X0 = AG X1 = AGCI vì AG->CI

X2 = AGCIE vì C->E

X3 = AGCIE vì C->E

X4 = AGCIEDH vì E->DH

=> (AB)+ = AGCIEDH

(C)+

X0 = C X1 = CAE vì C->AE

X2 = CAEDH vì E->DH

=> (C)+ = CAEDH

Trang 2

3 Tìm tất cả các khóa

F={AB→G, AG →CI, BE→A, E→DH, C→AE}

L = ABCEG; R = ACDEGHI

H = L/R = {B}

{ACEG}

4 Xác định lược đồ có ở dạng chuẩn 3NF hay không?Dạng chuẩn cao nhất? Giải thích?

- Khóa = {AB, BC, BE}

- Xét : E→DH

+ E không phải là siêu khóa và DH không phải là thuộc tính khóa => Không đạt 3NF

5 Kiểm tra phép tách lược đồ thành hai lược đồ R(ABCD) và R(EIGH) kết nối có bị mất thông tin hay không?

Ta có:

ABCD ∩ EIGH = Ø

ABCD – EIGH = Ø

 Phép tách bị mất thông tin

AB->G (1)

AG->CI (2)

BE→A (3)

C->AE (4)

E->DH (5)

 Phép tách bị mất thông tin

Trang 3

Bài 2 Cho sơ đồ quan hệ W=<U, F>

U=ABCDEI F={ A→B, AB→C, AC→D, CD→E, E→I}

1 Kiểm tra A→D hay không?

A→B (gt) A→ AB (tăng trưởng) AB→C (gt)

 A→C (bắc cầu) A→AC (tăng trưởng) AC→ D (gt)

 A→ D (bắc cầu) => đpcm

2 Tìm bao đóng của các tập thuộc tính A, AC, CE

(A)+

X0 = A

X1 = AB vì A->B

X2 = ABC vì AB->C

X3 = ABCD vì AC->D

X4 = ABCDE vì CD -> E

X5 = ABCDEI vì E->I

 (A)+ = ABCDEI = U

(AC)+

X0 = AC X1 = ACB vì A->B X2 = ACBD vì AC->D

X3 = ACBDE vì CD->E

X4 = ACBDEI vì E->I

 (AC)+ = ABCDEI = U

 (CE)+

X0 = CE X1 = CEI vì E->I

 (CE)+ = CEI

3 Xác định tất cả các khóa của sơ đồ

U=ABCDEI F={ A→B, AB→C, AC→D, CD→E, E→I}

L = ABCDE R = BCDEI

H = {A}

Ta thấy: (H)+ = ABCDEI = U => A là khóa của sơ đồ quan hệ

4 Kiểm tra sơ đồ đã ở dạng chuẩn 3NF hay chưa? Giải thích?

- Khóa = {A}

Xét E→I:

+ E không là siêu khóa và I không là thuộc tính khóa => không là dạng chuẩn 3NF

5 Kiểm tra phép tách {ABC, ACD, CDI,AEI}

Trang 4

A B C D E I

(1): A→B

(2): CD→E

(3): AB→C

(4): AC→D

Bài 3

W=<U =CTRHSG; F={C → T, HR → C, HT → R, CS → G, HS → R}>

HS -> R (gt)

HS -> HR (tăng trưởng)

HR -> C (gt)

 HS -> C (bắc cầu)

C -> T (gt)

 HS -> T (bắc cầu) => đpcm Cách 2:

Lấy một quan hệ R bất kỳ trên R(U) và R thỏa mãn các phụ thuộc F={C → T, HR → C, HT →

R, CS → G, HS → R} Cần chứng minh R cũng thỏa mãn phụ thuộc hàm HS → T

Trên R lấy 2 dòng t và t’ bất kỳ:

Giả sử: t.HS = t’.HS Cần chứng minh: t.T =t’.T Thật vậy, ta có:

t.HS = t’.HS và HS->R => t.R = t’.R t.R = t’.R và t.H = t’.H => t.HR = t’.HR t.HR = t’.HR và HR->C => t.C = t’.C t.C = t’.C và C-> T => t.T = t’.T => đpcm

Kiểm tra R có phụ thuộc hàm đầy đủ vào HT hay không?

(HT)+ = HTRC => HT->R Lại có: (H)+ = H => H ko-> R

(T)+ = T => T ko-> R

=> Vậy R phụ thuộc đầy đủ vào HT

Kiểm tra T có phụ thuộc bắc cầu vào HS hay không?

Ta có: (HS)+ = HSRCTG => HS->R

Trang 5

2 Tính bao đóng của các tập thuộc tính C, HR, HT

(C)+

X0 = C X1 = CT vì C->T

=> (C)+ = CT

(HR)+

X0 = HR X1 = HRC vì HR->C

X2 = HRCT vì C->T

=> (HR)+ = HRCT

(HT)+

X0 = HT X1 = HTR vì HT->R

X2 = HTRC vì HR->C

=>(HT)+ = HTRC

3 Tìm tất cả các khóa của lược đồ

W=<U =CTRHSG; F={C → T, HR → C, HT → R, CS → G, HS → R}>

L = CTRHS R = CTRG

H = L/R = HS

Vì (HS)+ = CTRGSG => HS là khóa của sơ đồ

4 Tìm dạng chuẩn cao nhất

- Khóa = {HS}

- Xét C → T: C không là siêu khóa => không là dạng BCNF

Và T không là thuộc tính khóa => không là 3NF

-5 Kiểm tra phép tách lược đồ trên thành các lược đồ trên thành hai lược đồ CSG, CTHRS

Ta có:

CSG giao CTHRS = CS -> CSG – CTHRS = G

 Thỏa mãn định lý

Bài 4 Cho lược đồ quan hệ R(U) và tập phụ thuộc hàm F

U={ABEGIH}

F={AB → E, AG → I, BE → I, E → G, GI → H}

1 CMR F|=AB → GH

AB->E (gt) (1)

E->G (gt) (2)

 AB->G (bắc cầu) (3)

AB -> AG (tăng trưởng) (4)

AG->I (gt) (5)

 AB->I (bắc cầu 4,5) (6)

(3 & 6) => AB -> GI (cộng vế phải) (7)

GI -> H (gt) (8)

 AB->H (bắc cầu 7, 8) (9)

Trang 6

(3 & 9) => AB -> GH (cộng vế phải)

2 CMR F|- AB → GH

Lấy một quan hệ R bất kỳ trên R(U) và R thỏa mãn các phụ thuộc hàm F={AB → E, AG → I,

BE → I, E → G, GI → H} Cần chứng minh R cũng thỏa mãn phụ thuộc hàm AB->G

Trên R lấy 2 dòng t và t’ bất kỳ:

Giả sử: t.AB = t’.AB Cần chứng minh: t.GH =t’.GH Thật vậy, ta có:

t.AB = t’.AB và AB->E => t.E = t’.E t.E = t’.E và E->G => t.G = t’.G (1) t.E = t’.E và t.B = t’.B => t.BE = t’.BE t.BE = t’.BE và BE-> I => t.I = t’.I (2) (1) và (2) => t.GI = t’.GI

Lại có: GI -> H => t.H = t’.H (3) (1) và (3) => t.GH = t’.GH => đpcm

3 Tính bao đóng các tập AB, AG,GE

F={AB → E, AG → I, BE → I, E → G, GI → H}

(AB)+

X0 = AB

X1 = ABE vì AB->E

X2 = ABEI vì BE->I

X3 = ABEIG vì E->G

X4 = ABEIGH vì GI -> H

=> (AB)+ = ABEIGH = U

(AG)+

X0 = AG X1 = AGI vì AG->I

X2 = AGIH vì GI->H

=> (AG)+ = AGIH

(GE)+

X0 = GE

=> (GE)+ = GE

4 Tìm các khóa của sơ đồ W=<R, F>

H = L/R = AB

Ta thấy : (H)+ = (AB)+ = U => AB là khóa của sơ đồ W

5 Kiểm tra sơ đồ có ở dạng chuẩn 3NF không? Dạng chuẩn cao nhất? Giải thích?

- Khóa = {AB}

- Xét E → G: E không là siêu khóa và G không là thuộc tính khóa

 Không là dạng 3NF

6 Kiểm tra phép tách

Bài 5 Cho lược đồ quan hệ R(U) và tập phụ thuộc hàm F

U={ABCDEGH}

Trang 7

F={AB → C, B → D, CD → E, CE → GH, G → A}

1 CMR F|=AB → E

AB->B (phản xạ) (1) B->D (gt) (2)

 AB->D (bắc cầu 1, 2) (3) AB->C (gt) (4)

 AB->CD (cộng vế phải 3,4) (5) CD->E (gt) (6)

 AB-> E (bắc cầu 5, 6)

2 CMR F|- AB → G

Lấy một quan hệ R bất kỳ trên R(U) và R thỏa mãn các phụ thuộc hàm F={AB → C, B → D,

CD → E, CE → GH, G → A} Cần chứng minh R cũng thỏa mãn phụ thuộc hàm AB->G

Trên R lấy 2 dòng t và t’ bất kỳ:

Giả sử: t.AB = t’.AB

Cần chứng minh: t.G =t’.G

Thật vậy, ta có:

t.AB = t’.AB và AB->C => t.C = t’.C (1)

t.AB = t’.AB và B -> D => t.D =t’.D (2)

(1) & (2) => t.CD = t’.CD

Lại có : CD -> E => t.E = t’.E (3)

(1)&(3) => t.CE = t’.CE

Lại có: CE -> G => t.G = t’.G => đpcm

3 Tìm các khóa của sơ đồ W

U={ABCDEGH}

F={AB → C, B → D, CD → E, CE → GH, G → A}

4 Tìm dạng chuẩn cao nhất của W

Trang 8

5 Kiểm tra phép tách lược đồ thành 3 lược đồ ABC, BCDE, CEGH kết nối có bị mất thông tin hay không?

(1): CE → GH

(2): G → A

=> phép tách không bị mất thông tin

Trang 9

Bài 6 Cho lược đồ quan hệ R(U) và tập phụ thuộc hàm F

U={ABCDEG}

F={AB → C, C → A, BC → D, ACD → B, D → EG, BE → C, CG → BD, CE → G}

1 CMR F|=AB → E

AB->C (gt) AB->CB (tăng trưởng) BC->D (gt)

 AB->D (bắc cầu) D->E (gt)

 AB->E (bắc cầu)

2 CMR F|- AB → E

Lấy một quan hệ R bất kỳ trên R(U) và R thỏa mãn các phụ thuộc hàm F={AB → C, C → A,

BC → D, ACD → B, D → EG, BE → C, CG → BD, CE → G} Cần chứng minh R cũng thỏa mãn phụ thuộc hàm AB->E

Trên R lấy 2 dòng t và t’ bất kỳ:

Giả sử: t.AB = t’.AB Cần chứng minh: t.E =t’.E Thật vậy, ta có:

t.AB = t’.AB và AB -> C => t.C = t’.C (1) t.B = t’.B và (1) => t.BC = t’.BC

t.BC = t’.BC và BC->D => t.D = t’.D t.D = t’.D và D->E = > t.E = t’.E => đpcm

3 Tìm các khóa của sơ đồ W=<R, F>

U={ABCDEG}

F={AB → C, C → A, BC → D, ACD → B, D → EG, BE → C, CG → BD, CE → G}

Bước 0: K= U={ABCDEG}

Bước lặp:

(K-A)+ = (BCDEG)+ =BCDEGA =U => loại A => K= BCDEG (K-B)+ = (CDEG)+ =CDEGAB = U => loại B => K= CDEG (K-C)+ = (DEG)+ =DEG ≠U => Không loại C => K= CDEG (K-D)+ = (CEG)+ =CEGABD = U => loại D => K= CEG (K-E)+ = (CG)+ = CGABDE = U => loại E => K= CG (K-G)+ = (C)+ = CA ≠U => Không loại G => K= CG Vậy CG là khóa của sơ đồ

4 Tìm dạng chuẩn cao nhất của W=<R, F>

5 Tính bao đóng AB, CE

Trang 10

F={AB → C, C → A, BC → D, ACD → B, D → EG, BE → C, CG → BD, CE → G}

(AB)+

X0 = AB

X1 = ABC vì AB->C

X2 = ABCD vì BC->D

X3 = ABCDEG vì D->EG

=> (AB)+ = ABCDEG = U

(CE)+

X0 = CE X1 = CEA vì C->A

X2 = CEAG vì CE->G

X3 = CEAGBD vì CG->BD

=> (CE)+ = ABCDEG = U

6 Kiểm tra phép tách lược đồ trên thành hai lược đồ ABEG và CDE kết nối có bị mất thông tin hay không?

Ta có:

ABEG ∩ CDE = E

ABEG – CDE = ABG

Từ tập F ta thấy: E ko -> ABG

Vậy phép tách bị mất thông tin

Bài 7 Cho lược đồ quan hệ R(U) và tập phụ thuộc hàm F

U= ABCDEI F={ A→E, AB→C, AC→D, CD→E, E→I}

1 Tính bao đóng của các tập thuộc tính AB

(AB)+ :

X0 = AB

X1 = ABE vì A->E

X2 = ABEC vì AB->C

X3 = ABECD vì AC->D

X4 = ABECDI vì E -> I

=> (AB)+ = ABECDI = U

2 Tìm các khóa của sơ đồ W

H = L/R = AB

Theo ý (1) thì (H)+ = (AB)+ = U => AB là khóa của sơ đồ W

3 Tìm dạng chuẩn cao nhất của W

- Khóa = {AB}

- Xét E→I : E không là siêu khóa => không phải BCNF

Trang 11

- Tập thuộc tính không khóa N = {C, D, E, I}

-4 Kiểm tra phép tách lược đồ thành các lược đồ AEI, ABC, CDE

Ta có:

A→E(1)

E→I (2)

AB→C (3)

AC→D (4)

CD→E (5)

 Phép tách bị mất thông tin

Bài 8 Cho sơ đồ W=<U =ABCDEFG, F={AB→C, C→B, ABD→E, F→A}>

1.Tính bao đóng của CF

(CF)+ :

X0 = CF

X1 = CFB vì C->B

X2 = CFBA vì F->A

=> (CF)+ = CFBA

2.Tìm các khoá của W

H = L/R = DF X = ABC

3.Kiểm tra W đã ở dạng chuẩn BCNF chưa? Dạng chuẩn cao nhất của W?Giải thích?

Bài 9 Cho lược đồ quan hệ: W=<U, F>

U={A, B, C, D, E, I} và F={AB→E, AC→I, BC →A, AC→B, CE→D}

1 Chứng minh F|= BC→E

Trang 12

BC->A (gt) (1)

BC->AB (tăng trưởng) (2)

AB->E (gt) (3)

 BC->E (bắc cầu 2,3)

2 Tìm tất cả các khoá của lược đồ quan hệ

H = L/R = CE X = AB

3 Tìm dạng chuẩn cao nhất của W

4 Kiểm tra phép tách: U1=ABE, U2=CDE, U3=ABI

F={AB→E, AC→I, BC →A, AC→B, CE→D}

AB→E (1)

AC→I (2)

BC →A (3)

AC→B (4)

CE→D (5)

 Phép tách bị mất thông tin

Bài 10 Cho sơ đồ

W=<U={MaSV, TenSV, MaMT, TenMon, ĐiemThi}; F={MaSV→TenSV; MaMT→TenMon; MaSV, MaMT→ĐiemThi}>

1 Tìm bao đóng [MaSV]

[MaSV] + :

Trang 13

X0 = MaSV X1 = MaSV, TenSV vì MaSV->TenSV

=> [MaSV] + = MaSV, TenSV

2 Tìm dạng chuẩn cao nhất của W

3 Tách thành các sơ đồ sau:

W1=<R1={MaSV, TenSV}; F1={MaSV→TenSV}>

W2=< R 2={MaMT, TenMon}; F2={MaMT→TenMon}>

W3=< R 3={MaSV, MaMT, DiemThi}; F3={MaSV, MaMT→ĐiemThi}> CMR

phép tách trên là phép tách kết nối không mất thông tin

Lấy quan hệ r là quan hệ trên lược đồ KETQUA(MaSV, TenSV, MaMT, TenMon, DiemThi), khi đó ta có:

r1 = KETQUA[MaSV, TenSV] = SINHVIEN ∈ W1

r2 = KETQUA[MaMT, TenMon] = MONTHI ∈ W2

r3 = KETQUA[MaSV, MaMT, DiemThi] = DIEM ∈ W3

Khi cần ta có thể khôi phục lại thông tin:

KETQUA = SINHVIEN |><|MONTHI|><|DIEM

Trang 14

Bài 11 Cho lược đồ quan hệ PHIEUDIEM(MaLopMH, MaMH, TenMH, SoTC, GV, NgayThi,

MaSV, TenSV, DiemThi) và tập phụ thuộc hàm trên lược đồ:

F={[MaLopMH]→[MaMH, GV, NgayThi]; [MaMH]→[TenMH, SoTC] ; [MaSV]→[TenSV] [MaLopMH, MaSV]→[DiemThi]}

1 Tìm bao đóng [MaLopMH], [MaSV, MaLopMH]

X0 = MaLopMH

X1 = [MaLopMH, MaMH, GV, NgayThi] vì [MaLopMH]→[MaMH, GV, NgayThi]

X2 = [MaLopMH, MaMH, GV, NgayThi, TenMH, SoTC] vì [MaMH]→[TenMH, SoTC]

=> [MaLopMH]+ = [MaLopMH, MaMH, GV, NgayThi, TenMH, SoTC]

2 Giả sử PHIEUDIEM được tách làm 2 lược đồ quan hệ

+ MONHOC(MaMH, TenMH, SoTC)

+ PD(MaLopMH, MaMH, GV, NgayThi, MaSV, TenSV, DiemThi)

Kiểm tra phép tách trên kết nối có bị mất thông tin hay không?

Ta có:

MONHOC ∩ PD = MaMH

MONHOC – PD = TenMH, SoTC

Từ tập F ta thấy [MaMH]→[TenMH, SoTC] => Phép tách không bị mất thông tin

3 Kiểm tra các sơ đồ quan hệ

+ MONHOC=<U={MaMH, TenMH, SoTC}, F={[MaMH]→[ TenMH, SoTC] }>

+ PD=<U={ MaLopMH, MaMH, GV, NgayThi, MaSV, TenSV, DiemThi }, F={[MaLopMH]→[MaMH, GV, NgayThi]; [MaLopMH, MaSV]→[DiemThi];

[MaSV]→[TenSV]}> đã

ở dạng chuẩn 3NF chưa?

Bài 12 Cho bảng KETQUA(MaSV, Hoten, NgaySinh, MaLop, D1, D2, D3) gồm các trường tương

ứng mã số sinh viên, họ và tên, ngày sinh, mã lớp, Điểm chuyên cần, điểm thường xuyên và điểm thi

và bộ dữ liệu sau:

Mã số SV Họ và tên Ngày sinh

Lớp khóa học

Đ1 Đ2 Đ3

09150021 Vũ Tuấn Anh 3/3/1991 TH8B 10 8

09120766 Nguyễn Tùng Bách 11/22/1990 TH9B 0 0

09150028 Trần Xuân Bách 6/28/1991 TH8A 9 9

Trang 15

09150042 Lê Văn Chiến 1/1/1991 TH8A 7 3

1 Viết câu lệnh thực hiện nhập dữ liệu các cột mã số sinh viên, họ và tên, ngày sinh, lớp, điểm chuyên cần, điểm thường xuyên vào bảng KETQUA

2 Viết câu lệnh sửa dữ liệu cột Đ3 cho các sinh viên có mã số ‘09150021’ thành 8 và ‘09150028’ thành 7

3 Viết kết quả của các câu lệnh sau:

a Select MaSV, Hoten, NgaySinh, D1, D2 From KETQUA Where MaLop=’TH8A’

b Select MaSV, Hoten, NgaySinh, MaLop Frm KETQUA Where Hoten like ‘%’+’Bách’

4 Thực hiện lấy kết quả học tập của sinh viên lớp TH9A

5 Thực hiện truy vấn tính điểm tổng kết môn học cho sinh viên biết DiemThi=D1*10%+D2*20% + D3*70%

Bài 13 Cho bảng HOCSINH(Mahs, Hodem, Ten, NgSinh, MaLop, GT) và bảng dữ liệu hình dưới.

Thực hiện các yêu cầu sau:

1 Chèn thêm các bản ghi từ 1-5 vào trong bảng HOCSINH

2 Thực hiện sửa đổi ngày sinh (NgSinh) của học sinh có mã là ‘HS080001’ thành ‘5/8/1987’

3 Thực hiện chuyển lớp cho học sinh lớp ‘10A01’ thành lớp ‘11A01’

4 Với bộ dữ liệu cho ở hình dưới viết kết quả của các lệnh truy vấn sau:

a Select Mahs, Hodem, Ten, NgSinh From HOCSINH Where MaLop=’12A01’

b Select Mahs, Hodem+’ ‘+ Ten As Hoten, NgSinh From HOCSINH Where

MaLop=’12A01’

c Select Mahs, Hodem+’ ‘+ Ten As Hoten, NgSinh From HOCSINH where

MaLop=’12A01’ and GT=’Nam’

d Select MaLop, Count(Mahs) As Siso From HOCSINH Group By MaLop Order By Siso

Trang 16

5 Lấy ra danh sách học sinh lớp có mã là ‘12C01’

6 Đưa ra danh sách các học sinh nữ

Bài 14 Cho các bảng:

PHONE(phone_id, phonename, price, type_id): Bảng Điện thoại gồm các trường tương ứng mã điện thoại, tên điện thoại, giá và mã kiểu điện thoại

TYPE(type_id, typename): Bảng Kiểu điện thoại gồm các trường tương ứng: mã kiểu điện thoại, tên kiểu điện thoại

ORDER_DETAILS(order_id, phone_id, amount): Bảng Chi tiết hóa đơn gồm các trường tương ứng mã hóa đơn, mã điện thoại, số lượng

Thực hiện các yêu cầu sau:

1 Chèn thêm các bản ghi vào 3 bảng trên

2 Thực hiện giảm giá 10% đối với tất cả các sản phẩm thuộc kiểu ‘11’

3 Xóa các sản phẩm có mã là 5,7, 9

4 Với bộ dữ liệu dưới, viết kết quả của các câu truy vấn sau:

a a.Select phone_id, phonename, price from PHONE Where type_id =8

b a.Select phone_id, phonename, price from PHONE Where price >=4000000

c b.Select p.phone_id, p.phonename, p.price, t.type_id From PHONE p INNER JOIN TYPE t on p.type_id = t.type_id

d Select type_id, count(phone_id) as amount from PHONE group by type_id

Ngày đăng: 16/02/2022, 21:08

TỪ KHÓA LIÊN QUAN

w