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

Đồ án cơ sở dữ liệu cơ bản có đáp án trong tệp đính kèm

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 (3.03 MB, 13 trang )

HCMC UNIVERSITY OF PEDAGOGY
FACULTY OF INFORMATICS

Course: Introduction to Database Systems

Handout #1

(ho01.pdf)

Duc-Long, Le

Solutions to Problem
Yêu cầu chung:
Định dạng file: Bài nộp sẽ là 2 file, 1 file dưới dạng .DOC, và 1 file được chuyển sang dạng .PDF
Quy tắc đặt tên: Project02-Nhom01.doc (phần số đầu là thứ tự của Handout, phần số sau là số thứ tự
nhóm)
Quy ước soạn thảo: font Unicode, có định dạng Style (Heading), có mục lục, có ghi chú thích đầy đủ
và chi tiết cho các trích dẫn tham khảo, nguồn tài liệu tham khảo, …

1. Nội dung tự nghiên cứu
- Quá trình hoạt động của một chương trình ứng dụng thông qua các tầng của CSDL
- Kiến trúc 3 mức về lược đồ (lược đồ trong, lược đồ quan niệm, lược đồ ngoài)

Hướng dẫn: Sử dụng các tài liệu của giảng viên (sách tham khảo, giáo trình in, bài giảng Multimedia), tìm kiếm
thông tin trên Internet để tự đọc, tự nghiên cứu, trình bày và thảo luận nhóm (nhóm 2/4).
Khi thảo luận nhóm, cần phải ghi nhận lại thông tin ở dạng báo cáo (trên giấy, file văn bản) để chia sẻ cho mọi
người trong nhóm, trong lớp.
Nội dung tự nghiên cứu nhằm mục đích để mỗi sinh viên sẽ tự học, tự nghiên cứu, sau đó trao đổi và thảo luận
với nhóm để rút ra kiến thức. Nên yêu cầu mỗi sinh viên và nhóm phân công phải thực hiện các nội dung này, tuy
nhiên sẽ không cần phải nộp lại bài báo cáo của nhóm đã thực hiện.
2. Bài tập


- Các loại mô hình dữ liệu - Lịch sử phát triển các mô hình dữ liệu - Đặc điểm của mỗi loại mô hình
- Trình bày vai trò của các thành phần trong kiến trúc của một DBMS
- Khảo sát và so sánh đặc điểm chức năng của các DBMS thông dụng:Access, SQL Server, Oracle, MySQL,…

Sử dụng từ khoá: Database (DB), Relational database management system (DBMS), Comparison of DBMS



/>


/>
Hướng dẫn: Tìm kiếm thông tin trên Internet (sử dụng từ khoá đã cho, và một số URL mẫu) để thu thập và lọc
thông tin, sau đó nghiên cứu (sử dụng các kĩ năng đọc, và kĩ năng tư duy phân tích, tổng hợp, đánh giá) để soạn
thảo thành một báo cáo để nộp cho giảng viên.
Ngoài ra, có thể đọc và tổng hợp thêm những thông tin từ sách tham khảo, giáo trình và bài giảng của giảng viên
để thực hiện bài tập.

1


HCMC UNIVERSITY OF PEDAGOGY
FACULTY INFORMATICS

Course: Introduction to Database Systems
Duc-Long, Le

Handout #2

(ho02.pdf)


Solutions to Problem
Yêu cầu chung:
Định dạng file: Bài nộp sẽ là 2 file, 1 file dưới dạng .DOC, và 1 file được chuyển sang dạng .PDF
Quy tắc đặt tên: Project02-Nhom01.doc (phần số đầu là thứ tự của Handout, phần số sau là số thứ tự
nhóm)
Quy ước soạn thảo: font Unicode, có định dạng Style (Heading), có mục lục, có ghi chú thích đầy đủ
và chi tiết cho các trích dẫn tham khảo, nguồn tài liệu tham khảo, …

1.
-

Nội dung tự nghiên cứu
Các bước để tiến hành thiết kế một ERD. (Nêu ví dụ minh họa)
Các bước để chuyển đổi mô hình ER sang mô hình vật lí
Hãy cho một ví dụ về:






Mối kết hợp đa phân, phản thân
Tập thực thể yếu
Mối kết hợp có thuộc tính
Ràng buộc trên mối kết hợp: 1-1, 1-n, n-n
Ràng buộc toàn phần và riêng phần

Sử dụng từ khoá: Entity-Relationship Diagram hoặc ERD và lọc với filetype:pdf




/>


/>


/>
 /> />www.csis.ul.ie/Modules/CS4513/chapter11.pdf
Hướng dẫn: Sử dụng các tài liệu của giảng viên (sách tham khảo, giáo trình in, bài giảng Multimedia), tìm kiếm
thông tin trên Internet để tự đọc, tự nghiên cứu, trình bày và thảo luận nhóm (nhóm 2/4).
Khi thảo luận nhóm, cần phải ghi nhận lại thông tin ở dạng báo cáo (trên giấy, file văn bản) để chia sẻ cho mọi
người trong nhóm, trong lớp.
Nội dung tự nghiên cứu nhằm mục đích để mỗi sinh viên sẽ tự học, tự nghiên cứu, sau đó trao đổi và thảo luận
với nhóm để rút ra kiến thức. Nên yêu cầu mỗi sinh viên và nhóm phân công phải thực hiện các nội dung này, tuy
nhiên sẽ không cần phải nộp lại bài báo cáo của nhóm đã thực hiện.
2. Bài tập: Sử dụng cả hai phần mềm MS Visio và Power Designer để vẽ các sơ đồ sau:
a) Dựa trên các mô tả sau khi khảo sát hiện trạng của ứng dụng Quả n lý Sinh Viên (QLSV) và
Quản lý đề án công ty (QLDA), Quản lí sách (QLS), hãy xây dựng sơ đồ dữ liệu quan niệm của
ứng dụng (ERD) bằng mô hình thực thể kết hợp.
b) Chuyển đổi 3 ERD trên sang sơ đồ vật lí (ứng với mô hình quan hệ) .

1


Quản lý đề án công ty


Công ty được tổ chức thành các phòng ban (PHONGBAN). Mỗi phòng ban có một tên, một mã số phòng

ban duy nhất để phân biệt với các phòng ban khác, một nhân viên quản lý phòng đó (trưởng phòng) và ghi
nhận ngày nhận chức trưởng phòng. Mỗi phòng ban có thể có nhiều địa điể
h c nhau.



Mỗi phòng ban có thể có nhiều địa điể



Mỗi phòng ban chủ trì nhiều đề án (DEAN). Mỗi đề án có một tên, một mã số duy nhất phân biệt với c c đề
n h c và được triển khai ở một địa điể , ngoài ra còn ghi nhận ngày t đầu và ngày ết th c dự iến
của đề n.



Mỗi nhân viên (NHANVIEN) của công ty có
nhân vi n, họ t n, ức lư ng, ph i và ngày sinh, cũng cần
lưu trữ người quản lý trực tiếp của nhân vi n ( hông nhất thiết là trưởng phòng, có thể là trưởng nhó ).



Mỗi nhân viên làm việc ở một phòng an nhưng có thể tham gia nhiều đề n (c c đề án do phòng ban khác
chủ trì) với thời gian tha gia đề án trong tuần của nhân viên ứng với từng đề n à nhân vi n đó tha
gia.Mỗi nhân viên có thể có nhiều thân nhân (THANNHAN). Với mỗi thân nhân cần lưu trữ họ tên, phái,
ngày sinh, và mối quan hệ với nhân viên trong công ty.

h c nhau.

Quản lý sinh viên



Mỗi khoa có một
hoa (MAKHOA) để phân biệt với các khoa khác, tên khoa (TENKHOA) không trùng
l p nhau. Mỗi hoa được thành lập vào nă thành lập (NAMTHANHLAP).



Mỗi sinh viên có một mã số sinh vi n (MASV) để phân biệt với các sinh viên khác. Mỗi sinh viên có tên sinh
vi n (TEN), đăng ý học một hoa và nă học hiện tại (NAM) là một trong c c nă từ 1 đến 4.



Mỗi môn học có một mã số (MAMH) để phân biệt với các môn học khác, tên môn học (TENMH) không trùng
l p nhau. Mỗi môn học do một khoa (MAKH) phụ trách và có số tín chỉ quy định (TINCHI).Mỗi môn học
(MAMH) có thể không có, có một hay nhiều môn học b t buộc phải học trước (MAMH_TRUOC)



Mỗi học phần có một mã học phần (MAHP) để phân biệt với các học phần khác. Mỗi học phần sẽ mở một
môn học (MAMH) thuộc học kỳ (HOCKY) trong nă học (NAM) và do một giáo viên phụ trách (GV).



Mỗi sinh viên (MASV) theo học một học phần (MAHP) sẽ có một điểm số (DIEM). Sinh viên chỉ theo học các
học phần mở môn học thuộc về hoa à sinh vi n đang theo học. Ứng với một học phần mà sinh viên theo
học, sinh viên có một điểm số duy nhất (DIEM) từ 0 đến 10 điểm

QUẢN LÝ VIỆC MƯỢN/TRẢ SÁCH Ở MỘT THƯ VIỆN
Một thư viện tổ chức việc cho


ượn s ch như sau



Mỗi quyển s ch được đ nh ột
s ch (MASH) dùng để phân biệt với các quyển sách khác (giả sử nếu
một tác phẩm có nhiều bản giống nhau hoặc có nhiều tập thì cũng xe là có
s ch h c nhau), ỗi mã
s ch x c định c c thông tin h c như t n s ch (TENSACH), t n t c giả (TACGIA), nhà xuất bản (NHAXB),
nă xuất bản (NAMXB).



Mỗi độc giả được thư viện cấp cho một thẻ thư viện, trong đó có ghi rõ
độc giả (MAĐG), cùng với các
thông tin
h c như họ t n (HOTEN), ngày sinh (NGAYSINH), địa chỉ (ĐIACHI), nghề
nghiệp(NGHENGHIEP).



Cứ mỗi lượt ượn s ch, độc giả phải đăng ý c c quyển sách cần ượn vào mộtphiếu ượn, mỗi phiếu
ượn có một số phiếu ượn (SOPM) khác nhau, mỗi phiếu ượn x c định c c thông tin như ngày ượn
s ch (NGAYMUON),
độc giả. Các quyển sách trong cùng một phiếu ượn không nhất thiết phải trả
trong một lần. Mỗi quyển sách có thể thuộc nhiều phiếu ượn khác nhau (tất nhiên là tại các thời điểm
khác nhau).

2



HCMC UNIVERSITY OF PEDAGOGY
FACULTY OF INFORMATICS

Course: Introduction to Database Systems
Duc-Long, Le

Handout #3

(ho03.pdf)

Solutions to Problem
1. Nội dung tự nghiên cứu
- Phân biệt các khái niệm: Super Key, Key, Candidate Key, Primary Key, Foreign Key

*** Chương 3. Giáo trình CSDL, Đồng Thị Bích Thủy – Nguyễn Trần Minh Thư – Phạm Thị Bạch Huệ
*** Chương 2 (trang 25~35). Giáo trình Nhập môn CSDL - Nguyễn An Tế
- Thao tác cơ bản trên các Quan hệ (thao tác cập nhật)

*** Chương 3. Giáo trình CSDL, Nguyễn Đăng Tỵ - Đỗ Phúc
- Chuyển đổi từ ERD sang mô hình Quan hệ

Hướng dẫn: Sử dụng các tài liệu của giảng viên (sách tham khảo, giáo trình in, bài giảng Multimedia), tìm kiếm
thông tin trên Internet để tự đọc, tự nghiên cứu, trình bày và thảo luận nhóm (nhóm 2/4).
Khi thảo luận nhóm, cần phải ghi nhận lại thông tin ở dạng báo cáo (trên giấy, file văn bản) để chia sẻ cho mọi
người trong nhóm, trong lớp.
Nội dung tự nghiên cứu nhằm mục đích để mỗi sinh viên sẽ tự học, tự nghiên cứu, sau đó trao đổi và thảo luận
với nhóm để rút ra kiến thức. Nên yêu cầu mỗi sinh viên và nhóm phân công phải thực hiện các nội dung này, tuy
nhiên sẽ không cần phải nộp lại bài báo cáo của nhóm đã thực hiện.

2. Bài tập

Phần 1. Cho lược đồ CSDL cùng với các mô tả tương ứng với từng quan hệ. Xác định khoá chính,
khoá ngoại. Vẽ sơ đồ biểu diễn lược đồ CSDL đã cho.

Quản lý sinh viên
•KHOA (MAKHOA, TENKHOA, NAMTHANHLAP)
Mỗi khoa có một mã khoa (MAKHOA) để phân biệt với các khoa khác, tên khoa
(TENKHOA) không trùng lắp nhau. Mỗi khoa được thành lập vào năm thành lập
(NAMTHANHLAP).
•SVIEN (MASV, TEN, NAM, MAKH)
Mỗi sinh viên có một mã số sinh viên (MASV) để phân biệt với các sinh viên khác.
Mỗi sinh viên có tên sinh viên (TEN), đăng ký học một khoa và năm học hiện tại
(NAM) là một trong các năm từ 1 đến 4.
•MHOC ( MAMH,TENMH, TINCHI, MAKH)
Mỗi môn học có một mã số (MAMH) để phân biệt với các môn học khác, tên môn học
(TENMH) không trùng lắp nhau. Mỗi môn học do một khoa (MAKH) phụ trách và có
số tín chỉ quy định (TINCHI).
•DKIEN (MAMH, MAMH_TRUOC)
Mỗi môn học (MAMH) có thể không có, có một hay nhiều môn học bắt buộc phải học
trước (MAMH_TRUOC)
•HPHAN (MAHP, MAMH, HOCKY, NAM, GV)
Mỗi học phần có một mã học phần (MAHP) để phân biệt với các học phần khác. Mỗi
học phần sẽ mở một môn học (MAMH) thuộc học kỳ (HOCKY) trong năm học (NAM)
và do một giáo viên phụ trách (GV).
•KQUA (MASV, MAHP, DIEM)
Mỗi sinh viên (MASV) theo học một khóa học (MAKH) sẽ có một điểm số (DIEM). Sinh
viên chỉ theo học các khóa học mở môn học thuộc về khoa mà sinh viên đang theo
học. Ứng với một khóa học mà sinh viên theo học, sinh viên có một điểm số duy nhất
(DIEM) từ 0 đến 10 điểm

1


Quản lý đề án công ty
•PHONGBAN (MAPHG, TENPHG, TRPHG, NGNC)
Công ty được tổ chức thành các phòng ban (PHONGBAN). Mỗi phòng ban có một tên,
một mã số phòng ban duy nhất để phân biệt với các phòng ban khác, một nhân viên
quản lý phòng đó (trưởng phòng) và ghi nhận ngày nhận chức trưởng phòng. Mỗi
phòng ban có thể có nhiều địa điểm khác nhau.
•DIADIEM_PHG (MAPHG, DIADIEM)
Mỗi phòng ban có thể có nhiều địa điểm khác nhau.
•DEAN (MADA, TENDA, DDIEM_DA, PHONG, NGBD_DK, NGKT_DK)
Mỗi phòng ban chủ trì nhiều đề án (DEAN). Mỗi đề án có một tên, một mã số duy nhất
phân biệt với các đề án khác và được triển khai ở một địa điểm, ngoài ra còn ghi nhận
ngày bắt đầu và ngày kết th c d kiến của đề án.
•NHANVIEN (MANV, HONV, TENLOT, TENNV, NGSINH, PHAI, DCHI, MA_NQL, PHONG,
MLUONG)
Mỗi nhân viên (NHANVIEN) của công ty có mã nhân viên, họ tên, mức lư ng, phái và
ngày sinh, c ng cần lưu tr ngư i quản lý tr c tiếp của nhân viên (không nhất thiết là
trưởng phòng, có thể là trưởng nhóm).
•PHANCONG (MANV, MADA, THOIGIAN)
Mỗi nhân viên làm việc ở một phòng ban nhưng có thể tham gia nhiều đề án (các đề
án do phòng ban khác chủ trì) với th i gian tham gia đề án trong tuần của nhân viên
ứng với từng đề án mà nhân viên đó tham gia.
•THANNHAN (MANV, MATN, TENTN, PHAI, NGSINH, QUANHE)
Mỗi nhân viên có thể có nhiều thân nhân (THANNHAN). Với mỗi thân nhân cần lưu tr
họ tên, phái, ngày sinh, và mối quan hệ với nhân viên trong công ty.

QUẢN LÝ ĐĂNG KÝ HỌC CHUYÊN ĐỀ
Phòng giáo vụ tại một trường đại học muốn tin học hóa việc quản lý đăng ký học các chuyên đề

của sinh viên. Sau đây là kết quả của việc phân tích thiết kế ứng dụng trên:
1. SINHVIEN (MASV, HOTEN, PHAI, NGAYSINH, DCHI, MANGANH)
Tân từ: Mỗi sinh viên có một mã số duy nhất, một họ tên, thuộc một phái, có một ngày sinh,
một địa chỉ và học một ngành duy nhất.
2. NGANH (MANGANH, TENNGANH, SOCD, TSSV)
Tân từ: Mỗi ngành có một mã ngành duy nhất, có một tên ngành duy nhất. SOCĐ cho biết số
chuyên đề mà 1 sinh viên theo học ngành có mã là MANGANH phải học. TSSV cho biết tổng
số sinh viên đã từng theo học ngành này.
3. CHUYENDE (MACD, TENCD, SOSVTĐ)
Tân từ: Mỗi chuyên đề có một mã duy nhất và có một tên duy nhất. SOSVTĐ cho biết số
sinh viên tối đa có thể chấp nhận được mỗi khi có 1 lớp mở cho chuyên đề có mã là MACD.
4. CD_NGANH (MACD, MANGANH)
Tân từ: Mỗi chuyên đề có thể được học bởi nhiều ngành và mỗi ngành phải học nhiều
chuyên đề. Mỗi ngành học tối đa là 8 chuyên đề.
5. CD_MO (MACD, NAM, HOCKY)
Tân từ: Mỗi bộ của quan hệ trên thể hiện một chuyên đề được mở ra trong một năm của một
học kỳ. Thông thư ng, số sinh viên của ngành mạng là không nhiều nên đối với ngành
“Mạng máy tính” không được mở cùng một chuyên đề trong 2 học kỳ liên tiếp của cùng một
năm.
6. DANGKY (MASV, MACD, NAM, HOCKY)
Tân từ: Mỗi bộ của quan hệ trên thể hiện việc đăng ký học một chuyên đề của một sinh viên
vào một năm của một học kỳ nào đó. Một sinh viên chỉ đ c đăng ký vào các chuyên đề
thuộc ngành học của sinh viên đó mà thôi. Mỗi năm có 2 học kỳ. Sinh viên chỉ được đăng ký
tối đa là 3 chuyên đề trong một học kỳ mà thôi.

2


QUẢN LÝ THỰC ĐƠN VÀ THEO DÕI KẾT QUẢ HỌC TẬP CHO TRẺ MẪU GIÁO
Cho lược đồ CSDL quản lý thực đơn và theo dõi kết quả học tập của một trường mẫu giáo:

1.LOP (MALOP, TENLOP, NIENKHOA, KHOI)
Tân từ: Mỗi lớp có một mã lớp duy nhất, một tên lớp duy nhất và niên khố cho biết lớp thuộc khóa học nào. Có 3
khối: Mầm, Chồi, Lá. Niên khố ln ln có 5 ký số, gồm 2 ký số cuối của 2 năm liên tiếp nhau, ví dụ: 98-99, 02-03.
Mã lớp là một chuỗi gồm 2 ký số đầu của niên khóa mà lớp đó thuộc về, tên khối và 1 ký số cho biết số thứ tự lớp, ví
dụ: lớp đầu tiên thuộc khối mầm của niên khố 98-99 có mã lớp là 98MAM1.
2.TRE (MATRE, TENTRE, TENCHA, TENME, DCHI, DT, MALOP)
Tân từ: Mỗi trẻ khi vào học 1 lớp có một mã duy nhất. Cần lưu lại thơng tin của trẻ gồm tên cha mẹ, địa chỉ và điện
thoại liên lạc. MALOP cho biết trẻ thuộc lớp nào.
3.MONAN (MAMA, TENMA, LOAI, DAM, BEO, DUONG, NANGLUONG)
Tân từ: Mỗi món ăn có 1 mã duy nhất, có một tên duy nhất và thuộc 1 loại. Có 2 loại món ăn: chính hoặc phụ. Một
thực đơn phải gồm 3 hoặc 4 món chính và ít nhất 1 hoặc có thể tối đa là 2 món phụ. Mỗi một khối lượng thức ăn tính
trên khẩu phần 1 trẻ (khơng phân biệt tuổi) cần lưu lại lượng đạm (DAM), chất béo (BEO) đường (DUONG) (đều tính
bằng g (gam))và năng lượng mà món ăn này cung cấp (NANGLUONG) (tính bằng Kcal).
4.THUCDON (MATD, MAMA)
Tân từ: Một bộ dữ liệu cho biết một món ăn có mã là MAMA thuộc về thực đơn có mã là
MATD. Một thực đơn phải cung cấp tối thiểu là 300g đạm, 80g béo, 200g đường và 400
Kcal. Lượng chất béo khơng được vượt q 100g và lượng đường tối đa là 250g cho mỗi thực đơn.
5.NGAY_TD (NGAY, MATD, KHOI)
Tân từ: Một bộ dữ liệu cho biết vào một ngày NGAY, nhà ăn của trường đã áp dụng thực đơn có mã là MATD cho khối
KHOI. Trường chỉ áp dụng 1 mã thực đơn cho tồn khối trong 1 ngày. Các khối khác nhau có thể dùng thực đơn khác
nhau trong ngày. Ngồi ra, chỉ được dùng lại thực đơn cho 1 khối sau tối thiểu là 4 ngày.
6.NGAY_KQ (MATRE, NGAY, CO_MAT, DANHGIA)
Tân từ: Một bộ dữ liệu cho biết trẻ có mã là MATRE, vào một ngày NGAY có đi học hay khơng: COMAT =1 (có mặt);
COMAT =0 (vắng). DANHGIA cho biết trong ngày trẻ sinh hoạt và tiếp thu bài học như thế nào. Có 3 bậc đánh giá: A,
B, C. Nếu trẻ vắng mặt thì trường DANHGIA khơng có giá trị.
7.THANG_KQ (THANG, NAM, MATRE, CAO, CANNANG, BONGSEN)
Tân từ: Một bộ dữ liệu cho biết vào cuối tháng THANG của năm NAM, trẻ có mã là MATRE có chiều cao là CAO và
cân nặng là CANNANG có đạt được bơng sen hay khơng: BONGSEN =1: có bơng sen; BONGSEN = 0; khơng có bơng
sen.Trẻ sẽ được cắm bơng hồng nếu trong tuần có tối thiểu là 5/6 ngày được đánh giá loại A và khơng có ngày nào bị
đánh giá loại C. Trong tháng trẻ sẽ được bơng sen nếu tất cả các ngày tuần trong tháng đều được cắm bơng hồng.


Phần 2. Sử dụng MS. Visio, PowerDesigner để vẽ ERD, sơ đồ biểu diễn các lược đồ CSDL trên.
Hướng dẫn: thể hiện ở dạng mơ hình vật lí, chỉ cần đưa vào các thuộc tính khố chính, khố ngoại (ghi chú là pk,
fk) mà thơi. Hình vẽ này được gọi là sơ đồ biểu diễn lược đồ CSDL

Ví dụ mẫu:

SINHVIEN
MASV
pk
MANG
fk
MAHUYEN fk

QUANHUYEN
MAHUYEN
MATINH

pk
fk

TINH
MATINH

pk

3


Phần 3. Chuyển đổi từ ERD của ứng dụng quản lý cho trước thành các lược đồ quan hệ tương ứng

1. Một yêu cầu phân tích - thiết kế hệ thống quản lý việc đăng ký môn học của sinh viên như sau.

Cho mô hình quan niệm dữ liệu của hệ thống quản lý việc đăng ký môn học của sinh viên tại
ĐHCL. Mô tả về hệ thống như sau: mỗi học kỳ có một số môn học bắt buộc, và sinh viên có
thể đăng ký nhiều môn trong một học kỳ. Sinh viên có thể đăng ký môn học của học kỳ trên hệ
thống và sau đó đóng học phí, hoặc cũng có thể đăng ký và đóng tiền cho giáo vụ khoa, các
thông tin này sẽ được cập nhật và kiểm tra ngay khi học sinh đăng ký hoặc đóng tiền.
Sinh viên được tuyển vào phải thuộc một khoá đào tạo của một năm học. Mỗi năm học có thể
có từ 1 đến 4 học kỳ, một học kỳ có 3 đến 5 môn học cho sinh viên đăng ký học.
Mô hình thực thể - kết hợp của CSDL trên như sau:

SINH VIÊN

(0,n)

(0,n)

ĐĂNGKÝ

MÔN-HK

(1,1)

(1,1)

(1,1)

THUỘC



CỦA

(1,n)
(0,n)

KHÓA

(3,5)

MÔN HỌC
(1,1)

HỌC KỲ

THUỘC
(1,1)

(0,n)

NĂM

(1,4)

HK-NĂM

Yêu cầu:
Thực hiện bài tập và lưu dưới dạng văn bản bằng trình soạn thảo văn bản MS Word .DOC, có thể sử dụng phiên
bản 2003, 2007 tuỳ ý. Bài nộp sẽ là 2 file, 1 file dưới dạng .DOC, và 1 file được chuyển sang dạng .PDF
Lưu văn bản với tên ví dụ như sau: Project03-Nhom01.doc (phần số đầu là thứ tự của bài làm, phần số sau
là số thứ tự nhóm)

Văn bản soạn thảo sử dụng font Unicode, có định dạng Style (Heading), có ghi chú thích đầy đủ và chi tiết cho
các trích dẫn tham khảo, nguồn tài liệu tham khảo, …

4


2. Một yêu cầu phân tích - thiết kế hệ thống quản lý bán hàng của công ty như sau.

Cho mô hình quan niệm dữ liệu của hệ thống quản lý bán hàng của công ty ABC. Mô tả về hệ thống như sau: Công ty kinh
doanh nhiều loại mặt hàng gia dụng theo phương thức bán sỉ và giao hàng tận nơi, thông qua điện thoại, mạng Internet, hoặc trực
tiếp đặt hàng từ khách mua.
Thông qua nhu cầu, khách hàng yêu cầu đặt hàng, nhân viên phụ trách của công ty sẽ lập phiếu đặt hàng cho khách với các sản
phẩm yêu cầu. Thông tin đơn đặt hàng bao gồm số đơn đặt hàng, ngày, giờ, mã sản phẩm, số lượng, đơn giá cùng với thông tin
của khách hàng như họ tên khách hàng, địa chỉ, điện thoại, email. Mỗi sản phẩm có một mã số, một mô tả sản phẩm, công dụng,
giá bán thống nhất.
Bộ phận phụ trách các đơn đặt hàng gồm 5 nhân viên, mỗi nhân viên có mã số, tên nhân viên, điện tthoại, chức vụ được ghi nhận
trên đơn đặt hàng. Khi đơn đặt hàng được giải quyết, chính nhân viên đó sẽ ghi hoá đơn cho khách và hoá đơn sẽ được chuyển
xuống bộ phận kho để đóng gói và giao hàng cho khách. Khi có vài sản phẩm bị thiếu, cùng với hoá đơn của sản phẩm được gởi,
nhân viên sẽ có thêm ghi chú cho khách rõ. Đối với đơn đặt hàng chưa giải quyết được hết thì phải xếp chờ. Ngay khi bộ phận
kho nhập vào sản phẩm mới thì đơn hàng sẽ được giải quyết ngay theo thứ tự.
Mô hình thực thể - kết hợp của CSDL trên như sau:

LOẠIMH

(0,n)

THUỘC

(1,1)
SẢNPHẨM


(0,n)

(1,n)

CTHĐ

HOÁ ĐƠN

(0,n)

CTĐĐH

(1,1)
(1,n)

ĐƠNĐẶTHÀNG

NHÂN VIÊN
(1,1)

(0,n)

CỦA

(1,1)

(0,n)

PHỤ TRÁCH

CỦA

(1,n)

KHÁCH HÀNG

5


HCMC UNIVERSITY OF PEDAGOGY
FACULTY OF INFORMATICS

Course: Introduction to Database Systems
Duc-Long, Le

Handout #4

(ho04.pdf)

Solutions to Problem
1. Nội dung tự nghiên cứu
KHÔNG CÓ

2. Bài tập
1. Lập bảng tóm tắt các phép toán Đại số Quan hệ

H ướ ng d ẫn: S ố TT, Loạ i, Tên phép toán, Kí hi ệ u, Đị nh nghĩa, Đi ều kiệ n, Ví dụ, Ghi chú

Dựa trên slide ví dụ minh họa (Section04.pdf, slide #87 ) và gợi ý ở phần hoạt động thảo luận tóm tắt lại toàn bộ
các phép toán, lưu ý việc phân loại các nhóm phép toán (tập hợp, quan hệ, kết hợp và gom nhóm, khác).

Các ví dụ để minh hoạ các phép toán nên sử dụng chung một lược đồ CSDL để tạo sự nhất quán và dễ dàng
theo dõi.
Sử dụng các tài liệu của giảng viên (sách tham khảo, giáo trình in, bài giảng Multimedia), tìm kiếm thông tin trên
Internet để tự đọc, tự nghiên cứu, trình bày và thảo luận nhóm (nhóm 2/4).
Khi thảo luận nhóm, cần phải ghi nhận lại thông tin ở dạng báo cáo (trên giấy, file văn bản) để chia sẻ cho mọi
người trong nhóm, trong lớp.
Nội dung tự nghiên cứu nhằm mục đích để mỗi sinh viên sẽ tự học, tự nghiên cứu, sau đó trao đổi và thảo luận
với nhóm để rút ra kiến thức. Nên yêu cầu mỗi sinh viên và nhóm phân công phải thực hiện các nội dung này, tuy
nhiên sẽ không cần phải nộp lại bài báo cáo của nhóm đã thực hiện.
2. Bài tập 1, 2 trang 59~60. Giáo trình Nhập môn CSDL - Nguyễn An Tế
Hướng dẫn: Phần các bài tập lý thuyết dùng ngôn ngữ ĐSQH để viết những câu truy vấn phải thực hiện sau khi

đã đọc kỹ toàn bộ các Slide của chương 4. Sử dụng phương pháp phân tích câu truy vấn theo trình tự như sau:
-

Quan sát sơ đồ mô tả lược đồ CSDL
Cần truy vấn đến những Quan hệ nào ?
Sử dụng những Thuộc tính gì ?
Có cần Điều kiện không ? Nếu có thì Điều kiện là gì ?
Phân thành các bước thực hiện (B.1, B.2, …), sử dụng phép gán và phép đổi tên
Viết hoàn chỉnh câu truy vấn bằng ngôn ngữ ĐSQH

3. Bài tập lý thuyết 1 (thể hiện bằng ngôn ngữ đại số quan hệ và ngôn ngữ phép tính quan hệ biến bộ)
Hướng dẫn: Thực hiện tương tự câu 3. Chú ý câu 2.1~2.5 là câu truy vấn đơn giản, các câu 2.6~2.20 là các câu
truy vấn phức tạp. Đối với các câu truy vấn có sử dụng gộp nhóm, hàm kết hợp, không cần biểu diễn bằng ngữ
phép tính quan hệ)

Yêu cầu:
Thực hiện bài tập và lưu dưới dạng văn bản bằng trình soạn thảo văn bản MS Word .DOC, có thể sử dụng phiên
bản 2003, 2007 tuỳ ý. Bài nộp sẽ là 2 file, 1 file dưới dạng .DOC, và 1 file được chuyển sang dạng .PDF

Lưu văn bản với tên ví dụ như sau: Project04-Nhom01.doc (phần số đầu là thứ tự của bài làm, phần số sau
là số thứ tự nhóm)
Văn bản soạn thảo sử dụng font Unicode, có định dạng Style (Heading), có ghi chú thích đầy đủ và chi tiết cho
các trích dẫn tham khảo, nguồn tài liệu tham khảo, …

1


HCMC UNIVERSITY OF PEDAGOGY
FACULTY OF MATHS AND INFORMATICS

Course: Introduction to Database Systems
Duc-Long, Le - Jan, 2010

Handout #5

(ho05.pdf)

Solutions to Problem
1. Nội dung tự nghiên cứu
Phép tính quan hệ (Relational Calculus)

*** Chương 6. Giáo trình Nhập môn CSDL – Bùi Minh Từ Diễm
*** Part 2 - Chapter 5. An Introduction to Database Systems – C.J.Date

Hướng dẫn: Sử dụng các tài liệu của giảng viên (sách tham khảo, giáo trình in, bài giảng Multimedia), tìm kiếm

thông tin trên Internet để tự đọc, tự nghiên cứu, trình bày và thảo luận nhóm (nhóm 2/4).
Khi thảo luận nhóm, cần phải ghi nhận lại thông tin ở dạng báo cáo (trên giấy, file văn bản) để chia sẻ cho mọi
người trong nhóm, trong lớp.

Nội dung tự nghiên cứu nhằm mục đích để mỗi sinh viên sẽ tự học, tự nghiên cứu, sau đó trao đổi và thảo luận
với nhóm để rút ra kiến thức. Nên yêu cầu mỗi sinh viên và nhóm phân công phải thực hiện các nội dung này, tuy
nhiên sẽ không cần phải nộp lại bài báo cáo của nhóm đã thực hiện.
2. Bài tập
Bài tập lý thuyết 2 (biểu diễn bằng ngôn ngữ đại số quan hệ các câu hỏi truy vấn)
Hướng dẫn: Phần các bài tập lý thuyết dùng ngôn ngữ ĐSQH để viết những câu truy vấn phải thực hiện sau khi đã

đọc kỹ toàn bộ các Slide của chương 4. Sử dụng phương pháp phân tích câu truy vấn theo trình tự đã học
Thực hiện tương tự handout 04. Trong phần bài giảng có một số ví dụ minh hoạ chính là các câu hỏi truy vấn ở
bài tập này, có thể tham khảo để thực hiện tiếp.
Để thực hiện được những câu truy vấn phức tạp, nên tách nhỏ các phần thực hiện, sử dụng thêm phép gán,
phép đổi tên để biểu diễn câu truy vấn dễ dàng hơn.
Ví dụ: Giải yêu cầu truy vấn “Liệt kê tên sinh viên chưa đăng ký học môn Toán rời rạc“
Bước 1: Tìm tất cả MÃ sinh viên học toán rời rạc

R1 

 (
MaSV

TenMH = ‘Toán rời rạc’(SVIEN

KQUA

HPHAN

MHOC) )

Bước 2: Tìm tất cả MÃ sinh viên không học toán rời rạc
R2 




MaSV

(SVIEN) -



MaNV

(R1)

Bước 2: Xuất tên sinh viên
R3 



TenSV

(SVIEN

R1)

Yêu cầu:
Thực hiện bài tập và lưu dưới dạng văn bản bằng trình soạn thảo văn bản MS Word .DOC, có thể sử dụng phiên
bản 2003, 2007 tuỳ ý. Bài nộp sẽ là 2 file, 1 file dưới dạng .DOC, và 1 file được chuyển sang dạng .PDF
Lưu văn bản với tên ví dụ như sau: Project05-Nhom01.doc (phần số đầu là thứ tự của bài làm, phần số sau
là số thứ tự nhóm)
Văn bản soạn thảo sử dụng font Unicode, có định dạng Style (Heading), có ghi chú thích đầy đủ và chi tiết cho

các trích dẫn tham khảo, nguồn tài liệu tham khảo, …


HCMC UNIVERSITY OF PEDAGOGY
FACULTY OF MATHS AND INFORMATICS

Course: Introduction to Database Systems
Duc-Long, Le - Jan, 2010

Handout #6

(ho06.pdf)

Solutions to Problem
1. Nội dung tự nghiên cứu
- Lịch sử phát triển của ngôn ngữ SQL
- Đọc một bài viết về ngôn ngữ SQL (J.Date) theo địa chỉ bên dưới và viết báo cáo thu hoạch



/>
- Đọc một bài viết giới thiệu về SQL (Jim Hoffman) theo địa chỉ bên dưới

www.thinkbrown.com/programming/sql_tutorial.pdf
Hướng dẫn: Đọc hiểu bài báo sau đó trình bày lại theo hiểu biết của minh, không thực hiện theo kiểu dịch sang

tiếng Việt. Có thể xem như là đọc và viết lại tóm tắt, trình bày những ý chính, nội dung trọng tâm của bài báo,
cách thức tiến hành (nếu là qui trình, thao tác), …
Nội dung tự nghiên cứu nhằm mục đích để mỗi sinh viên sẽ tự học, tự nghiên cứu, sau đó trao đổi và thảo luận
với nhóm để rút ra kiến thức. Nên yêu cầu mỗi sinh viên và nhóm phân công phải thực hiện các nội dung này, tuy

nhiên sẽ không cần phải nộp lại bài báo cáo của nhóm đã thực hiện.
2. Bài tập
1. Viết bảng tóm tắt các câu lệnh SQL

H ướng dẫn: S ố TT, Câu lệnh, Cú pháp, Ý nghĩa, Ví dụ, Ghi chú
2. Bài tập lý thuyết 1 (thể hiện bằng ngôn ngữ SQL)
Hướng dẫn: Sử dụng lại các câu truy vấn viết bằng ngôn ngữ đại số quan hệ để viết các câu truy vấn bằng ngôn

ngữ
SQL, chuyển đổi theo cách như sau:




Phép chiếu  các thành phần liệt kê sau từ khoá SELECT
Phép chọn  các điều kiện sau từ khoá WHERE
Phép tích Descarte hoặc phép kết  các thành phần sau từ khoá FROM, hay FROM…. WHERE, hay JOINT

Ví dụ: Với mỗi phòng ban, cho biết tên phòng ban và địa điểm phòng
Viết bằng ngôn ngữ đại số quan hệ



TENPHG, DIADIEM

(PHONGBAN

PHONGBAN.MAPHG = DIADIEM_PHG.MAPHG

DIADIEM_PHG ))


Viết bằng ngôn ngữ SQL

SELECT TENPHG,DIADIEM
FROM DIADIEM_PHG DD,PHONGBAN PB
WHERE DD.MAPHG=PB.MAPHG
Yêu cầu:
Thực hiện bài tập và lưu dưới dạng văn bản bằng trình soạn thảo văn bản MS Word .DOC, có thể sử dụng phiên
bản 2003, 2007 tuỳ ý. Bài nộp sẽ là 2 file, 1 file dưới dạng .DOC, và 1 file được chuyển sang dạng .PDF
Lưu văn bản với tên ví dụ như sau: Project06-Nhom01.doc (phần số đầu là thứ tự của bài làm, phần số sau
là số thứ tự nhóm)
Văn bản soạn thảo sử dụng font Unicode, có định dạng Style (Heading), có ghi chú thích đầy đủ và chi tiết cho
các trích dẫn tham khảo, nguồn tài liệu tham khảo, …


HCMC UNIVERSITY OF PEDAGOGY
FACULTY OF MATHS AND INFORMATICS

Course: Introduction to Database Systems
Duc-Long, Le - Jan, 2010

Handout #7

(ho07.pdf)

Solutions to Problem
1. Nội dung tự nghiên cứu
- SQL trong môi trường lập trình – SQL in programming environment
- Lập trình với ngôn ngữ Transact-SQL – SQL Extensions and Stored Procedures
Nhúng SQL trong Ngôn ngữ Lập trình Transact-SQL (T-SQL)

*** Chương 5 (trang 105~110). Giáo trình Nhập môn CSDL – Bùi Minh Từ Diễm

*** Chapter 7. A First Course in Database Systems – Jeffrey D. Ullman
*** Part II. Chapter 8 – SQL Server 2000: A Beginner’s Guide – D. Petkovic

Từ khoá: Transact-SQL, T-SQL
Ghi chú: có thể tham khảo thêm trong các e-book đã cho trong phần References như:
Microsoft SQL Server 2000 Unleased – Part IV: Transact-SQL
Inside Microsoft SQL Server 2000 - Part III, Chapter 10, 11, 12
Tập trung xem các phần View, Store Procedure, Trigger
Hướng dẫn: Đọc hiểu tài liệu sau đó trình bày lại theo hiểu biết của minh, không thực hiện theo kiểu dịch sang

tiếng Việt. Có thể xem như là đọc và viết lại tóm tắt, trình bày những ý chính, nội dung trọng tâm của bài báo,
cách thức tiến hành (nếu là qui trình, thao tác), …
Nội dung tự nghiên cứu nhằm mục đích để mỗi sinh viên sẽ tự học, tự nghiên cứu, sau đó trao đổi và thảo luận
với nhóm để rút ra kiến thức. Nên yêu cầu mỗi sinh viên và nhóm phân công phải thực hiện các nội dung này, tuy
nhiên sẽ không cần phải nộp lại bài báo cáo của nhóm đã thực hiện.
2. Bài tập
Bài tập lý thuyết 2 (biểu diễn bằng ngôn ngữ SQL)
Hướng dẫn: Sử dụng lại các câu truy vấn viết bằng ngôn ngữ đại số quan hệ để viết các câu truy vấn bằng ngôn

ngữ
SQL, chuyển đổi theo cách như sau:




Phép chiếu  các thành phần liệt kê sau từ khoá SELECT
Phép chọn  các điều kiện sau từ khoá WHERE
Phép tích Descarte hoặc phép kết  các thành phần sau từ khoá FROM, hay FROM…. WHERE, hay JOINT


Yêu cầu:
Thực hiện bài tập và lưu dưới dạng văn bản bằng trình soạn thảo văn bản MS Word .DOC, có thể sử dụng phiên
bản 2003, 2007 tuỳ ý. Bài nộp sẽ là 2 file, 1 file dưới dạng .DOC, và 1 file được chuyển sang dạng .PDF
Lưu văn bản với tên ví dụ như sau: Project07-Nhom01.doc (phần số đầu là thứ tự của bài làm, phần số sau
là số thứ tự nhóm)
Văn bản soạn thảo sử dụng font Unicode, có định dạng Style (Heading), có ghi chú thích đầy đủ và chi tiết cho
các trích dẫn tham khảo, nguồn tài liệu tham khảo, …


HCMC UNIVERSITY OF PEDAGOGY
FACULTY OF MATHS AND INFORMATICS

Course: Introduction to Database Systems
Duc-Long, Le - Jan, 2010

Handout #8

(ho08.pdf)

Solutions to Problem
1. Nội dung tự nghiên cứu
Cài đặt RBTV – Rule, Default, Trigger (sử dụng CSDL Quản lí sinh viên, Quản lí đề án công ty)
*** Chương 7 (trang 123~146). Giáo trình Nhập môn CSDL – Bùi Minh Từ Diễm
*** Chương 3 (trang 88~105). Giáo trình Nhập môn CSDL - Nguyễn An Tế
*** Chapter 6. A First Course in Database Systems – Jeffrey D. Ullman
*** Part II. Chapter 4,13 – SQL Server 2000: A Beginner’s Guide – D. Petkovic
Hướng dẫn: Đọc hiểu tài liệu sau đó trình bày lại theo hiểu biết của minh, không thực hiện theo kiểu dịch sang

tiếng Việt. Có thể xem như là đọc và viết lại tóm tắt, trình bày những ý chính, nội dung trọng tâm của bài báo,

cách thức tiến hành (nếu là qui trình, thao tác), …
Tập trung trình bày các tạo mới, xoá, sửa. Đối với đối tượng Trigger chỉ giới hạn kiểm tra ràng buộc dữ liệu: khi
thêm mới một mẫu tin (một bộ), khi xoá một mẫu tin (một bộ).
Nội dung tự nghiên cứu nhằm mục đích để mỗi sinh viên sẽ tự học, tự nghiên cứu, sau đó trao đổi và thảo luận
với nhóm để rút ra kiến thức. Nên yêu cầu mỗi sinh viên và nhóm phân công phải thực hiện các nội dung này, tuy
nhiên sẽ không cần phải nộp lại bài báo cáo của nhóm đã thực hiện.
2. Bài tập
Bài tập lý thuyết 3 (mô tả các RBTV của các lược đồ CSDL đã cho)
Hướng dẫn: Mô tả thứ tự các RBTV có trong lược đồ CSDL bao gồm: tên RBTV, phát biểu RBTV ở 2 dạng (ngôn ngữ tự
nhiên và ngôn ngữ hình thức), bối cảnh, bảng tầm ảnh hưởng.

Yêu cầu:
Thực hiện bài tập và lưu dưới dạng văn bản bằng trình soạn thảo văn bản MS Word .DOC, có thể sử dụng phiên
bản 2003, 2007 tuỳ ý. Bài nộp sẽ là 2 file, 1 file dưới dạng .DOC, và 1 file được chuyển sang dạng .PDF
Lưu văn bản với tên ví dụ như sau: Project08-Nhom01.doc (phần số đầu là thứ tự của bài làm, phần số sau
là số thứ tự nhóm)
Văn bản soạn thảo sử dụng font Unicode, có định dạng Style (Heading), có ghi chú thích đầy đủ và chi tiết cho
các trích dẫn tham khảo, nguồn tài liệu tham khảo, …

---- HẾT ----

TOÀN BỘ 8 HANDOUTS NÀY
SẼ ĐƯỢC XEM LÀ ĐIỀU KIỆN CẦN ĐỂ ĐƯỢC PHÉP THI THỰC HÀNH
NẾU NHÓM NÀO KÔ HOÀN THÀNH SẼ BỊ TRỪ ĐIỂM HOẶC CẤM THI THỰC HÀNH TÙY THEO MỨC ĐỘ



×