Tải bản đầy đủ (.pdf) (10 trang)

Bài tập lớn môn cơ sở dữ liệu Quản lý học viên ở một trung tâm tin học

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 (204.51 KB, 10 trang )

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG


BÁO CÁO

MÔN : CƠ SỞ DỮ LIỆU

Họ và tên: Trần Ngọc Tiến
Lớp: D10CN1
Mã sinh viên: 1021040050
Bài tập: Quản lý học viên ở một trung tâm tin học













I, Mô tả
Bài toán đặt ra là quản lý học viên ở một trung tâm tin học. Các
vấn đề trong phạm vi quản lý bao gồm lớp học, môn học, kết quả, học
phí và học viên.
Các thông tin về học viên cần nắm được mã học viên (duy nhất và
chỉ thuộc về một lớp duy nhất (nếu học viên cùng lúc học nhiều lớp thì
ứng với mỗi lớp, học viên đó có một mã học viên khác nhau)), họ tên,


ngày sinh, nơi sinh, giới tính và nghề nghiệp - nghề nghiệp là SINH
VIÊN, GIÁO VIÊN, KỸ SƯ, HỌC SINH, BUÔN BÁN,…
Thông tin về các lớp học gồm mã lớp duy nhất, tên lớp, thời khóa
biểu, ngày khai giảng và học phí . Chú ý rằng tại một thời điểm, trung
tâm có thể mở nhiều lớp cho cùng một chương trình học. Với các lớp
dài hạn thì ngày khai giảng được xem là ngày bắt đầu của mỗi học phần
và HỌC PHÍ là học phí của mỗi học phần, với lớp ngắn hạn thì HỌC PHÍ
là học phí của toàn khoá học đó.
Thông tin về môn học phải nắm được là mã môn học là duy nhất,
mỗi môn học xác định tên môn học, số tiết lý thuyết , số tiết thực hành .
Mỗi học viên ứng với mỗi môn học có một điểm thi duy nhất. Mỗi
lần đóng học phí, học viên sẽ được trung tâm giao cho một phiếu biên
lai thu tiền, mỗi biên lai có một số biên lai duy nhất để quản lý.

II, Xác định các đối tượng thực thể:
Các thực thể:
 HOCVIEN:
thực thể học viên dùng để lưu thông tin của các học viên, bao gồm
các thuộc tính:
- MAHV
- TENHV
- NGAYSINH
- NOISINH
- GIOITINH
- NGHENGHIEP




 LOPHOC:

Thực thể lớp học lưu thông tin về các lớp học, bao gồm các thuộc
tính như:
- MALOP
- TENLOP
- TKB
- NKG
- HOCPHI

 MONHOC:
Thực thể môn học dùng để lưu thông tin của các môn học ở trung
tâm bao gồm các thuộc tính như:
- MAMON
- TENMON
- SOTIETLT
- SOTIETTH

 KETQUA:
Thực thể kết quả dùng để lưu thông tin của kết quả học tập ở
trung tâm bao gồm các thuộc tính như:
- DIEMTHI
- MAHV
- MAMON









III, Mô hình E-R




















HOCVIEN
MAHV
LOPHOC
TENLOP
MALOP
TENHV
TKB
NKG
MONHOC

MAMON
SOTIETLT
SOTIETTH
MAHP
NGHENGHIEP
NGAYSINH
NOISINH
GIOITINH
TRUCTHUOC
QUANLY
TENMON
PHUTRACH
HOCPHI
DIEMTHI
KETQUA

IV, Chuyển mô hình E-R sang mô hình quan hệ

HOCVIEN (MAHV, TENHV, NGAYSINH, NOISINH, GIOITINH, NGHENGHIEP, MALOP)
NGHENGHIEP (MAHV, NGHENGHIEP)
LOPHOC (MALOP, TENLOP, TKB, NKG, HOCPHI, MAHV)
HOCPHI (MALOP, MAHP, HOCPHI)
MONHOC (MAMON, TENMON, SOTIETLT, SOTIETTH, MALOP)
KETQUA (MAHV, MAMON, DIEMTHI)

V, 10 biểu thức đại số

1.
Cho danh sách các học viên thuộc lớp có mã là TH1:



(MALOP=”TH1”)
(HOCVIEN)

2.
Cho danh sách các học viên nữ thuộc lớp TH1 có nơi sinh Hà Nội:


(GIOITINH=”nu” and MALOP=”TH1” and NOISINH=”Ha Noi”)
(HOCVIEN)

3.
Cho danh sách học viên gồm các thông tin tên học viên, giới tính, năm sinh,
nghề nghiệp:


(TENHV, GIOITINH, NAMSINH, NGHENGHIEP)
(HOCVIEN)

4.
Cho danh sách học viên nam thuộc lớp có mã là TH1:



(MAHV, TENHV)
(


(GIOITINH=”nu” and MALOP=”TH1”)
(HOCVIEN))


5.
Cho danh sách học viên nam có nơi sinh Hà Nội:
i. KQ1 ←


(NOISINH=”Ha Noi”)
(HOCVIEN)

ii. KQ ←

(MAHV, TENHV, NOISINH)
(KQ1)



6.
Phép tích Đề-các
HOCVIEN(MAHV, TENHV, MAM)
MAHV TENHV MAM
01 TNT TH
02 PVB CSDL

MON(MAMON, TENMON)
MAMON TENMON
TH Tin học
CSDL Cơ sở dữ liệu

HOCVIEN x MONHOC
(MAHV, TENHV, MAM, MAMON, TENMON)

MAHV TENHV MAM MAMON TENMON
01 TNT TH TH Tin học
01 TNT TH CSDL Cơ sở dữ liệu
02 PVB CSDL TH Tin học
02 PVB CSDL CSDL Cơ sở dữ liệu

7.
Phép kết:
HOCVIEN

MONHOC (MAHV, TENHV, MAM, TENMON)
MAHV TENHV MAM TENMON
01 TNT TH Tin học
02 PVB CSDL Cơ sở dữ liệu


8.
Tìm tên các học viên nữ thuộc lớp có mã là TH3 hoặc thuộc lớp có mã là
CSDL2:
[

(GIOITINH=”nu”)
(

(MALOP = “TH3”)
(HOCVIEN))]

[

(GIOITINH=”nu”)

(

(MALOP = “CSDL2”)
(HOCVIEN))]

9.
Tìm tên các học viên thuộc lớp có mã là TH3:
[

(MAHV, TENHV)
(


(MALOP=”TH3”)
(HOCVIEN))]
10.
Tìm mã học viên của các học viên học lớp có mã là CSDL3 hoặc học
môn Cơ sở dữ liệu:

[

(MAHV)
(
((MALOP = “CSDL3”) OR (TENMON = ”Cơ sở dữ liệu”))
(HOCVIEN))]




Thực hành MySQL:




Chuẩn hóa dữ liệu:
HOCVIEN (MAHV, TENHV, NGAYSINH, NOISINH, GIOITINH, NGHENGHIEP, MALOP)
NGHENGHIEP (MAHV, NGHENGHIEP)
LOPHOC (MALOP, TENLOP, TKB, NKG, HOCPHI, MAHV)
HOCPHI (MALOP, MAHP, HOCPHI)
MONHOC (MAMON, TENMON, SOTIETLT, SOTIETTH, MALOP)
KETQUA (MAHV, MAMON, DIEMTHI)

Chuẩn hóa 1NF:
HOCVIEN (MAHV, MALOP, TENHV, NGAYSINH, NOISINH, GIOITINH, NGHENGHIEP)
NGHENGHIEP (MAHV, NGHENGHIEP)
LOPHOC (MALOP, TENLOP, TKB, NKG, HOCPHI, MAHV)
HOCPHI (MALOP, MAHP, HOCPHI)
MONHOC (MAMON, MALOP, TENMON, SOTIETLT, SOTIETTH)
KETQUA (MAHV, MAMON, DIEMTHI)

Chuẩn hóa 2NF:
HOCVIEN (MAHV, MALOP, TENHV, NGAYSINH, NOISINH, GIOITINH, NGHENGHIEP)
F = {MAHV
→ TENHV, NGAYSINH, NOISINH, GIOITINH
, NGHENGHIEP ;
MAHV
→ MALOP}

HOCVIEN (MAHV, MALOP)
CT_HOCVIEN (MAHV, TENHV, NGAYSINH, NOISINH, GIOITINH, NGHENGHIEP)


MONHOC (MAMON, MALOP, TENMON, SOTIETLT, SOTIETTH)
F = {MAMON

TENMON, SOTIETLT, SOTIETTH;
MAMON


MALOP}
MONHOC (MAMON, MALOP)
CT_MONHOC (MAMON, TENMON, SOTIETLT, SOTIETTH)

Chuẩn hóa 3NF:
KETQUA (MAHV, TENHV, NGAYSINH, NOISINH, GIOITINH, NGHENGHIEP, MAMON,
MALOP, TENMON, SOTIETLT, SOTIETTH, DIEMTHI)
KETQUA (MAHV, MAMON, DIEMTHI)
HOCVIEN (MAHV, TENHV, NGAYSINH, NOISINH, GIOITINH, NGHENGHIEP, MALOP)
MONHOC (MAMON, MALOP, TENMON, SOTIETLT, SOTIETTH)



Các câu truy vấn SQL:
1. Cho danh sách các học viên thuộc lớp có mã là TH1:
SELECT * FROM HOCVIEN WHERE MALOP=’TH1’;
2. Cho danh sách các học viên nữ thuộc lớp TH1 có nơi sinh Hà Nội:
SELECT *
FROM HOCVIEN
WHERE GIOITINH = ‘nu’
AND MALOP = ‘TH1’
AND NOISINH = ‘Ha Noi’;
3.

Cho danh sách học viên gồm các thông tin tên học viên, giới tính, năm sinh,
nghề nghiệp:

SELECT TENHV, GIOITINH, NAMSINH, NGHENGHIEP
FROM HOCVIEN;
4. Cho danh sách học viên nam thuộc lớp có mã là TH1:
SELECT *
FROM HOCVIEN
WHERE GIOITINH = ‘nam’
AND MALOP = ‘TH1’;




5. Cho danh sách học viên nam có nơi sinh Hà Nội:
SELECT *
FROM HOCVIEN
WHERE GIOITINH = ‘nam’
AND NOISINH = ‘Ha Noi’;
6. Tìm tên các học viên nữ thuộc lớp có mã là TH3 hoặc thuộc lớp có mã là
CSDL2:
SELECT *
FROM HOCVIEN
WHERE GIOITINH = ‘nu’
AND MALOP = ‘TH3’
OR MALOP= ‘CSDL2’;
7. Tìm tên các học viên thuộc lớp có mã là TH3:
SELECT TENHV, MALOP
FROM HOCVIEN
WHERE MALOP = ‘TH3’

(SELECT MALOP
FROM HOCVIEN);
8.
Xóa tên học viên “Thanh” không còn học lớp có mã là TH2:

DELETE FROM HOCVIEN
WHERE TENHV = ‘Thanh’ AND MALOP = ‘TH2’;

9. Hiệu chỉnh học phí của lớp TH2 thành 900000 đồng/khóa:
UPDATE LOPHOC
SET HOCPHI = 900000
WHERE MALOP = ‘TH2’;




×