Trang 1/3 TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TPHCM KHOA CÔNG NGHỆ THÔNG TIN Đề thi liên thông Cao đẳng lên Đại học năm 2011 Môn Cơ sở dữ liệu Thời gian 180 phút Phần A: Công ty A muốn quản
Trang 1Trang 1/3
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TPHCM
KHOA CÔNG NGHỆ THÔNG TIN
Đề thi liên thông Cao đẳng lên Đại học năm 2011
Môn Cơ sở dữ liệu
Thời gian 180 phút
Phần A: Công ty A muốn quản lý các kho hàng và hàng nhập kho đã sử dụng một lược đồ cơ
sở dữ liệu bao gồm các lược đồ quan hệ như sau:
- KHO (MAKHO, TENKHO, DCHI, DTICH, MAPTR)
Công ty có nhiều kho chứa hàng trong thành phố Mỗi kho có một mã (MAKHO) duy nhất để phân biệt với các kho khác Mỗi mã kho xác định duy nhất một tên kho(TENKHO), một địa chỉ (DCHI), một diện tích sử dụng (DTICH), và một mã nhân viên phụ trách kho (MAPTR) Nhân viên phụ trách một kho chỉ có thể là một trong số các nhân viên của kho
- HANG (MAHANG, TENHANG, DVT, TONKHO, MANCC,TENNCC, DIACHI)
Mỗi mặt hàng trong kho có một mã (MAHANG) duy nhất để phân biệt với các mặt hàng khác Mỗi mã hàng xác định duy nhất một tên hàng (TENHANG), một đơn vị tính (DVT), một số lượng tồn kho (TONKHO) , một mã nhà cung cấp (MANCC), một tên nhà cung cấp (TENNCC), một địa chỉ nhà cung cấp (DIACHI)
Mỗi nhà cung cấp có một mã duy nhất (MANCC) để phân biệt với các nhà cung cấp khác Mỗi mã nhà cung cấp xác định duy nhất một tên nhà cung cấp (TENNCC), một địa chỉ (DIACHI)
- PHIEUNHAP (SOPN, MAHANG, MAKHO, NGAYNK, SOLUONG, MANV)
Hàng khi nhập vào kho thì ghi nhận lại trong phiếu nhập : ngày nhập kho, số lượng nhập kho,
mã nhân viên thực hiện nhập hàng Một mặt hàng có thể được nhập vào một hay nhiều kho Một mặt hàng cũng có thể được nhập một lần hay nhiều lần, xảy ra trong một ngày hay trong những ngày khác nhau Do vậy, mỗi lần nhập hàng có một số phiếu nhập duy nhất (SOPN) để phân biệt với những lần nhập hàng khác Mỗi số phiếu nhập xác định duy nhất một mã hàng
Trang 2Trang 2/3
(MAHANG), một mã kho (MAKHO), một ngày nhập (NGAYNK), số lượng nhập (SOLUONG), một mã nhân viên thực hiện nhập hàng (MANV)
- NHANVIEN (MANV, HOTEN, PHAI, MAKHO)
Mỗi kho hàng có một số nhân viên Một nhân viên chỉ làm trong một kho hàng nhất định Mỗi nhân viên có một mã (MANV) duy nhất để phân biệt với các nhân viên trong tất cả các kho hàng Mỗi mã nhân viên xác định duy nhất một họ tên (HOTEN), một phái (PHAI), một
mã kho (MAKHO)
Câu 1 (1đ): Xác định khoá chính cho từng lược đồ quan hệ trên?
Câu 2 (1đ): Hãy xác định và biểu diễn 2 ràng buộc toàn vẹn sau (Lưu ý: nêu rõ các yếu tố của
một RBTV: bối cảnh , biểu thức biểu diễn, bảng tầm ảnh hưởng):
- một ràng buộc toàn vẹn tham chiếu tồn tại giữa hai lược đồ quan hệ KHO và NHANVIEN
- một ràng buộc miền giá trị trên cột diện tích(DTICH) của lược đồ quan hệ KHO
Câu 3 (1đ): Hãy chỉ ra 2 phụ thuộc hàm suy ra từ Tân từ trong lược đồ quan hệ HANG?
Câu 4 (1đ): Trong lược đồ cơ sở dữ liệu trên, hãy chỉ ra một lược đồ quan hệ không đạt dạng
chuẩn 3? Giải thích tại sao? Minh hoạ bằng dữ liệu?
Câu 5 (1đ): Vẽ mô hình thể hiện mối liên kết (relationship) giữa tất cả các lược đồ quan hệ nêu
trên? Chỉ ra các khoá ngoại (nếu có) trong mỗi lược đồ quan hệ trên?
Câu 6 (1đ): Viết các truy vấn bằng ngôn ngữ SQL chuẩn để thực hiện các yêu cầu sau:
a Cho biết Mã hàng, Tên hàng của các mặt hàng được nhập trong ngày 1/1/2006 vào kho tên “Kho Vật liệu”
b Cho biết Mã kho, Tên kho, Địa chỉ của kho hàng do nhân viên “Trần Xuân Minh” phụ
trách? (Yêu cầu: không sử dụng phép kết trong câu truy vấn này)
Trang 3Trang 3/3
Phần B:
Câu 7 (1đ): Cho lược đồ quan hệ Q( ABCDEH ) với tập phụ thuộc hàm
F = { B AC , C D , DE H , AD E } Chứng tỏ phụ thuộc hàm AB H được suy dẫn từ F bằng Hệ tiên đề Amstrong ?
Câu 8 (2đ) Cho lược đồ quan hệ R(ABCDEH) với tập phụ thuộc hàm:
F = { A C , AB C , C DH , CD H , CE AB , EH CD }
a Tìm một phủ tối thiểu của F (có diễn giải)?
b Tìm tất cả các khoá của R?
Câu 9 (1đ): Cho lược đồ quan hệ Q(ABCDE) với tập phụ thuộc hàm:
F = { BC D , CD AE }
Xác định dạng chuẩn cao nhất của Q (có diễn giải)?
Nếu Q chưa đạt dạng chuẩn 3, hãy phân rã Q thành lược đồ quan hệ tối thiểu đạt dạng chuẩn 3 (3NF) bảo toàn thông tin?
TP.HCM, ngày 27/11/2011 Giáo viên soạn đề
Nguyễn Như Hoa
Trang 4Trang 1 / 8
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TPHCM
KHOA CÔNG NGHỆ THÔNG TIN
ĐÁP ÁN
Đề thi liên thông Cao đẳng lên Đại học năm 2011
Môn Cơ sở dữ liệu PHẦN A: (6đ)
Câu 1 (1đ): Xác định khoá chính cho từng lược đồ quan hệ trên ?
0.25 KHO (MAKHO, TENKHO, DCHI, DTICH, MAPTR)
0.25 HANG (MAHANG, TENHANG, DVT, TONKHO, MANCC, TENNCC, DIACHI)
0.25 PHIEUNHAP (SOPN, MAHANG, MAKHO, NGAYNK, SOLUONG, MANV )
0.25 NHANVIEN (MANV, HOTEN, PHAI, MAKHO)
Câu 2 (1đ): Hãy xác định và biểu diễn 2 ràng buộc toàn vẹn (Lưu ý: nêu rõ các yếu tố của một
RBTV : bối cảnh , biểu thức biểu diễn , bảng tầm ảnh hưởng)
0.5 a một ràng buộc toàn vẹn tham chiếu tồn tại giữa hai lược đồ quan hệ KHO và
NHANVIEN
0.5 b một ràng buộc miền giá trị trên cột diện tích(DTICH) của lựơc đồ quan hệ KHO
Câu 2a Cách 1:
- Bối cảnh: KHO, NHANVIEN
- Biểu thức biểu diễn: KHO[MAPTR] NHANVIEN[MANV]
Trang 5Trang 2 / 8
- Bảng tầm ảnh hưởng :
Cách 2:
- Bối cảnh: KHO, NHANVIEN
- Biểu thức bỉêu diễn: NHANVIEN[MAKHO] KHO[MAKHO]
- Bảng tầm ảnh hưởng :
Câu 2b :
- Bối cảnh : KHO
- Biểu thức bỉêu diễn :
t r (KHO)
t.dtich >0 cuối
- Bảng tầm ảnh hưởng :
Câu 3 (1đ): Hãy chỉ ra 2 phụ thuộc hàm suy ra từ Tân từ trong lược đồ quan hệ HANG?
0.5 f1: MAHANG TENHANG, DVT, TONKHO, MANCC, TENNCC, DIACHI
0.5 f2 : MANCC TENNCC, DIACHI
Trang 6Trang 3 / 8
Câu 4 (1đ) : Trong lược đồ cơ sở dữ liệu trên , hãy chỉ ra một lược đồ quan hệ không đạt dạng
chuẩn 3 ? Giải thích tại sao ? Minh hoạ bằng dữ liệu ?
Lược đồ quan hệ HANG không đạt chuẩn 3 vì tồn tại hai thuộc tính không khoá là TENNCC , DIACHI phụ thuộc bắc cầu vào khoá Cụ thể :
Từ f1 có : MAHANG MANCC
Ta có f2 : MANCC TENNCC, DIACHI
Vậy theo luật bắc cầu MAHANG TENNCC, DIACHI
Minh hoạ bằng dữ liệu :
MAHANG TENHANG DVT TONKHO MANCC TENNCC DIACHI
Trang 7Trang 4 / 8
Câu 5 (1đ):
0.5 Vẽ mô hình thể hiện mối liên kết (relationship) giữa tất cả các lược đồ quan hệ nêu trên?
0.5 Chỉ ra các khoá ngoại trong mỗi lược đồ quan hệ trên?
Khoá ngoại trong các lược đồ quan hệ được gạch dưới bằng đường đứt nét
Câu 6 (1đ): Viết các truy vấn bằng ngôn ngữ SQL chuẩn để thực hiện các yêu cầu sau:
0.5 a Cho biết Mã hàng , Tên hàng của các mặt hàng được nhập trong ngày 1/1/2006 vào
kho tên “Kho Vật liệu ”
SELECT Hang.Mahang , Tenhang
FROM Hang , Phieunhap , Kho
WHERE ngayNK = „1/1/2006‟ and
Tenkho like „Kho vật liệu‟ and
Hang.Mahang = Phieunhap.Mahang and
Phieunhap.makho = Kho.makho
(Lưu ý : câu này sinh viên có thể làm cách khác vẫn tính điểm)
KHO
MAKHO TENKHO DCHI DTICH MAPTR
HANG
MAHANG TENHANG DVT TONKHO MANCC TENNCC
DIACHI
PHIEUNHAP
SOPN MAHANG MAKHO NGAYNK SOLUONG MANV
NHANVIEN
MANV
HOTEN
PHAI
MAKHO
Trang 8Trang 5 / 8
0.5 b Cho biết Mã kho, Tên kho , Địa chỉ của kho hàng do nhân viên “Trần Xuân Minh”
phụ trách ? (Yêu cầu : không sử dụng phép kết trong câu truy vấn này)
SELECT Makho , Tenkho , Diachi
FROM Kho
WHERE Maptr in (Select Manv from Nhanvien where Hoten like “Trần Xuân
Minh”)
PHẦN B : (4đ)
Câu 7 (1đ): Cho lược đồ quan hệ Q( ABCDEH ) và tập phụ thuộc hàm
F = { B AC ,
C D ,
DE H ,
AD E }
Chứng tỏ pth AB H được suy dẫn từ F bằng hệ tiên đề Amstrong ?
(1) B AC theo gt
(2) AB AC theo luật thêm
(3) C D theo gt
(4) AC AD theo luật thêm
(5) AB AD theo luật bắc cầu (2) và (4)
(6) AD E theo gt
(7) AD DE theo luật thêm
(8) DE H theo gt
(9) AD H theo luật bắc cầu (7) và (8)
(10) AB H theo luật bắc cầu (5) và (9)
Câu 8 (2đ) : Cho lược đồ quan hệ R(ABCDEH) với tập phụ thuộc hàm
Trang 9Trang 6 / 8
F = { A C , AB C , C DH , CD H , CE AB , EH CD }
1đ a Tìm một phủ tối thiểu của F (có diễn giải) ?
1đ b Tìm tất cả các khoá của R suy ra từ tập phụ thuộc hàm ?
a Tìm một phủ tối thiểu của F (có diễn giải) ?
B1 : Biến đổi F thành tập các phụ thuộc hàm vế phải chỉ có 1 thuộc tính
F={A C, AB C, C D,C H, CD H, CE A, CE B, EH C, EHD }
B2 : Biến đổi F thành tập các phụ thuộc hàm có vế trái không dư thừa
Xét AB C Trong các tập con thực sự của AB ta có :
A+ = {ACDH} chứa C
B+ = {B} không chứa C
Vậy AB C dư thừa ở vế trái
Ta thay thế AB C bằng A C Xét CD H Trong các tập con thực sự của CD ta có :
C+ = {CDH} chứa H
D+ = {D} không chứa H
Vậy CD H dư thừa ở vế trái
Ta thay thế CD H bằng C H Xét CE A Trong các tập con thực sự của CE ta có :
C+ = {CDH} không chứa A
E+ = {E} không chứa A
Vậy CE A không dư thừa ở vế trái Tương tự, CE B không dư thừa ở vế trái Xét EH C Trong các tập con thực sự của EH ta có :
E+ = {E} không chứa C
H+ = {H} không chứa C
Vậy EH C không dư thừa ở vế trái Tương tự, EH D không dư thừa ở vế trái
Trang 10Trang 7 / 8
Vậy ta có tập phụ thuộc hàm tương đương với F có vế trái không dư thừa như sau
F 1 = { A C, C D, C H, CE A, CE B, EH C, EHD }
B3 : Loại khỏi F 1 các phụ thuộc hàm dư thừa
(A)+F1 \ {A C} = {A} không chứa C Vậy A C không dư thừa trong F 1
(C)+F1 \ {C D} = {CH} không chứa D Vậy C D không dư thừa trong F 1
(C)+F1 \ {C H} = {CD} không chứa H Vậy C H không dư thừa trong F 1
(CE)+F1 \ {CE A} = {CEBDH} không chứa A Vậy CE A không dư thừa trong F 1
(CE)+F1 \ {CE B} = {CEADH} không chứa B Vậy CE B không dư thừa trong F 1
(EH)+F1 \ {EH C} = {EHD} không chứa C Vậy EH C không dư thừa trong F 1
(EH)+F1 \ {EH D} = {EHCDAB} chứa D Vậy EH D dư thừa trong F 1 , Loại EH D khỏi F1
KL: một phủ tối thiểu của F là
Ftt = F 2 = { A C, C DH, CE AB, EH C }
b Tìm tất cả các khoá của R suy ra từ tập phụ thuộc hàm ?
Vì F2 là phủ tối thiểu của F =>Ta tìm khoá của R dựa trên F2
TN = {E } , TG = {ACH}
TG TN TG (TN TG)+ Siêu khoá Khoá
Kl: R có 3 khóa AE, CE , EH
Trang 11Trang 8 / 8
Câu 9 (1đ) : Cho lược đồ quan hệ Q(ABCDE) với tập phụ thuộc hàm
F = { BC D , CD AE }
Xác định dạng chuẩn cao nhất của Q (có chứng minh) ? Nếu Q chưa đạt dạng chuẩn 3 , hãy phân
rã Q thành lược đồ quan hệ tối thiểu đạt dạng chuẩn 3 (3NF) bảo toàn thông tin ?
- Tìm các khóa K của Q :
TN = {BC} , TG = {D}
BC+ = {BCDAE} = Q+ , siêu khóa là BC BCD+ = {BCDAD} = Q+ , siêu khóa là BCD
- Dạng chuẩn của Q :
Tính B+ = {B } , C+ = {C} => các thuộc tính không khóa phụ thụôc đầy đủ vào khóa BC Vậy Q đạt dạng chuẩn 2
Trong Q : tồn tại phụ thuộc hàm Vậy Q không đạt chủân 3
Kết luận : Q đạt chuẩn 2
- Phân rã Q bảo tòan thông tin :
Trong F chứa phụ thuộc hàm CD AE có vế trái không phải là siêu khóa, và vế phải
chứa thuộc tính không khóa Ta tách Q thành :
Q1(ACDE) , F1 = {BCD} , K1 = BC
Q2(BCD) , F2 = {CDAE} , K2 = CD
Các Qi đều chứa các phụ thụôc hàm mà vế trái là siêu khóa nên Qi đạt dạng chuẩn BC bảo tòan thông tin
-Hết -