2020 2021 HK1 DE THI CUOI KY CSDL (Final) – Trường Đại học Công nghệ Thông tin Khoa Hệ thống Thông – StuDocu

Trường Đại học Công nghệ Thông tin

Khoa Hệ thống Thông tin

ĐỀ SỐ 1

ĐỀ THI CUỐI KỲ HỌC KỲ I, NĂM

HỌC: 2020-

Môn: CƠ SỞ DỮ LIỆU
Thời gian: 90 phú

(Sinh viên không được phép sử dụng tài liệu – Đề thi gồm có 2 trang)

Câu 1: (8 điểm)

Cho lược đồ cơ sở dữ liệu “Quản lý hồ sơ bệnh án điện tử công dân” có cấu trúc như sau:
BENHNHAN (MABN, HOTEN, NGSINH, CMND, DIACHI, DOITUONG, SLPT)
Tân từ: Quan hệ BENHNHAN lưu trữ thông tin của một bệnh nhân, bao gồm: họ tên (HOTEN), ngày
sinh (NGSINH), số chứng minh nhân dân/căn cước công dân/hộ chiếu (CMND), địa chỉ (DIACHI),
đối tượng (DOITUONG), số lần phẫu thuật (SLPT). Mỗi bệnh nhân được cấp một mã số (MABN).
KHAMBENH (MAKB, MABN, BENH, BENHKT, BATDAU, KETTHUC, KETLUAN,
TAIKHAM)
Tân từ: Quan hệ KHAMBENH chứa các thông tin của việc khám bệnh, bao gồm: mã khám bệnh
(MAKB), mã bệnh nhân được khám bệnh (MABN), bệnh chính (BENH), bệnh kèm theo (BENHKT),
thời gian bắt đầu việc khám bệnh (BATDAU), thời gian kết thúc việc khám bệnh (KETTHUC), kết
luận của bác sĩ (KETLUAN) và ngày hẹn tái khám nếu có (TAIKHAM).
PHAUTHUAT (MAPT, MAKB, BOPHANPT, LOAIPT, KETQUA)
Tân từ: Quan hệ PHAUTHUAT chứa các thông tin sự kiện phẫu thuật, bao gồm: mã phẫu thuật
(MAPT), mã khám bệnh mà bác sĩ kết luận chỉ định phẫu thuật (MAKB), bộ phận cơ thể cần phẫu
thuật (BOPHANPT), loại phẫu thuật (LOAIPT) và kết quả ca phẫu thuật (KETQUA).
BACSI (MABS, HOTEN, NAMSINH, CHUYENMON, KHOA, BENHVIEN)
Tân từ: Quan hệ BACSI lưu trữ thông tin các bác sĩ, bao gồm: mã bác sĩ (MABS), họ tên (HOTEN),
năm sinh (NAMSINH), chuyên môn (CHUYENMON), khoa (KHOA) và bệnh viện đang công tác
(BENHVIEN).
PHUTRACH (MABS, MAKB, BATDAUPT, KETTHUCPT)
Tân từ: Quan hệ PHUTRACH lưu trữ thông tin phụ trách khám bệnh của mỗi bác sĩ, bao gồm: mã bác
sĩ phụ trách (MABS), mã khám bệnh (MAKB), thời điểm bắt đầu phụ trách (BATDAUPT), thời điểm
kết thúc (KETTHUCPT).
Ghi chú: Các thuộc tính gạch dưới là các thuộc tính khóa chính.
1. Hãy phát biểu chặt chẽ ràng buộc toàn vẹn (bao gồm bối cảnh, nội dung, bảng tầm ảnh
hưởng): (2 điểm)
“Số lần phẫu thuật của một bệnh nhân phải bằng số lần phẫu thuật được chỉ định qua các lần khám
của bệnh nhân đó.”
Lưu ý : Không được sửa thuộc tính khóa chính.

BỐI CẢNH: BENHNHANH,KHAMBENH,PHAUTHUAT

NỘI DUNG:

EXCEPT

(SELECT bs,HOTEN
FROM BACSI bs, PHUTRACH pt
WHERE bs = pt and YEAR(BATDAUPT) = 2020)
e. Cho biết thông tin (MABS, HOTEN) của những bác sĩ chuyên môn ‘Hồi sức – Cấp cứu’ tham
gia tất cả các mã khám bệnh của bệnh nhân ‘Nguyễn Văn A’. (1 điểm)
SELECT bs, bs
FROM BACSI bs
WHERE CHUYENMON = ‘Hồi sức – Cấp cứu’
AND NOT EXISTS( SELECT *
FROM KHAMBENH kb,BENHNHAN bn
WHERE kb = bn and bn = ‘Nguyễn Văn A’
AND NOT EXISTS ( SELECT*
FROM PHUTRACH pt
WHERE pt = bs and pt = kb))
SELECT bs, bs
FROM BACSI bs, KHAMBENH kb, BENHNHAN bn,PHUTRACH pt
WHERE CHUYENMON = ‘Hồi sức – Cấp cứu’ and bn = kb and Kb = pt and
pt = bs and bn = ‘Nguyễn Văn A’
GROUP BY bs, HOTEN
HAVING COUNT(MAKB) = (SELECT COUNT(MAKB)
FROM KHAMBENH kb,BENHNHAN bn
kb = bn and HOTEN = ‘Nguyễn Văn A’ )
f. Cho biết thông tin bác sĩ (MABS, HOTEN) có số lần phụ trách khám bệnh nhiều nhất. (1 điểm)
SELECT TOP 1 WITH TIES bs,HOTEN
FROM BACSI bs,PHUTRACH pt
WHERE bs = pt
GROUP BY bs,HOTEN
ORDER BY COUNT(MAKB) DESC
Câu 2: (2 điểm)
Cho lược đồ quan hệ Q(ABCDE) có tập phụ thuộc hàm: F = {A→ BC, A→E, BC→AD, AB→D}

1. Phụ thuộc hàm BDC→E có thuộc F+ không? Giải thích. (0 điểm)
Tìm bao đóng BDC+ = BDC ⋃ A
= BDCA ⋃ E
= BDCAE

Vì E ∈ BDC+ nên BDC→E thuộc F+
2. Lược đồ quan hệ (Q, F) có đạt dạng chuẩn 2 không? Giải thích. (1 điểm)
Tập nguồn: ∅
Tập trung gian: A,B,C,
Tập đích: D,E
Tìm bao đóng:
A+ = ABCED = Q+ (Là khóa) loại các tập con chưa A
B+ = B khác Q+(ko là khóa)
C+ = C khác Q+(ko là khóa)
BC+ = BCADE (là khóa) loại các tập con chưa BC
Khóa của Q là A,BC
Tập con thật sự của khóa khác khóa là {B,C}
Xét tất cả phụ thuộc hàm ta có không tồn tại tập con của khóa chứa thuộc tính không khóa nên
Q đạt DC2.

———————————————————– Hết ———————————————————–

TP. HCM, ngày 30/12/
Trưởng khoa duyệt đề TM. Giảng viên ra đề thi
Khoa HTTT
Trường Đại học Công nghệ Thông tin
Khoa Hệ thống Thông tin

ĐỀ SỐ 2

ĐỀ THI CUỐI KỲ HỌC KỲ I, NĂM

HỌC: 2020-

Môn: CƠ SỞ DỮ LIỆU
Thời gian: 90 phút

NỘI DUNG:

∀ bn ∈ BENHNHAN : Count ( ∀ kb ∈ KHAMBENH, ∃ pt ∈ PHAUTHUAT : bn. MaBN = kb. MaBNkb = pt. MaKB ) ( MaKB ) = bn. SLPTBẢNG TAH :THÊM XÓA S AỬ BENHNHAN + ( 1 ) – + ( SLPT ) KHAMBENH – – + ( MaBN ) PHAUTHUAT + + + ( MaKB )

(1): Kiểm tra số lần pt = 0 nếu ko có lần pt nào

2. Thực hiện các câu truy vấn sau bằng ngôn ngữ SQL: (6 điểm)
a. Cho biết thông tin khám bệnh (MAKB, KETLUAN) có bệnh chính hoặc bệnh kèm theo là ‘Suy
thận’. Kết quả được sắp xếp theo mã bệnh nhân tăng dần. (1 điểm)
SELECT MAKB,KETLUAN
FROM KHAMBENH
WHERE BENH = ‘ Suy thận ’ OR BENHKT = ‘ Suy thận ’
ORDER BY MABN ASC
b. Cho biết thông tin (MAKB, MABS, HOTEN) của những bác sĩ có chuyên môn là ‘Tim mạch’
bắt đầu phụ trách từ năm 2021. (1 điểm)
SELECT MAKB,MABS,HOTEN
FROM BACSI bs, PHUTRACH pt
WHERE bs = pt and CHUYENMON = ‘Tim mạch’ and YEAR(BATDAUPT) >
2021
c. Cho biết số lần phụ trách khám bệnh của từng bác sĩ trong năm 2020 (BATDAUPT). Thông tin
hiển thị gồm: MABS, HOTEN và SL. (1 điểm)
SELECT bs, HOTEN, COUNT(MAKB) ‘SL’
FROM BACSI bs, KHAMBENH kb
WHERE YEAR(BATDAUPT) = 2020 and bs = kb
GROUP BY bn, HOTEN
d. Cho biết thông tin những bệnh nhân (MABN, HOTEN) được bác sỹ chuẩn đoán cả 2 bệnh
chính là ‘Viêm phổi’ và ‘Tim mạch’ có lịch tái khám trong năm 2021. (1 điểm)
(SELECT MABN,HOTEN

FROM BENHNHAN bn, KHAMBENH kb
WHERE bn = kb and BENH = ‘Viêm phổi’ and YEAR(TAIKHAM) = 2021)
INTERSECT
(SELECT MABN,HOTEN
FROM BENHNHAN bn, KHAMBENH kb
WHERE bn = kb and BENH = ‘ Tim mạch’ and YEAR(TAIKHAM) = 2021)
e. Cho biết thông tin (MABS, HOTEN) của những bác sĩ khoa ‘Cấp cứu’ tham gia tất cả các mã
khám bệnh có bộ phận cơ thể cần phẫu thuật là ‘Phổi’. (1 điểm)
SELECT bs,HOTEN
FROM BACSI bs
WHERE KHOA = ‘Cấp cứu’
AND NOT EXISTS( SELECT *
FROM KHAMBENH kb,PHAUTHUAT pt
WHERE kb = pt and pt = ‘Phổi’
AND NOT EXISTS ( SELECT*
FROM PHUTRACH ptr
WHERE ptr = bs and ptr =
kb))
f. Cho biết thông tin những bệnh nhân (MABN, HOTEN) có số lần khám bệnh nhiều nhất. (1 điểm)
SELECT TOP 1 WITH TIES bs,HOTEN
FROM BACSI bs,PHUTRACH pt
WHERE bs = pt
GROUP BY bs,HOTEN
ORDER BY COUNT(MAKB) DESC

Câu 2: (2 điểm)
Cho lược đồ quan hệ Q(ABCDE) có tập phụ thuộc hàm: F = {D→ BC, D→E, BC→AD, DB→A}

1. Phụ thuộc hàm BAC→E có thuộc F+ không? Giải thích. (0 điểm)
Tìm bao đóng BAC+ = BAC ⋃ D
= BACD ⋃ E
= BACDE
Vì E thuộc BAC+ nên BAC→E có thuộc F+
2. Lược đồ quan hệ (Q, F) có đạt dạng chuẩn 2 không? Giải thích. (1 điểm)
Nguồn:

Source: https://evbn.org
Category: Bài Tập