Tải bản đầy đủ (.doc) (22 trang)

tiểu luận bài tập cơ sở dữ liệu nâng cao

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 (603 KB, 22 trang )

BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
MỤC LỤC
Trang
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 3
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
1. Bài 1 – Quản lý thông tin diễn đàn
1.1. Mô tả hệ thống
Để quản lý thông tin về một diễn đàn (Forum) trên một Website, người ta tổ chức
một cơ sở dữ liệu nhằm quản lý các tập thực thể sau:
- THANHVIEN: Tập các thành viên tham gia diễn đàn, có các thuộc tính:
MATV (mã thành viên: thuộc tính khóa), TENTV (tên thành viên) và MATMA (mật
mã).
- BAIVIET: Tập các bài viết, có các thuộc tính MABV (mã bài viết: thuộc tính
khóa), TIEUDE (tiêu đề bài viết) và NOIDUNG (nội dung bài viết).
- CHUDE: Tập các chủ đề của các bài viết, có các thuộc tính MACD (mã chủ đề:
Thuộc tính khóa) và TENCD (tên chủ đề).
Ngoài ra hệ thống này còn hỗ trợ việc quản lý các mối quan hệ GOI, THUOC và
THAOLUAN với ngữ nghĩa như sau:
- (t,b) ∈ GOI: thành viên t có gởi bài viết b.
- (b,c) ∈ THUOC: bài viết b thuộc chủ đề c.
- (b,b’) ∈ THAOLUAN: bài viết b thảo luận về bài viết b’.
Biết rằng:
- Mỗi bài viết phải do đúng một và chỉ một thành viên gởi lên, còn mỗi một thành
viên có thể gởi nhiều bài viết.
- Một bài viết khi được gởi lên diễn đàn chỉ thuộc một chủ đề nào đó và cũng có
những chủ đề không có bất kỳ bài viết nào.
- Mỗi bài viết có thể là một bài thảo luận cho một bài viết đã được gởi trước đó
hoặc cũng có thể không (tức là một bài viết được gởi lên để các thành viên khác tham gia
thảo luận). Hiển nhiên có thể có những bài viết được gởi lên diễn đàn nhưng không có ai
tham gia thảo luận.
1.2. Thiết kế cơ sở dữ liệu xuất phát từ mô hình E-R


1.2.1. Xây dựng mô hình E-R
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 4
THAOLUANVE(0,1)
DUOCTHAOLUANBOI(0,n)
(1,1)
(0,n)
(1,1)
(0,n)
THANHVIEN TENTV MATMA
THANHVIEN
MABV TIEUDE NOIDUNG
BAIVIET
THAOLUAN
GOI
THUOC
CHUDE
MACD
TENCD
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
Mô hình này bao gồm:
• Các tập thực thể: được mô tả chi tiết trong bảng sau
Tên tập thực thể Giải thích
Thuộc tính
Tên Kiểu dữ liệu Giải thích
Ghi
chú
THANHVIEN
Tập tất cả các
Thành viên tham
gia diễn đàn.

MATV String Mã thành viên Khóa
TENTV String Tên thành viên
MATMA String Mật mã
BAIVIET
Tập tất cả các
Bài viết
MABV String Mã bài viết Khóa
TIEUDE String Tiêu đề
NOIDUNG String Nội dung
CHUDE
Tập các Chủ đề
của bài viết
MACD String Mã chủ đề Khóa
TENCD String Tên chủ đề
• Các mối quan hệ:
Tên mối quan hệ Giải thích Phân loại
GOI
(t,b)

GOI: thành viên t gởi bài viết b.
Mối quan hệ nhị
nguyên 1-n
THUOC
(b,c)

THUOC: bài viết b thuộc chủ đề c.
Mối quan hệ nhị
nguyên 1 - n
THAOLUAN
(b,b’)


THAOLUAN: bài viết b thảo luận
về bài viết b’
Mối quan hệ nhị
nguyên 1 - n
1.2.2. Xây dựng mô hình quan hệ
1.3. Thiết kế cơ sở dữ liệu thời gian
1.3.1. Yêu cầu bổ sung
• Tập thực thể THANHVIEN: cần quản lý thời gian sống của các thành viên.
• Thuộc tính MATMA của tập thực thể THANHVIEN: cần quản lý thời gian
giao tác.
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 5
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
• Tập thực thể BAIVIET: cần quản lý thời gian giao tác của các bài viết.
1.3.2. Xây dựng mô hình TimeER
1.3.3. Xây dựng mô hình quan hệ
1.4. Xây dựng mô hình hướng đối tượng
Từ mô hình E-R đã tạo ở trên, ta chuyển sang mô hình hướng đối tượng như sau:
Class THANHVIEN
Properties
MATHANHVIEN: String;
TENTV: String;
MATMA: String;
VIET: set(BAIVIET); {Inverse BAIVIET.GOI}
End THANHVIEN.
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 6
THAOLUANVE(0,1)
DUOCTHAOLUANBOI(0,n)
(1,1)
(0,n)

(1,1)
(0,n)
THANHVIEN TENTV MATMA TT
THANHVIEN LS
MABV TIEUDE NOIDUNG
THAOLUAN
GOI
THUOC
CHUDE
MACD
TENCD
BAIVIET TT
CHUDE
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
Class BAIVIET
Properties
MABV: String;
TIEUDE: String;
NOIDUNG: String;
GOI: THANHVIEN
THUOC: CHUDE
THAOLUANVE: BAIVIET
DUOCTHAOLUANBOI: set(BAIVIET)
End BAIVIET.
Class CHUDE
Properties
MACD: String;
TENCD: String;
GOM: set(BAIVIET); {Inverse BAIVIET.THUOC}
End CHUDE.

NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 7
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
2. Bài 2 – Quản lý bán hàng
2.1. Mô tả hệ thống
Để hỗ trợ việc quản lý mua bán hàng hóa tại một cửa hàng thiết bị điện tử, người
ta xây dựng một cơ sở dữ liệu nhằm giúp quản lý các tập thực thể sau:
- MATHANG: Tập các mặt hàng, có các thuộc tính: MH(mã mặt hàng: thuộc
tính khóa), TENHANG (tên hàng), QC (quy cách), SLHC (số lượng hiện có), GBHT (giá
bán hiện thời)
- CHUNGTU: có các thuộc tính: SOCHUNGTU (số chứng từ: thuộc tính khóa),
NGAYLAP(ngày lập), DANHMUCHANG(danh mục các loại hàng, kèm theo Số lượng
và Đơn giá), HOTEN(họ tên người mua hàng), ĐIACHI(địa chỉ người mua hàng).
- PHIEUTHU(phiếu thu): có các thuộc tính sau: SOPHIEU (mã số phiếu: thuộc
tính khóa), NGAYTHU (ngày thu tiền), SOCHUNGTU(số chứng từ), SOTIEN(số tiền
thu).
Ngoài ra cần quản lý các thông tin như sau:
- Khi bán hàng cho khách hàng, người bán hàng sẽ tiến hành lập chứng từ bán
hàng.
- Khách hàng khi mua hàng không cần phải thanh toán ngay toàn bộ số tiền của
chứng từ mà có thể trả thành nhiều đợt. Mỗi khi khách hàng thanh toán tiền, phải tiến
hành lập Phiếu thu tiền cho khách hàng.
2.2. Thiết kế cơ sở dữ liệu xuất phát từ mô hình E-R.
2.2.1. Xây dựng mô hình E-R
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 8
MATHANG
M
H
TENHANG
QC
SLHC

GBHT
NGAYTHU
PHIEUTHU
SOPHIE
U
SOCHUNGT
U
SOTIEN
BANHAN
G
(1,n)
(1,n)
(1,n)
THANHTOA
N
(1,n)
SOCHUNGTU
NGAYLAP
DANHMUCHANG
CHUNGTU
SL
DONGIA
HOTEN
DIACHI
MATHANG
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
• Các tập thực thể: được mô tả chi tiết trong bảng sau
STT
Tập thực
thể

Giải
thích
Tập thuộc
Tên thuộc tính KDL
Giải
thích
Ghi
chú
1 PHIEUTHU
Tập tất
cả các
phiếu thu
SOPHIEU String Số phiếu Khóa
SOCHUNGTU String
Tên nhà
cung cấp
NGAYTHU Date/Time
Ngày
nhập
SOTIEN Real Số tiền
2 MATHANG
Tập tất
cả các
mặt hàng
MH String
Mã mặt
hàng
Khóa
TENHANG String Số phiếu
SLHC Real

Số lượng
hiên có
QC String Quy cách
GBHT Real
Giá bán
hiện thời
3 CHUNGTU
Tập tất
cả các
chứng từ
SOCHUNGTU String
Số chứng
từ
Khóa
NGAYLAP Date Ngày lập
DANHMUCHANG
Danh
mục hàng
DIACHI String
Địa chỉ
người
mua hàng
HOTEN String Họ tên
* Các mối quan hệ:
Tên mối quan hệ Giải thích Phân loại
BANHANG
(a,b)




BANHANG
Mặt hàng a được bán thông qua chứng
từ b
Mối quan hệ nhị
nguyên n - n
THANHTOAN
(c,d)


THANHTOAN
Phiếu thu d thanh toán cho chứng từ c
Mối quan hệ nhị
nguyên n - n
2.2.2. Xây dựng mô hình quan hệ
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 9
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
2.3. Thiết kế cơ sở dữ liệu thời gian
2.3.1. Yêu cầu bổ sung
Tập thực thể MATHANG: cần quản lý thời gian sống và giao tác của các mặt
hàng.
Mối quan hệ BANHANG cần quản lý thời gian giao tác.
2.3.2. Xây dựng mô hình TimeER
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 10
MATHANG LT
M
H
TENHANG
QC
SLHC
GBHT

NGAYTHU
PHIEUTHU
SOPHIE
U
SOCHUNGT
U
SOTIEN
BANHANG
TT
(1,n)
(1,n)
(1,n)
THANHTOA
N
(1,n)
SOCHUNGTU
NGAYLAP
DANHMUCHANG
CHUNGTU
SL
DONGIA
HOTEN
DIACHI
TENHANG
DANHMUCHANG
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
2.3.3. Xây dựng mô hình quan hệ thời gian
2.4. Xây dựng mô hình hướng đối tượng
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 11
Class MATHANG

Properties
MH: String;
TENHANG: String;
QC:String;
SLHC: real;
GBHT: real;
BANHANG: Set(MATHANG);
End MATHANG.
Class CHUNGTU
Properties
SOCHUNGTU: String;
NGAYLAP: Date;
DANHMUCHANG:Set(Tuple(TENHANG:String; SL:integer;
DONGIA:Real));
HOTEN: String;
DIACHI: String;
End CHUNGTU
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 12
Class PHIEUTHU
Properties
SOPHIEU: String;
NGAYTHU: Date;
SOTIEN: real;
SOCHUNGTU: String;
THANHTOAN: Set(CHUNGTU);
End PHIEUTHU
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
Bài 3: Quản lý học viên trung tâm tin học
3.1 Mô tả hệ thống:

Để quản lý việc các học viên ghi danh vào học các lớp do trung tâm tổ chức,
người ta xây dựng một cơ sở dữ liệu gồm các tập thực thể sau:
- LOP: tập các lớp, có các thuộc tính: MALOP (mã lớp), TENLOP (tên lớp),
NGAYKG (ngày khai giảng), HP (học phí).
- HOCVIEN: MAHV (mã học viên), TENHV (tên học viên), NGAYSINH (ngày
sinh)
- PHIEUTHU: MAPHIEU (mã phiếu), NGAYTHU (ngày thu), SOTIEN (số
tiền).
- CHUNGCHI: MACC (mã chứng chỉ), TENCC (tên chứng chỉ)
Ngoài ra cần quản lý các thông tin như sau:
- Mỗi lớp học được tổ chức để đào tạo cho đúng một loại chứng chỉ nhất định.
- Tại một thời điểm bất kỳ, một học viên có thể đăng ký học tại nhiều lớp khác
nhau.
- Sau khi đăng ký học tại một lớp nào đó, học viên có thể đóng học phí trong
nhiều lần. Việc đóng học phí được quản lý dựa trên các phiếu thu.
3.2 Mô hình ER
3.2.1 Xây dựng mô hình ER
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 13
MAHV TENHV NGAYSINH
HOCVIEN
(1,n)
NGAYK
G
(1,n)
LOP
MALO
P
TENLO
P
HP

HO
C
CHUNGCHI
(1,1)
(1,n)
DANGK
Y
NAPTIEN
(1,n)
(1,1)
MAPHIE
U
NGAYTH
U
SOTIE
N
PHIEUTHU
MACC
TENC
C
T
G
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
Mô hình này bao gồm:
• Các tập thực thể: được mô tả chi tiết trong bảng sau
Tên tập
thực thể
Giải thích
Thuộc tính
Tên Kiểu dữ liệu Giải thích

Ghi
chú
LOP Tập tất cả các lớp
MALOP String Mã lớp Khóa
TENLOP String Tên lớp
NGAYKG DateTime
Ngày khai
giảng
HP Real Học phí
HOCVIEN
Tập tất cả các học
viên
MAHV String Mã học viên Khóa
TENHV String Tên học viên
NGAYSINH DateTime Ngày sinh
PHIEUTHU
Tập tất cả các phiếu
thu
MAPHIEU String Mã phiếu
NGAYTHU DateTime Ngày thu Khóa
SOTIEN Real Số tiền
CHUNGCHI
Tập tất cả các
chứng chỉ
MACC String Mã chứng chỉ Khóa
TENCC String Tên chứng chỉ
• Các mối quan hệ:
Tên mối quan hệ Giải thích Phân loại
DANGKY
(a,b)



DANGKY
Học viên a đăng ký học lớp b
Mối quan hệ nhị
nguyên n-n
HOC
(c,d)

HOC
Lớp c đào tạo chứng chỉ d
Mối quan hệ nhị
nguyên 1 - n
NAPTIEN
(e,g)


NAPTIEN
Đăng ký e có nạp tiền được ghi trong
phiếu thu g
Mối quan hệ nhị
nguyên 1 - n
3.2.2 Xây dựng mô hình quan hệ
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 14
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
3.3 Mô hình Time ER
3.3.1 Yêu cầu bổ sung
- Tập thực thể HOCVIEN cần quản lý thời gian sống và thời gian giao tác.
- Mối quan hệ DANGKY (là mối quan hệ giữa 2 tập thực thể LOPHOC và
HOCVIEN): cần quản lý thời gian giao tác.

3.3.2 Xây dựng mô hình Time ER
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 15
(1,n)
TG
MAHV TENHV NGAYSINH
HOCVIEN LT
NGAYK
G
(1,n)
LOP
MALO
P
TENLO
P
HP
HO
C
CHUNGCHI
(1,1)
(1,n)
DANGKY
TT
NAPTIEN
(1,n)
(1,1)
MAPHIE
U
NGAYTHU
SOTIE
N

PHIEUTHU
(1,n)
MACC
TENC
C
T
G
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
3.3.3 Xây dựng mô hình quan hệ thời gian
3.4 Mô hình hướng đối tượng
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 16
Class LOP
Properties
MALOP: String;
TENLOP: String;
NGAYKG: DateTime;
HOCPHI: Real;
DANGKY: Set
(HOCVIEN);
End LOP.
Class HOCVIEN
Properties
MAHV: String;
TENHV: String;
NGAYSINH: DateTime;
End HOCVIEN.
Class PHIEUTHU
Properties
SOPHIEU: String;
SOTIEN: Real;

NGAYTHU: DateTime;
NAPTIEN: DANGKY;
End PHIEUTHU.
Class CHUNGCHI
Properties
MACC: String;
TENCC: String;
HOC: Set(LOP);
End CHUNGCHI.
Class DANGKY
Properties
Lop: LOP;
Hocvien: HOCVIEN;
End DANGKY.
TG
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
Bài 4 – Quản lý đề tài nghiên cứu khoa học
4.1. Mô tả hệ thống
Trường ĐHKH cần tổ chức một CSDL để quản lý các đề tài nghiên cứu khoa học
của sinh viên. Cho biết một số thông tin liên quan như sau:
- Mỗi một đề tài khi đăng ký thực hiện được cấp một mã số duy nhất. Ngoài ra,
mỗi một đề tài còn có tên đề tài và lĩnh vực nghiên cứu mà đề tài thực hiện.
- Mỗi một đề tài phải do một giáo viên hướng dẫn. Thông tin về mỗi giáo viên
bao gồm mã giáo viên, họ tên, học hàm, học vị.
Thông tin về sinh viên được tổ chức trong CSDL bao gồm mã sinh viên, họ tên và
tên lớp mà sinh viên đang theo học. Mỗi một đề tài phải có ít nhất một sinh viên tham gia
và có không quá 5 sinh viên cùng tham gia trong một đề tài, trong đó phải có một sinh
viên là người chủ trì đề tài (trưởng nhóm làm đề tài).
4.2. Thiết kế cơ sở dữ liệu xuất phát từ mô hình E-R
4.2.1. Xây dựng mô hình E-R

Từ thông tin mô tả hệ thống, ta xây dựng mô hình E-R tương ứng như sau:
Mô hình này bao gồm:
• Các tập thực thể: được mô tả chi tiết trong bảng sau:
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 17
DETAI
Huongda
n
GIAOVIEN
Thuchie
n
SINHVIEN NHOMTRUONG
(1,1)
(1,n)
(1,5)
(1,1)
MaDT
TenDT
Linhvu
c
MaGV Hoten
Hocham Hocvi
MaSV Hoten Tenlop MaDT
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
STT Tập thực thể Giải thích
Tập thuộc
Tên thuộc
tính
KDL Giải thích
Ghi
chú

1 NHOMTRUONG
Nhóm
trưởng
MaDT String Mã đề tài Khóa
2
GIAOVIEN Giáo viên
hướng dẫn
MaGV String
Mã giáo
viên
Khóa
HotenGV String Họ và tên
Hocham String Học hàm
Hocvi String Học vị
3 SINHVIEN
Sinh viên
thực hiện đề
tài
MaSV String
Mã sinh
viên
Khóa
HotenSV String Họ và tên
Tenlop String Tên lớp
4 DETAI
Danh mục
đề tài
NCKH
MaDT String Mã đề tài Khóa
TenDT String Tên đề tài

Linhvuc String Lĩnh vực
• Các mối quan hệ:
Tên mối quan hệ Giải thích Phân loại
HUONGDAN
(a,b)


HUONGDAN
Giáo viên b hướng dẫn đề tài a
Mối quan hệ nhị
nguyên 1- n
THUCHIEN
(c,d)

THUCHIEN
Sinh viên c thực hiện đề tài d
Mối quan hệ nhị
nguyên 1- 1
4.2.2. Xây dựng mô hình quan hệ
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 18
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
4.3. Thiết kế cơ sở dữ liệu thời gian
4.3.1. Yêu cầu bổ sung
Từ thông tin mô tả hệ thống ban đầu, ta tiến hành thiết kế cơ sở dữ liệu thời gian
với các yêu cầu bổ sung như sau:
- Cần quản lý thời gian sống của các đề tài.
- Thuộc tính LINHVUCNGHIENCUU của tập thực thể DETAI: cần quản lý
thời gian hợp lệ.
- Tại một thời điểm, một đề tài phải do một và chỉ một giáo viên hướng dẫn,
nhưng giáo viên hướng dẫn cho một đề tài có thể thay đổi theo thời gian. Cần quản lý vấn

đề này.
4.3.2. Xây dựng mô hình TimeER
4.3.3. Xây dựng mô hình quan hệ thời gian
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 19
SINHVIEN NHOMTRUONG
Thuchien
DETAI LS GIAOVIEN
Huongdan
VT
(1,1)
(1,n)
(1,5)
(1,1)
MaDT
TenDT
Linhvuc
VT
MaGV Hoten
Hocham Hocvi
MaSV Hoten Tenlop MaDT
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
4.4. Xây dựng mô hình hướng đối tượng
Từ mô hình E-R đã tạo ở trên, ta chuyển sang mô hình hướng đối tượng như sau:
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 20
Class SINHVIEN
Properties
MaSV:string;
HotenSV:string;
Tenlop: string;
Thuchien: DETAI;

End SINHVIEN.
Class NHOMTRUONG
Inherits: SINHVIEN
Properties
MaDT:string;
End NHOMTRUONG.
Class DETAI
Properties
MaDT:string;
TenDT:string;
Linhvuc:string;
Thuchien: set (SINHVIEN);
End DETAI.
Class GIAOVIEN
Properties
MaGV:string;
HotenGV:string;
Hocham:string;
Hocvi:string;
Huongdan: set (DETAI);
End GIAOVIEN.
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
5. Bài 5 – Chuẩn bị cho hội thảo khoa học
5.1. Mô tả hệ thống
Người ta cần phải tổ chức một cơ sở dữ liệu để chuẩn bị cho một hội thảo khoa
học. Hội thảo sẽ được chia thành các tiểu ban khác nhau (thông tin về mỗi tiểu ban bao
gồm: tên tiểu ban, tên người điều khiển và tên thư ký). Các tác giả muốn tham gia báo cáo
trong hội thảo phải gởi trước bản tóm tắt của báo cáo (bao gồm tên và tóm tắt báo cáo)
đến một ban tổ chức (BTC). Một tác giả có thể gởi nhiều báo cáo đến BTC và mỗi một
báo cáo có thể là của nhiều tác giả. Sau khi nhận được bản tóm tắt báo cáo, BTC phải tiến

hành bố trí các báo cáo vào trong các tiểu ban (mỗi một báo cáo chỉ được trình bày ở một
tiểu ban nhất định).
5.2. Thiết kế cơ sở dữ liệu xuất phát từ mô hình E-R
5.2.1. Xây dựng mô hình E-R
Từ thông tin mô tả hệ thống, ta xây dựng mô hình E-R tương ứng như sau:
Mô hình này bao gồm:
• Các tập thực thể: được mô tả chi tiết trong bảng sau:
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 21

TenTG
TACGIA
TrinhBay
Gui
TIEUBAN
(1,n)
(1,n)
(1,1)
(1,n)
MaTG

TenBC

TomTatBC

TenTB

TenNĐK
TenTK
BAIBAOCAO
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO

STT Tập thực thể
Giải
thích
Tập thuộc
Tên thuộc tính KDL Giải thích Ghi chú
1 TACGIA Tác giả
MaTG String Mã tác giả Khóa
TenTG String Tên tác giả
2 BAIBAOCAO
Bài báo
cáo
TenBC String Tên báo cáo Khóa
TomTatBC String
Tóm tắt báo
cáo
3 TIEUBAN Tiểu ban
TenTB String Tên tiểu ban Khóa
TenNDK String
Tên người
điều khiển
TenTK String Tên thư ký
* Các mối quan hệ:
Tên mối quan hệ Giải thích Phân loại
GUI
(tg, b)

Gui: tác giả tg gửi bài báo cáo
b.
Mối quan hệ nhị
nguyên 1- n

TRINHBAY
(b, tb)

TrinhBay: bài báo cáo b được
trình bày ở tiểu ban tb.
Mối quan hệ nhị
nguyên 1- 1
5.2.2. Xây dựng mô hình quan hệ
Từ mô hình E-R ở trên, ta chuyển sang mô hình quan hệ như sau:
5.3. Thiết kế cơ sở dữ liệu thời gian
5.3.1. Yêu cầu bổ sung
Từ thông tin mô tả hệ thống ban đầu, ta tiến hành thiết kế cơ sở dữ liệu thời gian
với yêu cầu bổ sung như sau:
• Cần quản lý thời gian xảy ra sự kiện: một báo cáo được trình bày ở một tiểu
ban nào đó.
5.3.2. Xây dựng mô hình TimeER
Từ những yêu cầu bổ sung ở trên, ta xây dựng mô hình TimeER tương ứng như
sau:
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 22
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
5.3.3. Xây dựng mô hình quan hệ thời gian
Từ mô hình TimeER, ta chuyển sang mô hình quan hệ như sau:
Trong đó, quan hệ: TR(TRINHBAY) là quan hệ thời gian.
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 23


TenTG
TACGIA
TrinhBay VT
Gui BT

TIEUBAN
(1,n)
(1,n)
(1,
1
)
(1,n)
MaTG

TenBC

TomTatBC

T
enTB


TenNDK VT
Ten
TK
BAIBAOCAO
BÀI TẬP: CƠ SỞ DỮ LIỆU NÂNG CAO
5.4. Xây dựng mô hình hướng đối tượng
Từ mô hình E-R đã tạo ở trên, ta chuyển sang mô hình hướng đối tượng như sau:
NHÓM THỰC HIỆN: NHÓM 4 – LỚP KHMT K2011-2013 Trang 24
Class TACGIA
properties
MaTG: String;
TenTG: String;
GUI: Set(BAIBAOCAO)

End TACGIA.
Class BAIBAOCAO
properties
TenBC: String;
TomTatBC: String;
TrinhBay: TIEUBAN;
End BAIBAOCAO.
Class TIEUBAN
properties
TenTB: String;
TenNDK: String;
TenTK: String;
TrinhBayBoi: set(BAIBAOCAO); {Inverse BAIBAOCAO.TrinhBay}
End TIEUBAN.

×