CSDL nâng cao, thiết kế phân tích, bài toán Xây dựng CSDL Thư viện quốc gia và Ứng dụng CSDL nâng cao, thiết kế phân tích, bài toán Xây dựng CSDL Thư viện quốc gia và Ứng dụng CSDL nâng cao, thiết kế phân tích, bài toán Xây dựng CSDL Thư viện quốc gia và Ứng dụng CSDL nâng cao, thiết kế phân tích, bài toán Xây dựng CSDL Thư viện quốc gia và Ứng dụng
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA CÔNG NGHỆ THÔNG TIN
BÀI TẬP LỚN CSDL NÂNG CAO
ĐỀ TÀI: XÂY DỰNG HỆ THỐNG QUẢN LÝ
THƯ VIỆN QUỐC GIA
Giảng viên hướng dẫn : TS NGUYỄN ĐÌNH HÓA
Vũ Văn Huy Nguyễn Thị Thái
Lê Thanh Của
Hà Nội, tháng 12 năm 2017
Trang 2MỤC LỤC
I KHẢO SÁT HỆ THỐNG QUẢN LÝ THƯ VIỆN QUỐC GIA 3
1.1 Khảo sát hiện trạng 3
1.1.1 Tổng quan 3
1.1.2 Mượn sách 3
1.1.3 Trả sách 4
1.2 Báo cáo thống kê 4
II PHÂN TÍCH THIẾT KẾ HỆ THỐNG 4
2.1 Mô hình phân cấp chức năng 4
2.2 Các chức năng chính của hệ thống 5
2.2.1 Nhóm chức năng quản lý đầu sách 5
2.2.2 Nhóm chức năng quản lý thông tin độc giả 5
2.2.3 Nhóm chức năng quản lý thông tin mượn – trả sách 5
2.2.4 Báo cáo thống kê 5
2.3 Mô hình ERD 5
2.3.1 Phân tích thực thể 5
2.3.2 Mô hình ERD 6
2.3.3 Giải thích mối quan hệ giữa các thực thể 7
2.3.4 Mô hình chuẩn hóa Cơ sở dữ liệu 7
III XÂY DỰNG CƠ SỞ DỮ LIỆU 9
3.1 Lựa chọn Hệ quản trị Cơ sở dữ liệu 9
3.2 Danh sách các bảng cùng thuộc tính 10
Trang 3I KHẢO SÁT HỆ THỐNG QUẢN LÝ THƯ VIỆN QUỐC GIA
1.1.Khảo sát hiện trạng
1.1.1 Tổng quan
Thư viện quốc gia có nhu cầu quản lý việc sử dụng sách của độc giả Sau đây là phần mô tả theo các nghiệp vụ hàng ngày của thư viện
Người quản lý Thư viện (thủ thư) quản lý các đầu sách, mỗi đầu sách có một mã sách để phân biệt với các đầu sách khác Các đầu sách có cùng một thể loại: Tin học, Chính trị… sẽ có
Mã loại sách để phân biệt với các loại sách khác Một đầu sách có thể có nhiều bản sao (số lượng) ứng với đầu sách đó Mỗi đầu sách có một trạng thái cho biết cuốn sách đó có thể cho mượn hay không
Để trở thành độc giả của Thư viện, thì mỗi bạn đọc phải đăng ký và cung cấp các thông tin
cá nhân như: Họ tên, ngày sinh, địa chỉ, nơi công tác và địa chỉ email, số điện thoại (nếu có), kèm theo 2 ảnh (3x4) với lệ phí mà Thư viện quy định Sau đó người quản lý sẽ lưu thông tin vào trong sổ dữ liệu quản lý độc giả của Thư viện rồi giao cho độc giả 1 giấy hẹn ngày đến lấy thẻ độc giả Thư viện, ngày đó thủ thư sẽ cấp cho bạn 1 thẻ từ, trên đó có mã số thẻ chính là mã độc giả để phân biệt độc giả này với độc giả khác Thẻ này có giá trị theo tháng hoặc theo năm
do Thư viện quy đinh Mỗi tuần trước ngày hết hạn thẻ, thủ thư sẽ thông báo cho bạn đọc biết để đến gia hạn thêm
Thư viện làm các áp phích sách gồm các thông tin sau: mã sách, tên sách, loại sách, tên tác giả, nhà xuất bản, năm xuất bản, số trang, số lượng, tóm tắt nội dụng Độc giả có thể tra cứu tìm kiếm sách bằng thông tin liên quan tới sách qua phích sách
1.1.2 Mượn sách
Độc giả muốn đăng ký mượn sách thì tra cứu phích sách rồi ghi vào phiếu yêu cầu mượn Khi mượn sách độc giả phải sử dụng thẻ Thư viện chứa các thông tin như: mã thẻ, họ tên, ngày sinh, địa chỉ, email, số điện thoại và phiếu mượn đến quầy gặp trực tiếp thủ thư, thủ thư nhập thông tin độc giả đó và chương trình hiện thị thông tin liên quan về bạn đọc đó như: Họ tên, ngày sinh, địa chỉ, email, số điện thoại và ngày hết hạn thẻ Nếu thẻ nào sắp hết hạn hay đã hết hạn thì chương trình cũng sẽ cảnh báo thẻ đó Ngoài ra, chương trình còn hiển thị thông tin về việc mượn trả sách của độc giả bao gồm: tên sách, ngày trả, ngày đến hạn phải trả sách theo thứ
tự sách nào mượn lâu nhất trước Những sách nào quá hạn mượn hay gần đến hạn sẽ được đánh dấu để làm nổi bật thông tin cho thủ thư biết
Nếu tất cả thông tin về thẻ của độc giả hợp lệ thì thủ thư sẽ cho mượn sách và đưa cho độc giả phiếu mượn sách đồng thời thủ thư sẽ nhập thông tin vào sổ mượn như: mã phiếu mượn, tên độc giả, tên sách…Sau đó chương trình sẽ xuất hiện thông tin về hạn trả Mỗi cuốn sách có thể được mượn theo ngày hoặc theo tháng do người quản lý quy định
Nếu độc giả muốn mượn một cuốn sách, nhưng cuốn sách này bạn đọc khác đang mượn, thì người này có thể đăng ký và chờ Khi cuốn sách đó được trả về, thì thủ thư sẽ thông báo đến bạn đọc đăng ký trước nhất trong danh sách những bạn đọc đang chờ mượn sách đó Thủ thư tại một thời điểm bất kỳ, có thể xác định có bao nhiêu cuốn ứng với một loại sách đang được mượn hay đang đăng ký
Trang 41.1.3 Trả sách
Khi sách được trả, thủ thư nhập số phiếu mượn, thông tin liên quan tới độc giả, sách đó hiển
thị và ngày đến hạn trả sách xuất hiện trên màn hình
Thủ thư kiểm tra tình trạng sách, nếu có hư hại, mất thì độc giả nộp tiền phạt theo quy định
Sau khi độc giả trả sách việc trả sách được ghi nhận vào dòng ngày trả trên phiếu mượn, thủ thư
sẽ cập nhật lại trạng thái của đầu sách và lưu lại phiếu mượn để theo dõi
Nếu quá ngày đến hạn trả sách (hạn trả) mà sách vẫn chưa được trả, thì thủ thư sẽ gửi thông
báo nhắc nhở độc giả đó trả sách
1.2.Báo cáo thống kê
Để quản lý Thư viện được tốt thì thủ thư thường muốn biết các thông tin thông kê sau như:
Có bao nhiêu phiếu mượn sách của Thư viện trong năm qua?
Những cuốn sách nào hay được mượn?
Báo cáo số lượng mượn trong ngày
II PHÂN TÍCH THIẾT KẾ HỆ THỐNG
2.1.Mô hình phân cấp chức năng
2.2.
Các
chức năng chính của hệ thống
2.2.1 Nhóm chức năng quản lý đầu sách
QL Độc giả
Thêm thông
tin độc giả
Tạo thẻ thư
viện
Cập nhật
thông tin
độc giả
QL Sách
Thêm sách
Sửa thông tin sách Xóa sách
Thanh lý
QL Nhân viên
Thêm NV
Sửa NV
Xóa NV
QL Mượn - trả
Kiểm tra thẻ thư viện
Kiểm tra sách
Lập phiếu mượn Kiểm tra tình trạng sách Ghi nhận trả
Lập phiếu nhắc nhở
Báo cáo thống kê
Thống kê số lượng sách
Báo cáo số lượng mượn trong ngày
Báo cáo nhanh
ca trực
Quản lý hoạt động của thư viện sách
Trang 5 Xem danh mục đầu sách hiện có
Thêm, sửa, xóa thông tin đầu sách
Cập nhật thông tin đầu sách
2.2.2 Nhóm chức năng quản lý thông tin độc giả
Xem danh sách độc giả
Thêm, sửa, xóa thông tin độc giả
Cập nhật thông tin độc giả
2.2.3 Nhóm chức năng quản lý thông tin mượn – trả sách
Xem thông tin mượn – trả sách hiện thời
Thêm, sửa, xóa thông tin mượn – trả sách
Cập nhật thông tin sách đến hạn trả
2.2.4 Báo cáo thống kê
Thống kê tổng số lượt mượn trong tháng
Thống kê số lượng độc giả đăng ký mới trong tháng
Thống kê độc giả hết hạn thẻ thư viện
2.3.Mô hình ERD
2.3.1 Phân tích thực thể
Thực thể DOCGIA: Mỗi thực thể tượng trưng cho một độc giả trong quy trình mượn –
trả sách ở thư viện Các thuộc tính: MaDocGia, HoTen, NgaySinh, DiaChi,, GioiTinh Email, SoDienThoai, NgayTaoThe, NgayHenHan, TinhTrangThe
Thực thể LOAIDOCGIA: Mỗi thực thể tượng trương cho một loại đọc giả trong quy
trình mượn sách ở thư viện Các thuộc tính: MaLoaiDocGia, TenLoaiDocGia
Thực thể PHIEUMUON: Mỗi thực thể tượng trưng cho một phiếu mượn Các thuộc
tính: MaPhieuMuon, NgayMuon, NgayTraDuKien, NgayTra, MaSachMuon
Thực thể SACH: Mỗi thực thể tượng trưng cho một cuốn sách Các thuộc tính: MaSach,
TenSach, TacGia, NamXuatBan, NgayNhap, TinhTrangSach, NamXuatBan, NhaXuatBan,
Thực thể LOAISACH: Mỗi thực thể tượng trương cho một loại sách, các thuộc tính:
MaLoaiSach, TenTheLoai
Thực thể THAMSO: Chứa các quy định đối với việc mượn trả sách ở thư viện Các
thuộc tính: SoSachMuonToiDa, SoNgayMuonToiDa
Trang 62.3.2 Mô hình ERD
DOCGIA
muon
PHIEUMUON
1
N
SACH thuoc
1
N
LOAISACH
thuoc
1 N
LOAIDOCGIA thuoc
MaDocGia HoTen
NgaySinh
GioiTinh
DiaChi
NgayTaoThe
NgayHetHan
SoSachDang
Muon
TinhTrangTh e
MaPhieuMu
on
MaPhieuMu
on
NgayTraDuK
ien
NgayTra
MaSachMuo
n
MaSach TenSach TacGia
NamXuatBa n
NhaXuatBan
NhaXuatBan TinhTrang SoLuong
MaLoaiSach
TenLoaiSach
MaLoaiDoc Gia
TenLoaiDoc Gia
THAMSO
SoSachMuo
nToiDa
SoNgayMuo nToiDa
Trang 72.3.3 Giải thích mối quan hệ giữa các thực thể
đăng nhập duy nhất NHANVIEN Nhân viên quản lý thư viện trong
hệ thống SACH Bảng lưu giữ thông tin về sách
trong thư viện PHIEUMUON Phiếu mượn sách: thể hiện mối
quan hệ giữa sách được mượn với người mượn sách
mượn sẽ lưu giữ thông tin mượn của nó
THETHUVIEN Thẻ đăng kí tài khoản mượn sách
của thư viện PHIEUNHACTR
A
Mỗi lần mượn sách thì hệ thống sẽ lưu giữ kèm thông tin ngày trả sách để nhắc người mượn sách đến hẹn trả sách
NHANVIEN PHIEUNHACTR
A 1-n Mỗi nhân viên quản lý nhiềuphiếu nhắc trả sách SACH SACHMUON 1-n Mỗi cuốn sách có thể được đem
cho mượn nhiều lần Các lần mượn sách đều được lưu lại
PHIEUMUON SACHMUON 1-n Mỗi phiếu mượn sách có thể bao
gồm nhiều sách trong cùng một phiếu
2.3.4 Mô hình chuẩn hóa Cơ sở dữ liệu
NHANVIEN
MaNV
TenNV
NgaySinh
NgayVaoLam
GioiTinh
ChucvuNV
DiachiNV
DienThoai
TAIKHOAN
TenDN
Matkhau
THETHUVIEN
MaThe
NHANVIEN
MaNV TenNV NgaySinh NgayVaoLam GioiTinh ChucvuNV DiachiNV DienThoai
TAIKHOAN
TenDN Matkhau
THETHUVIEN
MaThe
NHANVIEN
MaNV TenNV NgaySinh NgayVaoLam GioiTinh ChucvuNV DiachiNV DienThoai
TAIKHOAN
TenDN Matkhau
THETHUVIEN
MaThe
NHANVIEN
MaNV TenNV NgaySinh NgayVaoLam GioiTinh ChucvuNV DiachiNV DienThoai
TAIKHOAN
TenDN Matkhau
THETHUVIEN
MaThe
Trang 8Gioitinh
NgaySinh
DiachiSV
DienthoaiSV
NgayTao
NgayHetHan
PHIEUNHACTRA
MaPNT
MaThe
NgayLap
DonGiaPhat
MaNV
MaSach
SACH
MaSach
TenSach
TheLoai
TinhTrang
SoLuong
NXB
NamXB
TG
Hinh
SACHMUON
MaPM
MaSach
Tinhtrang
SLSachMuon
NgayTra
PHIEUMUON
MaPM
MaSach
MaThe
NgayMuon
TenSV Gioitinh NgaySinh DiachiSV DienthoaiSV NgayTao NgayHetHan
PHIEUNHACTRA
MaPNT MaThe NgayLap DonGiaPhat MaNV MaSach
SACH
MaSach TenSach TheLoai TinhTrang SoLuong NXB NamXB TG Hinh
SACHMUON
MaPM MaSach Tinhtrang SLSachMuon NgayTra
PHIEUMUON
MaPM MaSach MaThe NgayMuon
TenSV Gioitinh NgaySinh DiachiSV DienthoaiSV NgayTao NgayHetHan
PHIEUNHACTRA
MaPNT MaThe NgayLap DonGiaPhat MaNV MaSach
SACH
MaSach TenSach TheLoai TinhTrang SoLuong NXB NamXB TG Hinh
SACHMUON
MaPM MaSach Tinhtrang SLSachMuon NgayTra
PHIEUMUON
MaPM MaSach MaThe NgayMuon
TenSV Gioitinh NgaySinh DiachiSV DienthoaiSV NgayTao NgayHetHan
PHIEUNHACTRA
MaPNT MaThe NgayLap DonGiaPhat MaNV MaSach
SACH
MaSach TenSach TheLoai TinhTrang SoLuong NXB NamXB TG Hinh
SACHMUON
MaPM MaSach Tinhtrang SLSachMuon NgayTra
PHIEUMUON
MaPM MaSach MaThe NgayMuon
Trang 9III XÂY DỰNG CƠ SỞ DỮ LIỆU
3.1 Lựa chọn Hệ quản trị Cơ sở dữ liệu
Nhóm có kinh nghiệm làm việc với Hệ quản trị cơ sở dữ liệu MSSQL và Tool quản trị CSDL Navicat Do đó để thuận lợi nhất cho việc xây dựng hệ thống, các thành viên trong nhóm
đã nhất trí lựa chọn MSSQL Server phiên bản 2008 và Tool quản lý Cơ CSDL Navicat phiên bản 11
3.2.Danh sách các bảng cùng thuộc tính
SACH
MaSach CHAR(5) PRIMARY KEY,
TenSach NVARCHAR(200) NOT NULL,
Trang 10TheLoai NVARCHAR(50) NOT NULL, TinhTrang NVARCHAR(20),
SoLuong INT NOT NULL,
NXB NVARCHAR(200)NOT NULL, NamXB NVARCHAR(20) NOT NULL,
TG NVARCHAR(200) NOT NULL,
NHANVIEN
MaNV CHAR(5) PRIMARY KEY, TenNV NVARCHAR(100) NOT NULL, NgaySinh DATETIME NOT NULL,
NgayVaoLam DATETIME NOT NULL,
Gioitinh Bit NOT NULL,
ChucVuNV NVARCHAR(50) NOT NULL, DiaChiNV NVARCHAR(200) NOT NULL, DienThoai NVARCHAR(20)
THETHUVIEN
MaThe CHAR(5) PRIMARY KEY, TenSV NVARCHAR(100) NOT NULL, Gioitinh Bit NOT NULL,
NgaySinh DATETIME,
DiaChiSV NVARCHAR(200) NOT NULL, DienThoaiSV NVARCHAR(20),
NgayTao DATETIME NOT NULL,
NgayHetHan DATETIME NOT NULL,
PHIEUNHACTRA
MaPNT CHAR(5) PRIMARY KEY, MaThe CHAR(5) NOT NULL,
NgayLap DATETIME NOT NULL,
Trang 11DonGiaPhat INT NOT NULL,
MaNV CHAR(5) NOT NULL,
MaSach CHAR(5) NOT NULL
PHIEUMUON
MaPM CHAR(5) PRIMARY KEY,
MaSach CHAR(5) NOT NULL,
MaThe CHAR(5) NOT NULL,
NgayMuon DATETIME NOT NULL,
SACHMUON
MaSach CHAR(5),
TinhTrang NVARCHAR(20),
SLSachMuon INT NOT NULL,
NgayTra DATETIME NOT NULL,
PRIMARY KEY (MaPM,MaSach)
TAIKHOAN
tendn nvarchar(100)not null primary key,
mk nvarchar(100)not null,
nhmk nvarchar(100) not null,
Trang 123.3.Mô hình Cơ sở dữ liệu quan hệ sau khi xây dựng Bảng