Tải bản đầy đủ (.doc) (21 trang)

Đề môn: Cơ Sở Dữ Liệu (CNTT)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (129.33 KB, 21 trang )

LOẠI 1:
Câu 1
Phát biểu hệ tiên đề Armstrong cho phụ thuộc hàm. Chứng minh tính đúng đắn của hệ tiên
đề Armstrong.
Câu 2
Cho R(U) là một lược đồ quan hệ, với U = {A 1, A2, …, An} là tập các thuộc tính, F là tập
các phụ thuộc hàm trên R và X, Y ⊆ U. Chứng minh rằng X → Y được suy diễn logic từ F nhờ
hệ tiên đề Armstrong khi và chỉ khi Y là tập con của bao đóng của X đối với F.
Câu 3
Trình bày thuật toán tìm một khóa của lược đồ quan hệ R(U, F). Áp dụng thuật toán vừa
trình bày để tìm một khóa của lược đồ quan hệ R(U, F), với U = ABCDEGH và F={AB→C,
B→D, CD→E, CE→GH, G→A}.
Câu 4
Định nghĩa dạng chuẩn 3 và dạng chuẩn Boyce-Codd. Cho ví dụ một lược đồ thỏa mãn
dạng chuẩn 3 nhưng không thỏa mãn dạng chuẩn Boyce-Codd.
Câu 5
Phát biểu định nghĩa phụ thuộc hàm đầy đủ. Cho ví dụ.
Câu 6
Hệ cơ sở dữ liệu là gì? Những ưu điểm chính của một hệ cơ sở dữ liệu?
Câu 7
Phát biểu định nghĩa phụ thuộc hàm. Cho ví dụ.
Câu 8
Nêu định nghĩa quan hệ. Các tính chất đặc trưng của một quan hệ.
Câu 9
Trình bày khái niệm phép tách - kết nối không mất thông tin cho một lược đồ quan hệ.
Cho biết ý nghĩa của phép tách - kết nối không mất thông tin đối với việc thiết kế cơ sở dữ liệu.
Câu 10
Trình bày khái niệm khóa, siêu khóa, khóa ngoài của một lược đồ quan hệ. Cho ví dụ
thực tế để minh họa.
Câu 11
Phân biệt khái niệm lược đồ và quan hệ trong mô hình quan hệ.


Câu 12
Trình bày khái niệm bao đóng của một tập thuộc tính đối với một tập các phụ thuộc hàm.
Việc tính bao đóng của một tập thuộc tính đối với một tập phụ thuộc hàm có thể được sử dụng để
giải quyết những vấn đề gì trong lí thuyết thiết kế cơ sở dữ liệu quan hệ?
Câu 13


Trình bày khái niệm hệ quản trị cơ sở dữ liệu. Trình bày tóm tắt các chức năng của hệ
quản trị cơ sở dữ liệu.
Câu 14
Hãy nêu mục tiêu của việc thiết kế cơ sở dữ liệu (ở mức khái niệm), giải thích và minh
họa.
Câu 15
Trình bày 3 mức mô tả dữ liệu (mức vật lí, mức logic, mức ngoài) của kiến trúc một hệ
Cơ sở dữ liệu theo chuẩn ANSI-SPARC. Nêu ý nghĩa của việc chia thành 3 mức như vậy.


LOẠI 2:
Câu 1: Cho lược đồ quan hệ R(U, F), với U=ABCDEGH và tập phụ thuộc hàm F như sau:
F = {B → A, DA → CE, D → H, GH → C, AC → D}
Tìm phủ tối thiểu của F.
Câu 2: Cho lược đồ quan hệ R(U, F), với U=ABCDEGHK và tập phụ thuộc hàm F như sau:
F ={C → AD, E → BH, B → K, CE → G}
Tìm phủ tối thiểu của F.
Câu 3: Cho lược đồ quan hệ R(U, F), với U=ABCDEG và tập phụ thuộc hàm F như sau:
F = {A→C, AB→C, C→DG, CD→G, EC→AB, EG→C}
Tìm phủ tối thiểu của F.
Câu 4: Cho lược đồ quan hệ R(U, F), với U=ABCD và tập phụ thuộc hàm F như sau:
F={A→BC, B →C, AB →D}
Tìm phủ tối thiểu của F.

Câu 5: Cho lược đồ quan hệ R(U, F), với U=ACDEH và tập phụ thuộc hàm F như sau:
F = { A →C, AC→D, E→AD, E→H}
Cho biết tập phụ thuộc hàm G ={A →CD, E→AH} có tương đương với tập phụ thuộc hàm
F hay không? Tại sao?
Câu 6: Cho lược đồ quan hệ R(U, F), với U=ABCDE và tập phụ thuộc hàm F như sau:
F = {AB →DE, E → AD, D → C}
Cho biết tập phụ thuộc hàm G = {AB → E, E → A, D → C} có tương đương với tập phụ
thuộc hàm F hay không? Tại sao?
Câu 7: Cho lược đồ quan hệ R(U, F), với U=ABCDEGH và tập phụ thuộc hàm F như sau:
F={AB→C, B→D, CD→E, CE→GH, G→A}
a. Chứng minh rằng AB → E và AB → G suy diễn được từ F dựa vào hệ tiên đề Armstrong.
b. Tìm bao đóng của tập thuộc tính X= {BC}.
c. Cho biết X có phải là khóa của lược đồ quan hệ R hay không? Tại sao?
Câu 8: Cho lược đồ quan hệ R(U, F), với U=ABCGHI và tập phụ thuộc hàm F như sau:
F={A → B, A → C, CG → H, CG → I, B → H}
a. Tính bao đóng của tập thuộc tính X={AG}
b. Cho biết X có phải là khóa của lược đồ quan hệ R hay không? Tại sao?
c. Kiểm tra xem những phụ thuộc hàm B → C, A → H có thuộc F+ hay không?
Câu 9: Cho lược đồ quan hệ R(U, F), với U=ABCDEGHK và tập phụ thuộc hàm F như sau:
F ={C → AD, E → BH, B → K, CE → G}


a. Tìm bao đóng của tập thuộc tính X= {BC}.
b. Cho biết X có phải là khóa của lược đồ quan hệ R hay không? Tại sao?
c. Kiểm tra xem các phụ thuộc hàm E → K, E → G có thuộc F+ hay không?
Câu 10: Cho lược đồ quan hệ R(U, F), với U=ABCDEGH và tập phụ thuộc hàm F như sau:
F = { A → BG, D → EG, GB → HA, D → BA, B → HG }
a. Tính (AE)+, (BDG)+.
b. Xác định xem các phụ thuộc hàm sau, phụ thuộc hàm nào được suy dẫn logic từ F.
+ EG → BD.

+ D → GH.
Câu 11: Cho lược đồ quan hệ R(U, F), với U=ABCDEGH và tập phụ thuộc hàm F như sau:
F = { A → BG, D → EG, GB → HA, D → BA, B → HG }
a. Hãy tìm một khóa của lược đồ quan hệ R cho trên.
b. Hãy chứng minh rằng tập phụ thuộc hàm K = { A → B, D → EBHG, B → H, BG → HA }
không tương đương với tập phụ thuộc hàm F cho trên.
Câu 12: Cho lược đồ quan hệ R(U, F), với U=ABCDEFG và tập phụ thuộc hàm F như sau:
F = {A→ B, D→ F, BF → E, EF→ G, A→ C, BC → D}
a. Chứng minh AC → BF được suy dẫn logic từ F dựa vào hệ tiên đề Armstrong.
b. Hãy chứng minh rằng tập phụ thuộc hàm K = {A → B, D → F, BC → E, A→ C, C → G, AC
→ D} không tương đương với tập phụ thuộc hàm F cho trên.
Câu 13: Cho lược đồ quan hệ R(U, F), với U=ABEIGH và tập phụ thuộc hàm F như sau:
F = {AB→ E, AG → I, E → G, GI → H, IH → A}
a. Hãy tính (EA)+, (BIG)+.
b. Cho biết các phụ thuộc hàm sau đây có thuộc F+ hay không?
+ AB → GH.
+ IAG → E.
Câu 14: Cho lược đồ quan hệ R(U, F), với U=ABCDEG và tập phụ thuộc hàm F như sau:
F= {AB → C, D → EG, BE → C, BC → D, CG → BD, CE → G}.
a. Tính (AB)+, (DEG)+.
b. Chứng minh AB → CG suy dẫn được từ F dựa vào hệ tiên đề Armstrong.
Câu 15: Cho lược đồ quan hệ R(U, F), với U=ABCDEKHG và tập phụ thuộc hàm F như sau:
F ={AB → C, B → DE, CD → CK, CE → GH, G → AC}.
a. Hãy tính (BC)+, (GE)+.
b. Dùng hệ tiên đề Armstrong để chứng minh rằng BC → AKH suy dẫn được từ F.


LOẠI 3:
Câu 1: Cho cơ sở dữ liệu quản lý thư viện gồm các quan hệ sau:
SACH(Masach, Tensach, Tacgia)

DOCGIA(Sothe, Hoten, Diachi, Coquan)
MUON(Sothe, Masach, Ngaymuon, Soluong)
Trong đó:
Masach: Mã sách; Tensach: Tên sách; Tacgia: Tác giả;
Sothe: Số thẻ; Hoten: Họ tên; Diachi: Địa chỉ; Coquan: Cơ quan;
Ngaymuon: Ngày mượn; Soluong: Số lượng;
1. Hãy biểu diễn các yêu cầu sau bằng ngôn ngữ đại số quan hệ và ngôn ngữ SQL:
a. Cho biết họ tên các độc giả đã mượn sách của tác giả X.
b. Cho biết tên các quyển sách đã có người mượn.
2. Hãy tối ưu hóa biểu thức sau:
ΠTensach (σF (SACH x MUON))
Trong đó: F = SACH.Masach = MUON.Masach ^
MUON.Ngaymuon < 5/5/2010

Câu 2: Cho cơ sở dữ liệu quản lý thư viện gồm các quan hệ sau:
SACH(Masach, Tensach, Tacgia)
DOCGIA(Sothe, Hoten, Diachi, Coquan)
MUON(Sothe, Masach, Ngaymuon, Soluong)
Trong đó:
Masach: Mã sách; Tensach: Tên sách; Tacgia: Tác giả;
Sothe: Số thẻ; Hoten: Họ tên; Diachi: Địa chỉ; Coquan: Cơ quan;
Ngaymuon: Ngày mượn; Soluong: Số lượng;
1. Hãy biểu diễn các yêu cầu sau bằng ngôn ngữ đại số quan hệ và ngôn ngữ SQL:
a. Cho biết họ tên các độc giả đã mượn sách “Cấu trúc dữ liệu”.
b. Cho biết tên các quyển sách chưa có người mượn.
2. Hãy tối ưu hóa biểu thức sau:
ΠHoten (σF (MUON x DOCGIA X SACH))
Trong đó: F = DOCGIA.Sothe = MUON.Sothe

^


SACH.Masach = MUON.Masach ^


SACH.Tacgia = ‘Quách Tuấn Ngọc’ ^
DOCGIA.Diachi = ‘Hà Nội’ ^
MUON.Soluong > 5

Câu 3: Cho cơ sở dữ liệu quản lý vật tư gồm các quan hệ sau:
VATTU(Mavattu, Tenvattu, Loai, NuocSX)
NHACUNGCAP(MaNCC, TenNCC, Diachi, Dienthoai)
CUNGCAP(MaNCC, Mavattu, Soluong, Gia)
Trong đó:
Mavattu: Mã vật tư; Tenvattu: Tên vật tư; Loai: Loại vật tư; NuocSX: Nước sản xuất;
MaNCC: Mã nhà cung cấp; TenNCC: Tên nhà cung cấp; Diachi: Địa chỉ nhà cung cấp;
Dienthoai: Số điện thoại của nhà cung cấp; Soluong: Số lượng; Gia: Giá;
1. Hãy biểu diễn các yêu cầu sau bằng ngôn ngữ đại số quan hệ và ngôn ngữ SQL:
a. Cho biết tên các loại vật tư mà nhà cung cấp có tên là X đã cung cấp.
b. Cho biết tên các nhà cung cấp đã cung cấp vật tư có tên là Y với giá nhỏ hơn 500000.
2. Hãy tối ưu hóa biểu thức sau:
ΠTenNCC (σF (NHACUNGCAP x CUNGCAP x VATTU))
Trong đó: F = NHACUNGCAP.MaNCC = CUNGCAP.MaNCC ^
VATTU.Mavattu = CUNGCAP.Mavattu ^
VATTU.Tenvattu = ‘A’ ^
NHACUNGCAP.Diachi = ‘Hải Phòng’ ^
CUNGCAP.Soluong > 100.

Câu 4:Xét một cơ sở dữ liệu của một trường đại học mở gồm 3 quan hệ sau đây:
KHOA (Makhoa, Tenkhoa, Diachi, Dienthoai)
LOP(Malop, Tenlop, Makhoa)

SINHVIEN(MaSV, Malop, Hoten, Ngaysinh, Xeploai)
Trong đó:
Makhoa: Mã khoa; Tenkhoa: Tên khoa; Diachi: Địa chỉ;
Dienthoai: Số điện thoại; Malop: Mã lớp; Tenlop: Tên lớp;
Hoten: Họ tên sinh viên; Ngaysinh: Ngày sinh; Xeploai: Xếp loại;
1. Hãy biểu diễn các yêu cầu sau bằng ngôn ngữ đại số quan hệ và ngôn ngữ SQL:


a. Cho biết đánh giá xếp loại của sinh viên có tên là "Nguyễn An", biết rằng sinh viên này học
một lớp nào đó thuộc khoa “Công nghệ thông tin”.
b. Cho biết tên khoa có sinh viên xếp loại “Xuất sắc”.
2. Hãy tối ưu hóa biểu thức sau:
ΠHoten (σF (SINHVIEN x LOP x KHOA))
Trong đó: F = SINHVIEN.Malop = LOP.Malop ^
LOP.Makhoa = KHOA.Makhoa ^
SINHVIEN.Xeploai = ‘Trung bình’ ^
KHOA.Tenkhoa = ‘Ngữ Văn’.

Câu 5: Xét cơ sở dữ liệu quản lý mạng cáp gồm các quan hệ sau:
TUYEN(Matuyen, Tentuyen, Dodaituyen)
CAP(Macap, Tencap, Gia, NuocSX)
LAPDAT(Macap, Matuyen, Soluong, Ngaylapdat)
Trong đó:
Matuyen: Mã tuyến; Tentuyen: Tên tuyến; Dodaituyen: Độ dài tuyến;
Macap: Mã cáp; Tencap: Tên cáp; Gia: Giá; NuocSX: Nước sản xuất;
Soluong: Số lượng; Ngaylapdat: Ngày lắp đặt;
1. Hãy biểu diễn các yêu cầu sau bằng ngôn ngữ đại số quan hệ và ngôn ngữ SQL:
a. Cho biết thông tin về các tuyến cáp có độ dài trên 50 km và lắp đặt các loại cáp do Việt Nam
sản xuất.
b. Cho biết thông tin về các loại cáp do Việt Nam sản xuất được lắp đặt trên các tuyến “Hà Nội –

Hải Phòng” và “Hà Nội – Quảng Ninh”.
2. Hãy tối ưu hóa biểu thức sau:
ΠTentuyen (σF (CAP x LAPDAT x TUYEN))
Trong đó: F = TUYEN.Matuyen = LAPDAT.Matuyen ^
LAPDAT.Macap = CAP.Macap ^
CAP.NuocSX = ‘Nhật Bản’ ^
LAPDAT.Soluong > 30.

Câu 6: Xét cơ sở dữ liệu của một công ty cung ứng sản phẩm gồm 3 quan hệ sau:
SANPHAM (MaSP, TenSP, Donvitinh, Gia)
NHACC (MaNCC, Ten_NCC, DC_NCC, Dienthoai)


CUNGCAP (MaNCC, MaSP, Soluong)
Trong đó:
MaSP: Mã sản phẩm; TenSP: Tên sản phẩm; Donvitinh: Đơn vị tính; Gia: Giá;
MaNCC: Mã nhà cung cấp; Ten_NCC: Tên nhà cung cấp; Soluong: Số lượng;
DC_NCC: Địa chỉ nhà cung cấp; Dienthoai: Số điện thoại của nhà cung cấp;
1. Hãy biểu diễn các yêu cầu sau bằng ngôn ngữ SQL:
a. Cho biết tên các nhà cung cấp đã cung cấp các sản phẩm với số lượng lớn hơn 50.
b. Cho biết tên các sản phẩm được cung cấp bởi nhà cung cấp có mã là HP.
c. Xóa đi những nhà cung cấp chưa cung cấp sản phẩm nào.
d. Thay đổi giá của sản phẩm “Sữa chua Mộc Châu” thành 20000.
2. Tối ưu hóa biểu thức sau:
ΠTenSP (σF (NHACC x CUNGCAP x SANPHAM))
Trong đó: F = NHACC.MaNCC = CUNGCAP.MaNCC ^
CUNGCAP.MaSP = SANPHAM.MaSP ^
NHACC.Ten_NCC = ‘Kinh Đô’.

Câu 7: Xét cơ sở dữ liệu của một công ty cung ứng sản phẩm gồm 3 quan hệ sau:

SANPHAM (MaSP, TenSP, Donvitinh, Gia)
NHACC (MaNCC, Ten_NCC, DC_NCC, Dienthoai)
CUNGCAP (MaNCC, MaSP, Soluong)
Trong đó:
MaSP: Mã sản phẩm; TenSP: Tên sản phẩm; Donvitinh: Đơn vị tính; Gia: Giá;
MaNCC: Mã nhà cung cấp; Ten_NCC: Tên nhà cung cấp; Soluong: Số lượng;
DC_NCC: Địa chỉ nhà cung cấp; Dienthoai: Số điện thoại của nhà cung cấp;
1. Hãy biểu diễn các yêu cầu sau bằng ngôn ngữ đại số quan hệ và ngôn ngữ SQL:
a. Tìm tên các sản phẩm do nhà cung cấp có tên“Hải Hà” đã cung cấp.
b. Cho biết tổng số lượng sản phẩm mà mỗi nhà cung cấp đã cung cấp. Thông tin hiển thị gồm 2
cột: Mã nhà cung cấp (MaNCC) và tổng số lượng đã cung cấp (TongSL).
2. Tối ưu hóa biểu thức sau:
ΠTen_NCC (σF (SANPHAM x CUNGCAP x NHACC ))
Trong đó: F = NHACC.MaNCC = CUNGCAP.MaNCC ^
CUNGCAP.MaSP = SANPHAM.MaSP ^


NHACC.DC_NCC = ‘Hà Nội’ ^
SANPHAM.TenSP= ‘Sữa chua Mộc Châu’ ^
CUNGCAP.Soluong > 50.
Câu 8: Cho cơ sở dữ liệu quản lý đặt mua báo gồm các quan hệ sau:
BAO (Matobao, Tenbao, Diachitoasoan)
DOCGIA(MaDG, TenDG, Ngaysinh, Gioitinh, Diachi)
DATMUA(MaDG, Matobao, Quy, Nam, Soluong, Dongia, Thanhtien)
Trong đó:
Matobao: Mã tờ báo; Tenbao: Tên báo; Diachitoasoan: Địa chỉ tòa soạn;
MaDG: Mã độc giả; TenDG: Tên độc giả; Ngaysinh: Ngày sinh; Gioitinh: Giới tính;
Diachi: Địa chỉ; Quy: Quý; Nam: Năm;
Soluong: Số lượng; Dongia: Đơn giá; Thanhtien: Thành tiền;
1. Hãy biểu diễn các yêu cầu sau bằng ngôn ngữ SQL:

a. Cho biết thông tin về các độc giả đã đặt mua báo ‘Tuổi trẻ của quý 1 năm 2009’.
b. Hãy đưa ra tổng số báo mà độc giả đã đặt mua trong năm 2010 theo từng báo. Thông tin hiển
thị gồm 2 cột: Tên báo (Tenbao) và tổng số lượng đặt (TongSLDat).
c. Xóa đi những tờ báo chưa có độc giả nào đặt mua.
d. Thay đổi thông tin địa chỉ tòa soạn của báo “Pháp luật” thành “TP HCM”.
2. Tối ưu hóa biểu thức sau:
ΠTenDG (σF (BAO x DATMUA x DOCGIA))
Trong đó: F = DOCGIA.MaDG = DATMUA.MaDG ^
DATMUA.Matobao = BAO.Matobao ^
DOCGIA.Diachi = ‘Hà Nội’ ^
BAO.Tenbao= ‘Phụ nữ’ ^
DATMUA.Soluong > 10.

Câu 9: Một công ty xây dựng dùng một hệ cơ sở dữ liệu gồm 4 quan hệ sau:
NHANVIEN(MaNV, Hoten, Ngaysinh, Phai, Diachi, MaPB).
PHONGBAN(MaPB, TenPB).
CONG(MaCT, MaNV, SLngaycong).
CONGTRINH(MaCT, TenCT, Diadiem, NgaycapGP, NgayKC, NgayHT).


Trong đó:
MaNV : Mã nhân viên; Hoten: Họ tên nhân viên;
Ngaysinh: Ngày sinh; Phai: Giới tính; Diachi: Địa chỉ;
MaPB: Mã phòng ban; TenPB: Tên phòng ban;
MaCT: Mã công trình; TenCT: Tên công trình; SLngaycong: Số lượng ngày công
Diadiem: Địa điểm công trình; NgaycapGP: Ngày cấp giấy phép;
NgayKC: Ngày khởi công; NgayHT: Ngày hoàn thành
1. Hãy dùng ngôn ngữ đại số quan hệ và ngôn ngữ SQL để biểu diễn các câu hỏi sau:
a. Đưa ra tổng số ngày công của mỗi công trình. Yêu cầu đưa ra các thông tin: Tên công trình và
Tổng số ngày công.

b. Đưa ra danh sách các nhân viên (gồm mã nhân viên, ngày sinh, địa chỉ) thuộc phòng ban có
mã số là P2 và tham gia công trình có mã số là X.
2. Hãy tối ưu hóa biểu thức sau:
ΠHoten, Ngaysinh, Diachi(σ F(NHANVIEN x PHONGBAN x CONG x CONGTRINH))
Trong đó: F = NHANVIEN.MaPB
CONG.MaCT
NHANVIEN.MaNV

= PHONGBAN.MaPB ^
= CONGTRINH.MaCT ^
= CONG.MaNV ^

CONGTRINH.NgayHT >= 1.1.2010 ^
CONGTRINH.NgayHT <= 1.1.2015 ^
PHONGBAN. TenPB = ‘Thiết kế’.
Câu 10: Một công ty xây dựng dùng một hệ cơ sở dữ liệu gồm 4 quan hệ sau:
NHANVIEN(MaNV, Hoten, Ngaysinh, Phai, Diachi, MaPB).
PHONGBAN(MaPB, TenPB).
CONG(MaCT, MaNV, SLngaycong).
CONGTRINH(MaCT, TenCT, Diadiem, NgaycapGP, NgayKC, NgayHT).
Trong đó:


MaNV : Mã nhân viên; Hoten: Họ tên nhân viên;
Ngaysinh: Ngày sinh; Phai: Giới tính; Diachi: Địa chỉ;
MaPB: Mã phòng ban; TenPB: Tên phòng ban;
MaCT: Mã công trình; TenCT: Tên công trình;
Diadiem: Địa điểm công trình; NgaycapGP: Ngày cấp giấy phép;
NgayKC: Ngày khởi công; NgayHT: Ngày hoàn thành
1. Hãy dùng ngôn ngữ đại số quan hệ và ngôn ngữ SQL để biểu diễn các câu hỏi sau:

a. Đưa ra tổng số ngày công và tổng số nhân viên tham gia vào mỗi công trình trong CSDL trên.
Yêu cầu hiển thị các thông tin: Tên công trình, Tổng số ngày công, Tổng số người tham gia.
b. Đưa ra thông tin về các nữ nhân viên tham gia công trình “Xây dựng chung cư X”. Yêu cầu
hiển thị các thông tin: Mã nhân viên, họ tên nhân viên, ngày sinh, địa chỉ.
2. Hãy tối ưu hóa biểu thức sau:
ΠHoten, Ngaysinh, Diachi(σ F(NHANVIEN x CONG x CONGTRINH)).
Trong đó F = CONG.MaCT = CONGTRINH.MaCT ^
NHANVIEN.MaNV = CONG.MaNV^
CONGTRINH.TenCT = ‘Dự án SBC’^
NHANVIEN.Phai = ‘Nữ’^
CONG. SLngaycong >=30.

Câu 11 : Cho một lược đồ cơ sở dữ liệu quản lý thư viện gồm các quan hệ sau:
SACH(Masach, Tieude, Tacgia, TenNXB)
NHAXUATBAN(TenNXB, DiachiNXB, ThanhphoNXB)
DOCGIA(TheDG, TenDG, DiachiDG, ThanhphoDG)
PHIEUMUON(MaPM, Ngaymuon, TheDG)
CHITIETMUON(MaPM, Masach, SLmuon)
Trong đó:


Masach: Mã sách; Tieude: Tên sách; Tacgia: Tên tác giả;
TenNXB: Tên nhà xuất bản; DiachiNXB: Địa chỉ của nhà xuất bản;
ThanhphoNXB: Thành phố nơi có nhà xuất bản;
TheDG: Mã số thẻ thư viện của độc giả, TenDG: Tên của độc giả;
DiachiDG: Địa chỉ độc giả (phố); ThanhphoDG: Thành phố nơi độc giả ở;
MaPM: Mã phiếu mượn sách; Ngaymuon: Ngày mượn sách;
SLmuon: Số lượng sách mà độc giả mượn
1. Hãy sử dụng ngôn ngữ đại số quan hệ và ngôn ngữ SQL biểu diễn các câu hỏi sau:
a. Đưa ra họ tên, địa chỉ và thành phố sinh sống của các độc giả mượn sách trong ngày

15/01/2010.
b. Cho biết thông tin của các độc giả sống tại thành phố nơi có mặt nhà xuất bản “Kim Đồng”
(Với giả thiết mỗi nhà xuất bản chỉ đặt tại một thành phố duy nhất).
2. Hãy tối ưu hóa biểu thức sau:
ΠTensach, TenTG, SLmuon(σ F(SACH x CHITIETMUON x DOCGIA x PHIEUMUON)).
Trong đó F = SACH.Masach = CHITIETMUON.Masach ^
CHITIETMUON.MaPM = PHIEUMUON.MaPM ^
DOCGIA.TheDG = PHIEUMUON.TheDG ^
DOCGIA.TenDG = ‘Nguyễn Văn An’ ^
DOCGIA.DiachiDG = ‘Sơn La’ ^
PHIEUMUON.Ngaymuon = ‘1/1/2011’^
SACH.TenNXB = ‘Kim Đồng’.
Câu 12: Cho một lược đồ cơ sở dữ liệu quản lý thư viện gồm các quan hệ sau:
SACH(Masach, Tieude, Tacgia, TenNXB)
NHAXUATBAN(TenNXB, DiachiNXB, ThanhphoNXB)
DOCGIA(TheDG, TenDG, DiachiDG, ThanhphoDG)
PHIEUMUON(MaPM, Ngaymuon, TheDG)


CHITIETMUON(MaPM, Masach, SLmuon)
Trong đó:
Masach: Mã sách; Tieude: Tên sách; Tacgia: Tên tác giả;
TenNXB: Tên nhà xuất bản; DiachiNXB: Địa chỉ của nhà xuất bản;
ThanhphoNXB: Thành phố nơi có nhà xuất bản;
TheDG: Mã số thẻ thư viện của độc giả, TenDG: Tên của độc giả;
DiachiDG: Địa chỉ độc giả (phố); ThanhphoDG: Thành phố nơi độc giả ở;
MaPM: Mã phiếu mượn sách; Ngaymuon: Ngày mượn sách;
SLmuon: Số lượng sách mà độc giả mượn
1. Sử dụng ngôn ngữ đại số quan hệ và ngôn ngữ SQL biểu diễn các câu hỏi sau:
a. Đưa ra tổng số sách mà mỗi độc giả đã mượn trong cơ sở dữ liệu.

b. Hiển thị thông tin các cuốn sách của phiếu mượn có mã phiếu mượn là X. Yêu cầu hiển thị các
thông tin sau: Mã sách, tên sách, tên tác giả, tên nhà xuất bản.
2. Hãy tối ưu hóa biểu thức sau:
ΠTenDG, ThanhphoDG, DiachiDG(σ F(SACH x CHITIETMUON x DOCGIA x PHIEUMUON)).
Trong đó: F = SACH.Masach = CHITIETMUON.Masach^
CHITIETMUON.MaPM = PHIEUMUON.MaPM ^
DOCGIA.TheDG = PHIEUMUON.TheDG ^
SACH.Tensach = ‘Cuốn theo chiều gió’ ^
DOCGIA.DiachiDG = ‘Sơn La’ ^
PHIEUMUON.Ngaymuon >= ‘1/1/2011’ ^
PHIEUMUON.Ngaymuon <= ‘30/10/2011’.
Câu 13: Cho một lược đồ cơ sở dữ liệu quản lý bán hàng gồm các quan hệ như sau:
KHACH(MaKH, Hoten, Diachi, Dienthoai)
HOADON(SoHD, NgaylapHD, MaKH)
DONGHOADON(SoHD, Mahang, SLban)


HANG(Mahang, Tenhang, Dongia, DVT)
Trong đó:
MaKH: Mã khách hàng; Hoten: Họ tên;
Diachi: Địa chỉ ; Dienthoai: Số điện thoại;
SoHD: Mã số hóa đơn; NgaylapHD: Ngày lập hóa đơn;
Mahang: Mã số mặt hàng; Tenhang: Tên hàng;
Dongia: Đơn giá hàng; DVT: Đơn vị tính cho mặt hàng;
SLban: Số lượng hàng bán
1. Sử dụng ngôn ngữ đại số quan hệ và ngôn ngữ SQL biểu diễn các câu hỏi sau:
a. Đưa ra danh sách các khách hàng mua hàng trong ngày 7/5/2011. Yêu cầu đưa ra các thông
tin: Mã khách hàng, họ tên, địa chỉ, số điện thoại.
b. Cho biết tổng số lượng bán được của mỗi mặt hàng trong cơ sở dữ liệu trên.
2. Hãy tối ưu hóa biểu thức sau đây:

ΠHoten, Diachi, Dienthoai(σ F(KHACH x HOADON x DONGHOADON x HANG).
Trong đó F = KHACH.MaKH = HOADON.MaKH ^
HOADON.SoHD = DONGHOADON.SoHD ^
DONGHOADON.Mahang = HANG.Mahang ^
HANG.Tenhang = ‘RAM’ ^
DONGHOADON.SLban >= 100 ^
DONGHOADON.SLban >= 150 ^
HOADON.NgaylapHD = ‘1/1/2012’.
Câu 14: Cho một lược đồ CSDL quản lý bán hàng gồm các quan hệ như sau:
KHACH(MaKH, Hoten, Diachi, Dienthoai)
HOADON(SoHD, NgaylapHD, MaKH)
DONGHOADON(SoHD, Mahang, SLban)
HANG(Mahang, Tenhang, Dongia, DVT)
Trong đó:
MaKH: Mã khách hàng; Hoten: Họ tên khách hàng;


Diachi: Địa chỉ khách hàng; Dienthoai: Số điện thoại của khách hàng;
SoHD: Mã số hóa đơn; NgaylapHD: Ngày lập hóa đơn;
Mahang: Mã số mặt hàng; Tenhang: Tên hàng;
Dongia: Đơn giá hàng; DVT: Đơn vị tính cho mặt hàng;
SLban: Số lượng hàng bán
1. Sử dụng ngôn ngữ đại số quan hệ và ngôn ngữ SQL biểu diễn các câu hỏi sau:
a. Đưa ra tổng tiền bán được của mỗi hóa đơn gồm các thông tin sau: Mã số hóa đơn, tên khách,
Tổng tiền (Là thuộc tính tự đặt).
b. Đưa ra danh sách các mặt hàng bán trong ngày 11/01/2011 với số lượng bán >= 100.
2. Thực hiện tối ưu hóa biểu thức sau:
ΠMahang, Tenhang, DVT, Dongia(σ F(HOADON x DONGHOADON x HANG).
Trong đó F = HOADON.SoHD = DONGHOADON.SoHD ^
DONGHOADON.Mahang = HANG.Mahang ^

HOADON.MaKH = ‘MK05’ ^
DONGHOADON.NgaylapHD >= 150 ^
HOADON.NgaylapHD = ‘1/1/2012’.
Câu 15: Xét một cơ sở dữ liệu của một trường đại học mở gồm 3 quan hệ sau đây:
KHOA (Makhoa, Tenkhoa, Diachi, Dienthoai)
LOP(Malop, Tenlop, Makhoa)
SINHVIEN(MaSV, Malop, Hoten, Ngaysinh, Xeploai)
Trong đó:
Makhoa: Mã khoa; Tenkhoa: Tên khoa; Diachi: Địa chỉ
Dienthoai: Số điện thoại; Malop: Mã lớp; Tenlop: Tên lớp
Hoten: Họ tên sinh viên; Ngaysinh: Ngày sinh; Xeploai: Xếp loại
1. Hãy biểu diễn các yêu cầu sau bằng ngôn ngữ đại số quan hệ và ngôn ngữ SQL:
a. Đưa ra danh sách các sinh viên thuộc khoa “Ngữ văn”. Yêu cầu đưa ra các thông tin: Họ tên,
ngày sinh, xếp loại.
b. Cho biết tên lớp có sinh viên xếp loại “Khá”.


2. Hãy tối ưu hóa biểu thức sau:
ΠHoten (σF (SINHVIEN x LOP x KHOA))
Trong đó: F = SINHVIEN.Malop = LOP.Malop ^
LOP.Makhoa = KHOA.Makhoa ^
SINHVIEN.Xeploai = ‘Giỏi’ ^
KHOA.Tenkhoa = ‘Công nghệ thông tin’.


LOẠI 4:
Câu 1: Cho lược đồ quan hệ phiếu nhập (PHIEUNHAP) và tập phụ thuộc hàm F như sau:
PHIEUNHAP(SoPN, Ngaynhap, Ma_NCC, Ten_NCC, Diachi_NCC, Sodt_NCC, Makho,
Diachikho, Mavattu*, Tenvattu*, SLnhap*, Donvitinh*, Dongianhap*, TyleVAT*)
Chú ý: Các thuộc tính có dấu * là các thuộc tính đa trị

SoPN → Ngaynhap, Ma_NCC, Makho

Ma_NCC → Ten_NCC, Diachi_NCC, Sodt_NCC


F = Makho → Diachikho

Mavattu → Tenvattu, Donvitinh, TyleVAT



SoPN, Mavattu → SLnhap, Dongianhap

a. Tìm khóa của lược đồ quan hệ PHIEUNHAP.
b. Hãy chuẩn hóa lược đồ quan hệ PHIEUNHAP về dạng chuẩn 3.

Câu 2: Cho lược đồ quan hệ phiếu xuất (PHIEUXUAT) và tập phụ thuộc hàm F như sau:
PHIEUXUAT(SoPX, Ngayxuat, Makhach, Tenkhach, Diachikhach, Sodt_khach, Makho,
Diachikho, Mavattu*, Tenvattu*, Donvitinh*, TyleVAT*, SLxuat*, Dongiaxuat*)
Chú ý: Các thuộc tính có dấu * là các thuộc tính đa trị
SoPX → Ngayxuat, Makhach, Makho

 Makhach → Tenkhach, Diachi_khach, Sodt_khach 


F =  Makho → Diachikho

 Mavattu → Tenvattu, Donvitinh, TyleVAT




SoPX, Mavattu → SLxuat, Dongiaxuat

a. Tìm khóa của lược đồ quan hệ PHIEUXUAT.
b. Hãy chuẩn hóa lược đồ quan hệ PHIEUXUAT về dạng chuẩn 3.

Câu 3: Cho lược đồ quan hệ hóa đơn (HOADON) và tập phụ thuộc hàm F như sau:
HOADON(SoHD, Ngay, Makhach, Tenkhach, Diachi_khach, Sodt_khach, Mahang*,
Tenhang*, Donvitinh*, Dongia*, Soluong*)
Chú ý: Các thuộc tính có dấu * là các thuộc tính đa trị
SoHD → Ngay, Makhach

 Makhach → Tenkhach, Diachi_khach, Sodt_khach 


F= 

 Mahang → Tenhang, Donvitinh, Dongia

SoHD, Mahang → Soluong

a. Tìm khóa của lược đồ quan hệ HOADON.
b. Hãy chuẩn hóa lược đồ quan hệ HOADON về dạng chuẩn 3.


Câu 4: Cho lược đồ quan hệ phiếu giao (PHIEUGIAO) và tập phụ thuộc hàm F như sau:
PHIEUGIAO(SoPG, Ngaygiao, Noigiao, Makhach, Tenkhach, Diachi_khach, Mahang*,
Tenhang*, Motahang*, Donvitinh*, Dongiagiao*, Soluonggiao*)
Chú ý: Các thuộc tính có dấu * là các thuộc tính đa trị


SoPG → Ngaygiao, Noigiao, Makhach

 Makhach → Tenkhach, Diachi_khach



F= 

 Mahang → Tenhang, Donvitinh, Motahang 
SoPG, Mahang → Soluonggiao, Dongiagiao
a. Tìm khóa của lược đồ quan hệ PHIEUGIAO.
b. Hãy chuẩn hóa lược đồ quan hệ PHIEUGIAO về dạng chuẩn 3.

Câu 5: Giả sử có một ngành mà tỷ lệ thu thuế theo doanh thu của ngành đó phụ thuộc vào đơn vị
hành chính thành phố. Mỗi một công ty của ngành có một số tài khoản K, đăng ký kinh doanh chỉ
ở một thành phố và chịu tỷ lệ thuế của thành phố đó. Mặt khác doanh thu của mỗi công ty được
quản lý chi tiết đến doanh thu của từng loại sản phẩm của công ty đó. Nếu kí hiệu C, P, T, S và D
lần lượt là các thuộc tính mã công ty, thành phố, tỷ lệ thuế, mã sản phẩm và doanh thu thì ta có các
phụ thuộc hàm sau :
C → KP, P → T, CS → D.
a. Tìm khoá của lược đồ quan hệ R(CKPTSD).
b. Hãy cho biết lược đồ quan hệ R ở dạng chuẩn nào? Tại sao?
c. Tìm một phép tách kết nối không mất thông tin cho R để thay R bởi các lược đồ ở dạng chuẩn
Boyce-Codd.
d. Phép tách thu được từ câu c trên đây có bảo toàn tập phụ thuộc hàm không? Tại sao?

Câu 6: Một cơ sở dữ liệu cho một liên hiệp buôn bán gồm các thuộc tính sau: S (Hãng cung cấp
hàng), A (Nơi đăng kí kinh doanh của hãng cung ứng), C (Công ty tiêu thụ hàng), P (Loại mặt
hàng), Q (Số lượng), D (Giá trị lãi). Trên thực tế có những phụ thuộc hàm sau:
P → D, CQ → S, CP → Q, S → A

a. Tìm khoá của lược đồ quan hệ R(SACPQD)
b. Hãy cho biết lược đồ quan hệ R ở dạng chuẩn nào? Tại sao?
c. Tìm một phép tách kết nối không mất thông tin cho R để thay R bởi các lược đồ ở dạng chuẩn
Boyce-Codd.
d. Phép tách thu được từ câu c trên đây có bảo toàn tập phụ thuộc hàm không? Tại sao?

Câu 7: Cho lược đồ quan hệ bán hàng (BANHANG) và tập phụ thuộc hàm F như sau:
BANHANG(SoHD, Ngaydat, Makhach, Tenkhach, Diachi_khach, Maxe*, Tenxe*,
Donvitinh*, Dongia*, Soluongdat*)


Chú ý: Các thuộc tính có dấu * là các thuộc tính đa trị
SoHD → Makhach, Ngaydat

Makhach → Tenkhach, Diachi_khach 


F=

Maxe → Tenxe, Donvitinh

SoHD, Maxe → Dongia, Soluongdat 
a. Tìm khóa của lược đồ quan hệ BANHANG.
b. Hãy chuẩn hóa lược đồ quan hệ BANHANG về dạng chuẩn 3.

Câu 8: Một cơ sở dữ liệu cho một công ty đầu tư gồm các thuộc tính sau: B (người buôn cổ
phiếu), O (văn phòng của người buôn cổ phiếu), I (người đầu tư), S (loại cổ phiếu), Q (số lượng
của loại cổ phiếu mà người đầu tư có) và D (giá trị lãi của loại cổ phiếu đó). Trên thực tế ta tìm
được các phụ thuộc hàm sau :
S → D, I → B, IS → Q, B → O

a. Tìm khoá của lược đồ quan hệ R(SDIBQO)
b. Hãy cho biết lược đồ quan hệ R ở dạng chuẩn nào? Tại sao?
c. Tìm một phép tách kết nối không mất thông tin cho R để thay R bởi các lược đồ ở dạng chuẩn
Boyce-Codd.
d. Tìm một phép tách R thành những lược đồ ở dạng chuẩn 3, phép tách này vừa là tách kết nối
không mất thông tin vừa bảo toàn các phụ thuộc đã cho.

Câu 9: Giả sử một cơ sở dữ liệu về quản lý bến cảng được cài đặt dựa trên lược đồ R(U, F). Trong
đó: U = ABCDEF (A: Tên tàu, B: Loại tàu, C: Mã chuyến, D: Lượng hàng, E: Bến cảng, F: Ngày
xuất cảng), và F = {A → B, C → A, DAF → C, DAF → E}.
a. Tìm tất cả các khóa của lược đồ quan hệ R.
b. Tìm dạng chuẩn của lược đồ quan hệ R đã cho ở trên.
c. Tìm một phép tách bảo toàn phụ thuộc cho R thành các lược đồ con đạt chuẩn 3.
d. Phép tách vừa tìm được ở trên có bị tổn thất thông tin không? Vì sao?
Câu 10: Cho lược đồ quan hệ R(U, F). Trong đó: U = HMGPTS (M: Môn học, G: Giảng viên, S:
Sinh viên, T: Tiết học, P: Phòng học, H: Điểm), và F = {M → G, TP → M, TG → P, MS → H,
TS → P}.
a. Tìm một khóa của lược đồ quan hệ R. Lược đồ R đã cho có bao nhiêu khóa? Chứng minh?
b. Tìm dạng chuẩn của lược đồ R đã cho ở trên.
c. Tìm một phép tách - kết nối không tổn thất cho R thành các lược đồ con đạt chuẩn Boyce-Codd.


d. Phép tách vừa tìm được trong câu c có bảo toàn tập phụ thuộc hàm không? Vì sao?
Câu 11: Giả sử một cơ sở dữ liệu về quản lý kế hoạch giảng dạy của một trường THPT được cài
đặt dựa trên lược đồ R(U, F). Trong đó: U = ABCDE (A: Ngày dạy, B: Giờ dạy, C: Phòng học, D:
Môn học, E: Giáo viên), và F = {ABC → D, AD → E, ABC → E, D → E}.
a. Tìm tất cả các khóa của lược đồ quan hệ R.
b. Tìm dạng chuẩn của lược đồ R đã cho ở trên.
c. Nếu R chưa đạt chuẩn 3. Tìm một phép tách bảo toàn phụ thuộc cho R thành các lược đồ con đạt
chuẩn 3.

d. Phép tách vừa tìm được ở trên có bị tổn thất thông tin không? Vì sao?
Câu 12: Cho lược đồ quan hệ R(U, F), với U=ABCDEGHK và tập phụ thuộc hàm F như sau:
F = {C → AD, E→ BH, B→ K, CE→ G}
a. Tìm một khóa của lược đồ quan hệ R. Lược đồ R đã cho có bao nhiêu khóa? Chứng minh?
b. Tìm dạng chuẩn của lược đồ R đã cho ở trên.
c. Tìm một phép tách - kết nối không tổn thất R thành các lược đồ con đạt chuẩn Boyce-Codd.
d. Cho biết phép tách vừa tìm được ở trên có bảo toàn tập phụ thuộc hàm không? Vì sao?

Câu 13: Một cơ sở dữ liệu cho cửa hàng sửa chữa xe máy Minh Anh gồm các thuộc tính như sau:
Số hợp đồng (A), Ngày làm hợp đồng (B), Mã khách (C), Tên khách (D), Địa chỉ (E), Số đăng ký
xe (F), Trị giá hợp đồng (G), Ngày thanh lý hợp đồng (H). Trên thực tế gồm các phụ thuộc hàm
sau:
F ={A → BG, C → DEF, AB → H, ABF → G }.
a. Tìm khoá của lược đồ quan hệ R(ABCDEFGH).
b. Hãy cho biết lược đồ quan hệ R ở dạng chuẩn nào? Tại sao?
c. Tìm một phép tách bảo toàn phụ thuộc cho R thành các lược đồ con đạt chuẩn 3.
d. Tìm một phép tách không mất thông tin để đưa các lược đồ con thu được trong câu c về dạng
chuẩn 3.
Câu 14: Một cơ sở dữ liệu cho công ty xây dựng Hà Nội gồm các thuộc tính: Mã nhân viên (A),
Ngày sinh (B), Địa chỉ (C), Mã phòng ban (D), Tên phòng ban (E), Mã dự án (F), Tên dự án (G),
Ngày công (H). Trên thực tế gồm các phụ thuộc hàm sau:


F = {A → BCD, D → E, F → G, AF → H }.
a. Tìm một khoá của lược đồ quan hệ R(ABCDEFGH). Lược đồ R có bao nhiêu khóa? Vì sao?
b. Hãy cho biết lược đồ quan hệ R ở dạng chuẩn nào? Tại sao?
c. Tìm một phép tách bảo toàn phụ thuộc cho R thành các lược đồ con đạt chuẩn 3.
d. Phép tách vừa tìm được trong câu c có phải là phép tách không mất thông tin không? Vì sao?

Câu 15: Một sơ sở dữ liệu quản lý thư viện gồm các thuộc tính: Mã độc giả (A), Tên độc giả (B),

Nghề nghiệp (C), Mã sách (D), Tên sách (E), Mã phiếu mượn (F), Số lượng mượn (G), Ngày
mượn (H). Trên thực tế gồm các phụ thuộc hàm sau:
F={A→ BC, D → E, F → H, DF → G }
a. Tìm tất cả các khóa của lược đồ R(ABCDEFGH).
b. Tìm dạng chuẩn của lược đồ R đã cho ở trên.
c. Tìm một phép tách - kết nối không tổn thất cho R thành các lược đồ con đạt chuẩn BoyceCodd.
d. Phép tách tìm được trong câu c có phải là phép tách bảo toàn tập phụ thuộc hàm không? Vì sao?



×