Đề thi giữa kì môn Cơ sở dữ liệu năm học 2017 2018 – Trường Đại học Công Nghệ Thông tin UIT
Đề Thi giữa kỳ CSDL UIT 2017
Phần I: (2.5 Điểm)
1. Vẽ ERD (1.5 Điểm)
Một trung tâm tin học cần tổ chức một cơ sở dữ liệu để quản lý các phòng thực hành với các thông tin như sau:
- Mỗi phòng máy có mã phòng duy nhất để phân biệt với các phòng máy khác, có tên phòng và tên người quản lý phòng.
- Mỗi máy tính có một mã máy duy nhất. Ngoài ra mỗi máy tính còn có các thông tin về cấu hình như: tốc độ CPU, dung lượng RAM, dung lượng ở cứng. Các máy tính được bố trí trong các phòng máy.
- Mỗi môn học có mã môn duy nhất, có tên môn học và thời lượng môn học.
- Mỗi môn học có thể được thực hành ở các phòng máy khác nhau và một phòng máy có thể được đăng ký cho nhiều môn học khác nhau, khi đăng ký phải biết ngày đăng ký.
2. Chuyển ERD trên sang mô hình quan hệ (1 Điểm)
Phần II: (7.5 Điểm)
Người quản trị của Công ty Cổ phần xe khách Phương Trang muốn quản lý các giao dịch mua vé xe khách trên các tuyến đường của hãng, đã thiết kế một CSDL Quản lý vé xe. Sau đây là một phần của lược đồ CSDL:
XE(maxe, bienks, matuyen, sogheT1, sogheT2)
Mô tả: Lược đồ quan hệ XE nhằm mô tả cho những chuyến xe đang được công ty quản lý. Mỗi xe được ghi nhận thông tin biển kiểm soát (bienks), mã tuyến mà xe đó đang hoạt động (matuyen), số ghế tầng 1 (sogheT1), số ghế tầng 2 (sogheT2) và được ấn định một mã số duy nhất (maxe) để theo dõi.
TUYEN(matuyen, bendau, bencuoi, giatuyen, thoigiandk)
Mô tả: Lược đồ quan hệ TUYEN nhằm mô tả thông tin tuyến xe. Mỗi thông tin tuyến xe sẽ bao gồm bến đầu (bendau), bến cuối (bencuoi), giá vé thông thường (giatuyen), thời gian dự kiến mỗi chuyến (thoigiandk) được tính bằng giờ và được đặt một mã số duy nhất (matuyen) để quản lý.
KHACH(mahk, hoten, gioitinh, cmnd)
Mô tả: Lược đồ quan hệ KHACH nhằm mô tả thông tin những hành khách. Thông tin được ghi nhận bao gồm: Mã hành khách (mahk), họ tên (hoten), giới tính (gioitinh) và số chứng minh nhân dân của hành khách đó (cmnd).
VEXE(matuyen, mahk, ngaymua, giave)
Mô tả: Lược đồ quan hệ VEXE nhằm mô tả thông tin vé xe của hành khách. Thông tin vé xe bao gồm: Mã tuyến (matuyen), mã hành khách (mahk), ngày mua vé (ngaymua) và giá vé mua tại thời điểm đó (giave). Một hành khách có thể mua nhiều vé của cùng một tuyến xe tại những thời điểm khác nhau.
Lưu ý: thuộc tính gạch chân là khóa chính (thuộc tính)
1. Viết câu lệnh SQL: (1.5 Điểm)
a. Dùng câu lệnh DDL định nghĩa bổ sung các vấn đề sau: (0.75 điểm)
- Thêm vào thuộc tính diachi có kiểu dữ liệu nvarchar(20) cho quan hệ KHACH.
- Sửa kiểu dữ liệu của thuộc tính diachi trong quan hệ KHACH thành nvarchar(50).
- Xóa thuộc tính diachi trong quan hệ KHACH.
b. Giảm 10% giá vé được mua vào ngày ’20/10/2017′. (0.75 điểm)
2. Viết các biểu thức đại số quan hệ biểu diễn cho các câu truy vấn sau: (6.0 Điểm)
a. Liệt kê matuyen, giatuyen của những tuyến xe xuất phát từ bến đầu là ‘TP HCM’ và kết thúc ở bến cuối là ‘Phan Thiết’ (1 điểm).
b. Cho ra danh sách khách hàng (hoten) mua vé tuyến có bến đầu là ‘TP HCM’ và bến cuối là ‘Cần Thơ’ vào ngày ’02/01/2016′ (ngaymua) (1 điểm)
c. Tuyến nào (matuyen) được tất cả hành khách có giới tính nữ mua vào ngày ’04/11/2017′ (ngaymua=’04/11/2017′). (1 điểm)
d. Cho biết danh sách hành khách (mahk, hoten) mua vé cả hai tuyến có mã tuyến là ‘HCM-DL’ và ‘DL-HCM’. (1 điểm)
e. Với mỗi mã tuyến cho biết tổng số tiền vé bán ra vào năm 2016. (1 điểm)
f. Cho biết thông tin tất cả các tuyến xe xuất phát từ bến đầu là ‘TP HCM’ đi bến cuối là ‘Đà Lạt’ và thông tin biển kiểm soát của các xe đã được phân công đi tuyến này nếu có. (1 điểm)
Lời giải đề thi giữa kỳ CSDL UIT 2017
Phần I
Câu 1: Vẽ mô hình ERD
Câu 2: Mô hình quan hệ
PHONGMAY(maphong, tenphong, tenngql)
MONHOC(mamh, tenmh, thoiluong)
MAYTINH(mamt, RAM, CPU, dungluong, maphong)
DANGKY(maphong, mamh, ngaydk)
Phần II
1. Viết lệnh SQL
Câu a:
- ALTER TABLE KHACH ADD diachi nvarchar(20)
- ALTER TABLE KHACH ALTER COLUMN diachi nvarchar(50)
- ALTER TABLE KHACH DROP COLUMN diachi
Câu b:
UPDATE VEXE SET giave=giave*0.9 WHERE ngaymua=’20/10/2017′
2. Viết biểu thức đại số quan hệ
Câu a:
Câu b:
Câu c:
Câu d:
Câu e:
Câu f:
Khoa Công nghệ thông tin cần tổ chức một cơ sở dữ liệu (CSDL) hiện hành để quản lý các phòng thực hành máy tính. Cho biết các thông tin sau đây về các tập thực thể:
– PHONGMAY: Thông tin về mỗi phòng máy bao gồm: SOPHONG (số phòng) và NGUOIQL (tên người quản lý phòng máy).
– MAYTINH: Các máy tính được đánh số, mỗi máy có một số máy duy nhất. Ngoài ra, mỗi một máy tính còn có các thông tin về cấu hình máy: CPU, RAM, HDD. Các máy tính được bố trí trong các phòng máy (mỗi một phòng máy phải có tối thiểu 20 máy và tối đa là 50 máy).
– MONHOC: Để tiện bố trí cho việc thực hành, CSDL còn phải cho biết mỗi một phòng máy có khả năng đáp ứng thực hành cho những môn học nào. Mỗi một môn học có thực hành ở phòng máy có các thông tin: MAMH (mã môn học), TENMH (tên môn học) và SODVHT (số đợn vị học trình). Hiển nhiên, mỗi môn học có thể được thực hành ở các phòng máy khác nhau.