BÀI TẬP TỔNG HỢP MÔN LÝ THUYẾT CƠ SỞ DỮ LIỆUCHƯƠNG 2: MÔ HÌNH THỰC THỂ LIÊN KẾT Câu 1.Quản lý cửa hàng Khảo sát hoạt động của một cửa hàng, ta thu được các thông tin sau: - Mỗi khách hàn
Trang 1BÀI TẬP TỔNG HỢP MÔN LÝ THUYẾT CƠ SỞ DỮ LIỆU
CHƯƠNG 2: MÔ HÌNH THỰC THỂ LIÊN KẾT
Câu 1.Quản lý cửa hàng
Khảo sát hoạt động của một cửa hàng, ta thu được các thông tin sau:
- Mỗi khách hàng thành viên được lưu trữ các thông tin về mã khách hàng , họ tên, địa chỉ, điện thoại, doanh số( là tổng trị giá các hoá đơn mà khách hàng đó đã mua) Mỗi khách hàng được phân biệt nhau bởi mã số khách hàng
- Mỗi nhân viên của của hàng đựơc quản lý các thông tin gồm mã nhân viên, họ tên, ngày sinh, điện thoại, lương Mỗi nhân viên được phân biệt nhau bởi mã số nhân viên
- Mỗi sản phẩm có mã sản phẩm, tên sản phẩm, đơn vị tính và giá của sản phẩm đó
- Mỗi lần khách hàng mua hàng sẽ có một hoá đơn Mỗi hoá đơn có các thông tin gồm số hoá đơn, ngày hoá đơn, tổng trị giá của hoá đơn đó Mỗi hoá đơn phải do nhân viên bán hàng của cửa hàng lập Mỗi hoá đơn có thể mua nhiều mặt hàng, được kê chi tiết trong bảng chi tiết hoá đơn trong đó có ghi rõ số lượng và thành tiền cụ thể của từng mặt hàng
Câu 2.Quản lý mượn sách tại thư viện:
- Sách của thư viện được phân chia theo thể loại để bạn đọc dễ dàng tra cứu MATL là mã
số của từng thể loại và dùng để phân biệt giữa các thể loại TENTL là tên gọi của thể loại -MASH dùng để phân biệt các quyển sách TENSH là tên (tựa) bằng tiếng Việt của sách
và NGUYEN_TAC là tên nguyên tác (tiếng Việt hoặc tiếng nước ngoài) TAC_GIA là tên tác giả (hay nhóm các tác giả) của sách Nếu sách có nhiều tập hay nhiều bản thì cũng xem như các đầu sách khác nhau và có mã số khác nhau MATL là mã thể loại của sách
- Mỗi độc giả chỉ có một THẺ thư viện (dùng để mượn sách) với mã số là MADG để phân biệt với các độc giả khác Các thuộc tính TENDG, DCHI là tên và địa chỉ của độc giả NGAYCAP là ngày cấp thẻ cho độc giả MASH là mã số của sách mượn Giả sử không có trường hợp mượn rồi trả lại cùng 1 quyển sách trong cùng 1 ngày Nếu sách mượn đọc tại chỗ thì thuộc tính TAI_CHO có giá trị True và NGAYMUON=NGAYTRA Nếu sách mượn về nhà thì thuộc tính TAI_CHO có giá trị False và NGAYTRA sẽ có giá trị trống cho đến khi sách được mang trả lại cho thư viện Mỗi độc giả chỉ được giữ tại nhà tối đa 3 quyển sách và mỗi quyển sách chỉ được giữ tại nhà tối đa 30 ngày (không cần lưu ý đến biện pháp xử lý nếu khách vi phạm nội qui)
- Độc giả phải đóng lệ phí hằng năm (NAM) để gia hạn thẻ mới được mượn sách NGAY_NOP, SOTIEN là ngày và số tiền nôp lệ phí của thẻ đó vào NAM
Trang 2Câu 4: Xây dựng mô hình thực thể liên kết cho CSDL quản lý đơn đặt hàng với các
thông tin sau:
CHƯƠNG 3: MÔ HÌNH CSDL QUAN HỆ
Câu 1: Chuyển đổi các mô hình thực thể liên kết sau sang mô hình cơ sở dữ liệu quan hệ:
Câu 2: Cho CSDL gồm hai quan hệ:
NCC(MSNCC, Ten, Diachi)
Trang 3MH(MSNCC, MSMH)
Hãy biểu diễn các yêu cầu sau đây bằng biểu thức đại số quan hệ:
a) Tìm mã số nhà cung cấp
Q1: ít nhất một mặt hàng
Q2: không cung cấp mặt hàng nào
Q3: cung cấp một mặt hàng có MSMH là 15
Q4: cung cấp ít nhất một mặt hàng, nhưng không có mặt hàng có mã số là 15 Q5: cung cấp tất cả các loại mặt hàng
b) Mặt hàng có mã số là 12, 13, 15 được cung cấp bởi các nhà cung cấp ở địa chỉ nào?
quan hệ:
SV(MaSV, Hoten, Gioitinh, Ngaysinh, MaLop, Hocbong)
LOP(MaLop, TenLop, Siso, MaKhoa)
KHOA(MaKhoa, TenKhoa, SoGV)
MON(MaMH, TenMH, Sotiet)
KQ(MaSV, MaMH, Diemthi)
Hãy thực hiện các câu hỏi sau bằng ngôn ngữ đại số quan hệ:
a) Lập danh sách sinh viên gồm MaSV, Hoten, Hocbong.
b) Lập bảng điểm cho tất cả sinh viên khoa "CNTT", bảng điểm gồm các cột: MaSV, Hoten, TenMH, Diemthi.
c) Lập danh sách sinh viên của lớp có mã lớp là "AT10" và có điểm thi môn
"CSDL" lớn hơn hoặc bằng 8.
d) Lập danh sách sinh viên thi hết tất cả các môn học, thông tin gồm: Mã SV, Tên SV
e) Lập danh sách sinh viên của lớp L01 thi lại môn CSDL
f) Lập danh sách sinh viên còn thiếu ít nhất một môn học chưa thi, thông tin gồm:
Mã SV, tên SV, tên môn thi.
g) Với mỗi lớp, thống kê số lượng sinh viên thi lại của môn Lý thuyết CSDL
h) Thống kê điểm cao nhất, thấp nhất môn CSDL của từng lớp.
Câu 4:
Giả sử lược đồ CSDL của bài toán quản lý thư viện gồm các lược đồ quan hệ sau:
+ Bandoc(MaBD,TenBD, Lop, Ngaycap)
+ Sach(MaSH, TenSH, Tacgia, NhaXB, NamXB)
+ Phieumuon(MaBD, MaSH, Ngaymuon, Trasach)
Trang 4Chú ý: Trasach: Đó trả sách hay chưa (Yes/No)
Hãy thực hiện những yêu cầu sau bằng ngôn ngữ đại số quan hệ:
a) Đưa ra danh sách những bạn đọc của lớp H được cấp thẻ vào ngày 2/12/2016.
b) Liệt kê những tên sách mà bạn đọc có mã số 'BD101' đó mượn của thư viện.
c) Hãy đưa ra danh sách những bạn đọc mượn sách quá hạn tính đến ngày 30/12/2015,
gồm các thông tin sau: Mã bạn đọc, tên bạn đọc, tên sách Biết rằng mỗi quyển sách bạn đọc chỉ được phép mượn không quá 5 ngày
d) Liệt kê những tên sách của tác giả 'Nguyễn Mạnh Tường' do Nhà xuất bản Đại học Quốc Gia xuất bản có trong thư viện
e) Cho biết danh sách bạn đọc hiện đang mượn 'Giáo trình CSDL' của thư viện, gồm các thông tin sau: mã bạn đọc, tên bạn đọc, lớp học
f) Hãy đưa ra danh sách những bạn đọc đã đăng ký thẻ bạn đọc, nhưng chưa lần nào mượn sách ở thư viện
g) Liệt kê danh sách mã bạn đọc của những sinh viên đã mượn tất cả các quyển sách h) Thống kê theo đầu sách số lượng các quyển sách đang có trong thư viện
i) Thống kê theo đầu sách số các quyển sách chưa được trả
Câu 5: Giả sử một cửa hàng tạp hoá quản lý bán hàng bằng các lược đồ quan hệ sau: + Hang(Mahang, Tenhang, Dongia, DVT)
+ Khach(MaKH, Hoten, Diachi, Tel)
+ Hoadon(SoHD, NgaylapHD, Ngayban, MaKH)
+ ChitietHD(SoHD, Mahang, SLBan)
Hãy thực hiện những yêu cầu sau bằng ngôn ngữ đại số quan hệ:
a) Hãy đưa ra danh sách các khách hàng ở "Hà Nội" đã mua hàng tại cửa hàng Thông tin gồm mã khách hàng, tên khách hàng và số điện thoại
b) Liệt kê tên hàng và số lượng bán của các mặt hàng có trong hoá đơn số 342
c) Cho biết danh sách những khách hàng đã đăng ký mua hàng tại cửa hàng, nhưng chưa mua hàng lần nào
d) Cho biết tên và số điện thoại của khách hàng có mã số ‘KH300’
e) Cho biết thông tin về khách hàng ở hoá đơn số 'HD011'
f) Lập danh sách các khách hàng đã mua mặt hàng 'Sam sung J7' vào ngày 10/1/2015 g) Cho biết thông tin về các mặt hàng có đơn giá trên 2.000.000
h) Cho biết danh sách tên và số điện thoại của các khách hàng đã mua hàng vào tháng 12
Trang 5i) Thống kê việc mua hàng trong năm 2016 (theo từng hoá đơn) của khách hàng có mã số KH101 Yêu cầu thông tin: Số hoá đơn, tên hàng, số lượng hàng đã bán được cho khách hàng này
CHƯƠNG 4: THIẾT KẾ CSDL
Câu 1: Cho lược đồ quan hệ Q(A,B,C,D,E) có r là quan hệ tương ứng Hãy cho biết phụ
thuộc hàm nào đúng trên quan hệ r
r (A B C D E) a1 b1 c1 d1 e1 a1 b2 c2 d2 d1 a2 b1 c3 d3 e1 a2 b1 c4 d3 e1 a3 b2 c5 d1 e1
Câu 2: Sử dụng hệ tiên đề Amstrong:
a) Cho F = {AB→E, AG→I, E→G, GI→H} Chứng minh rằng AB→GH
b) Cho F = {AB→C, B→D, CD→E, CE→GH, G→A } Chứng minh rằng AB→E và AB→G
c) Cho F = {XY→W, Y→Z, WZ→P, WP→QR, Q→X } Chứng minh rằng XY→P d) Cho F={ABD, ADC, CB, ABC} Sử dụng hệ tiên đề Amstrong chứng minh AB
C là dư thừa
Câu 3: Sử dụng bao đóng của thuộc tính để chứng minh các phần a,b,c trong câu 2 Câu 4: Chứng minh hai tập phụ thuộc hàm sau là tương đương
F={BA, ABCG, CB} và G = {ABCG, CABG, BC}
Câu 5: Tìm tất cả ciác khóa của lược đồ quan hệ R với các tập PTH như sau:
a R{A,B,C,D} và F = {AB→C, D→B, C→ABD}
b R{A,B,C,D,E,G} và F = {B→C, C→B, A→GD}
c R{A,B,H,G,Q,M,N,V,W} và F = {A→B, B→H, G→Q, V→W, W→V }
d R {A, B, C, D, E, F} và F = { AB C, C B , ABD E, F A}
Câu 6: Cho R{A,B,C,D} và F = {A→B, B→C, A→D, D→C} Tách thành D=
{R1,R2,R3} với R{A,B}, R2{AC}, R3{B,D}
a Phép tách D có bảo toàn các phụ thuộc hàm hay không?
b Phép tách D có là phép tách – kết nối không mất mát thông tin hay không?
Câu 7: Xác định dạng chuẩn cao nhất của lược đồ Tách các lược đồ về dạng cao hơn
(3NF và BCNF)
a Cho R{A,B,C,D,E} và F = {AB→CE, E→AB, C→D}
Trang 6b Cho R{A,B,C,D,E,G} và F = {AB→C, D→EG, C→A, BE→C, BC→D, CG→BD, ACD→B, CE→AG }
c Cho R{A,B,C,D,E,G,H} và F = {C→AB, D→E, B→G }
d Cho R{A,B,C,D} và F = {AB→C, C→ABD}
e. Cho R{A,B,C,D,E,G,H} và F = {A→BC, D→E, H→G }