1. Trang chủ
  2. » Luận Văn - Báo Cáo

Bài Tập Lớn Ứng Dụng Cơ Sở Dữ Liệu Ứng Dụng Cơ Sở Dữ Liệu Trong Quản Lý Mượn Trả Sách Tại Thư Viện Trường Đại Học Kinh Tế Quốc Dân.pdf

32 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

Trang 1

ĐẠI HỌC KINH TẾ QUỐC DÂNVIỆN CÔNG NGHỆ THÔNG TIN VÀ KINH TẾ SỐ

-oOo -BÀI TẬP LỚN ỨNG DỤNG CƠ SỞ DỮ LIỆU

Đề tài: Ứng dụng cơ sở dữ liệu trong quản lý mượn trảsách tại thư viện trường đại học Kinh tế quốc dân

Lớp tín chỉ: Ứng dụng cơ sở dữ liệu (01)GVHD: Th.s Trần Thanh Hải

Nhóm thực hiện: 02

Thành viên: Lê Thủy Phương - 11225217 Ngô Thị Thùy Dương - 11221572 Lê Phương Anh - 11220259 Vũ Hà Mỹ Duyên - 11221713 Trần Thu Trang - 11226537

Hà Nội, năm 2024

Trang 2

Mục lục

Trang 3

I Mô tả bài toán

1 Giả định bài toán1.1 Thực trạng

Các nghiệp vụ quản lý thư viện nói chung và quản lý việc mượn trả sách nói riêng như lưu trữ thông tin sách, độc giả, lập các phiếu mượn, phiếu phạt, tìm kiếm … vẫn thực hiện trên giấy tờ và các công cụ cơ bản như Word, Excel Điều này làm tốn nhiều thời gian và chi phí Hơn nữa khi tạo các báo cáo rất mất thời gian, công sức, lãng phí nguồn lực, có thể xảy ra sai sót do dữ liệu không được lưutrữ đồng bộ và thống nhất Do đó, người quản lý khó nắm bắt được tình hình của thư viện, chậm trễ trong việc đưa ra các quyết định cũng như phương án hoạt độngtrong thời gian tới

Nhận thức được những khó khăn, bất cập đó, nhà quản lý đề xuất xây dựng một hệ thống quản lý dựa trên nền tảng số để tối ưu hóa các nghiệp vụ, tăng hiệu quả công việc.

1.2 Một số quy định của thư viện

- Mượn mang về:

○ Chỉ được mượn mang về các tài liệu tại kho mượn của thư viện○ Độc giả được mượn tối đa 3 tài liệu/1 lần mượn

○ Thời gian trả sách: sau 15 ngày từ ngày làm thủ tục mượn

○ Mượn sách quá hạn hoặc làm mất, hư hỏng sách, độc giả phải bồi thườngtheo quy định của thư viện

- Mượn đọc tại thư viện

○ Được mượn tối đa 2 tài liệu/ 1 lần mượn

○ Độc giả được sử dụng các tài liệu đọc tại chỗ, gồm có: ■ Những loại luận án, luận văn, chuyên đề tốt nghiệp.■ Những tài liệu được mượn mang về

○ Khi tìm kiếm được tài liệu đọc tại chỗ độc giả phải đăng ký với nhân viênthủ thư trước khi sử dụng và trả lại sau khi sử dụng, không được mang rabên ngoài phòng đọc

- Độc giả phải hoàn tất nghĩa vụ trả sách để được tiếp tục mượn sách- Xử lý vi phạm

○ Làm mất sách: Bồi thường bằng 100% giá bìa○ Làm rách, viết hoặc vẽ bậy lên sách, tài liệu học tập

■ Trường hợp sách vẫn còn giá trị sử dụng: Cảnh cáo

■ Trường hợp sách không còn giá trị sử dụng: Bồi thường bằng 100%giá bìa

○ Làm rách bìa hoặc bung tay sách: Bồi thường kinh phí tu bổ từ 5.000đ 15.000đ tùy theo bìa cứng hoặc bìa mềm

-○ Giữ sách quá hạn: Nộp lệ phí quá hạn 3.000đ/tài liệu/ngày

Trang 4

2 Mục tiêu

2.1 Mục tiêu tổng thể:

Xây dựng cơ sở dữ liệu quản lý thư viện giúp giúp nâng cao hiệu quả và tự độnghóa các nghiệp vụ quản lý việc mượn trả sách, giảm khối lượng công việc cho nhânsự trong thư viện, tiết kiệm thời gian, chi phí trong việc xử lý các nghiệp vụ Giúptăng trải nghiệm của sinh viên, giảng viên khi mượn trả sách

2.2 Mục tiêu cụ thể:

- Hỗ trợ lưu trữ và cập nhật thông tin sách, độc giả, thủ thư

- Hỗ trợ độc giả và thủ thư tra cứu sách theo nhiều tiêu chí

- Hỗ trợ thủ thư tạo và lưu trữ thông tin phiếu mượn sách, phiếu phạt, tính toán ngàyphải trả, thông báo quá hạn

- Báo cáo các phiếu mượn quá hạn nhưng chưa trả

- Báo cáo danh sách sách hỏng và mất trong quá trình cho mượn

- Báo cáo doanh thu từ việc xử lý vi phạm theo tháng

II Phân tích yêu cầu

1 Mô hình nghiệp vụ1.1 Nghiệp vụ mượn sách

- Khi độc giả muốn mượn sách, thủ thư sẽ yêu cầu cung cấp mã sinh viên/mã giảngviên để tiến hành tra cứu thông tin độc giả, nếu không có thông tin/sai thông tin,độc giả không được mượn sách, thủ thư từ chối yêu cầu và không lập phiếu; nếuđộc giả đủ điều kiện mượn sách, thủ thư tiến hành tạo phiếu mượn sách

- Nếu độc giả chưa hoàn tất nghĩa vụ trả sách của phiếu mượn trước thì không đượcmượn sách

- Độc giả cung cấp thông tin sách cần mượn cho thủ thư Thủ thư tiến hành thao táckiểm tra tình trạng cuốn sách độc giả yêu cầu (còn, đã mượn, chỉ được mượn tạithư viện…); nếu cuốn sách có thể mượn, thủ thư ghi lại tình trạng sách hiện tại(lành lặn hay rách ở trang nào), sau đó cập nhật vào phiếu mượn,

- Độc giả được yêu cầu nộp tiền cọc, hẹn ngày trả để hoàn tất phiếu mượn Thủ thưcập nhật vào CSDL (đã mượn)

Trang 6

1.2 Nghiệp vụ nhận sách từ độc giả (độc giả trả sách)

- Khi độc giả muốn trả sách, thủ thư sẽ yêu cầu xuất trình phiếu mượn

- Thủ thư sẽ kiểm tra thông tin trên phiếu mượn như tên người mượn, ngày mượn, hạntrả, Nếu sách được trả quá hạn, thủ thư sẽ xử lý theo quy định của thư viện

- Thủ thư sẽ kiểm tra tình trạng sách như có bị rách, bìa gáy nhăn nhúm, ghi chép hay vẽbậy, hay không Nếu sách bị hư hỏng, thủ thư sẽ xử lý theo quy định của thư viện

- Độc giả nhận lại đầy đủ tiền cọc nếu sách mượn còn nguyên vẹn và trả về đúng hạn.

- Thủ thư cập nhật ngày thực trả trong phiếu mượn, cập nhật tình trạng sách vào CSDL(còn, mất, hỏng)

Trang 7

1.3 Nghiệp vụ lập phiếu phạt

Khi độc giả trả sách muộn hơn hạn định/làm mất/làm hư hại sách, thủ thư sẽ lập phiếuphạt để xử lý theo quy định của thư viện Sau khi hoàn tất phiếu phạt, thủ thư có tráchnhiệm lập báo cáo, ghi nhận số tiền người mượn nộp phạt (nếu có), cập nhật tình trạng sáchtương ứng vào CSDL

Trang 8

2 Biểu đồ Use case2.1 Biểu đồ UC tổng quát

2.2 Biểu đồ phân rã UCa UC theo quản lý thư viện

Trang 9

b UC phân rã theo thủ thư

III Mô hình dữ liệu

1 Mô hình dữ liệu đầu tiên

Trang 10

2 Mô hình dữ liệu

IV Thiết kế cơ sở dữ liệu và truy vấn.

1 Tạo bảng và ràng buộc

-TẠO BẢNG NXBcreate table NXB

Ma_NXB char(10) primary key,Ten_NXB nvarchar(50) not null,email char(50),

-TẠO BẢNG THỂ LOẠIcreate table THE_LOẢIMa_TL char(10 ) primary key,

Trang 11

Ten_TL nvarchar(50) not null,)

-TẠO BẢNG CHỦ create table CHỦ_DE

ĐỂ-Ma_Chu_De char(10) primary key ,Ten_Chu_De nvarchar(50) not null,)

-TẠO BẢNG KHO SÁCHCreate table KHO_SẢCH(

Ma_Kho char(10) primary key ,Ten_Kho nvarchar(50) not null,)

-TẠO BẢNG ĐẦ-Ủ SÁCHcreate table DẢỦ_SẢCH(

Ma_Dau_Sach char(10 ) primary key

Ten_Dau_Sach nvarchar(80 ) not null,Tac_Gia nvarchar(50),

Nam int,

Ma_TL char(10 ) foreign key references THE_LOẢI(Ma_TL),Ma_NXB char(10 ) foreign key references NXB(Ma_NXB),Ma_Chu_De char(10 ) foreign key references CHỦ_DE(Ma_Chu_De),

Ma_Kho char(10 ) foreign key references KHO_SẢCH(Ma_Kho ) not null,

Gia_Bia money,)

-TẠO BẢNG TÌNH TRẠNG SÁCHcreate table TINH_TRẢNG

Ma_Tinh_Trang char(10) primary key ,Ten_Tinh_Trang nvarchar(20) not null,)

-TẠO BẢNG SÁCHcreate table SẢCH

Ma_Sach char(10 ) primary key

Ma_Dau_Sach char(10 ) foreign key references

DẢỦ_SẢCH Ma_Dau_Sach( ) not null,

Ma_Tinh_Trang char(10 ) foreign key references

TINH_TRẢNG Ma_Tinh_Trang( ) not null,Lib_Only bit not null,)

Trang 12

-TẠO BẢNG KHOẢ VIỆNcreate table KHOẢ_VIEN(

Ma_Khoa_Vien char(15) primary key

Ten_Khoa_Vien nvarchar(50 ) not null,)

-TẠO BẢNG LỚP CHỦYỂN NGÀNHcreate table LOP_CHỦYEN_NGẢNHMa_Lop char(15) primary key ,Ten_Lop nvarchar(50) not null,)

-TẠO BẢNG ĐỘC GIẢcreate table DOC_GIẢ

Ma_Doc_Gia char(10 ) primary key not null,Ho_Ten nvarchar(80 ) not null,

Ma_Lop char(15 ) foreign key references LOP_CHỦYEN_NGẢNH(Ma_Lop),

Ma_Khoa_Vien char(15 ) foreign key references KHOẢ_VIEN(Ma_Khoa_Vien) not null,

Ma_Thu_Thu char(10) primary key

Ten_Thu_Thu nvarchar(50) not null,SDT char(20),

Trang 13

Ma_Kieu_Muon char( ) not null foreign key references

KIEỦ_MỦON Ma_Kieu_Muon),Ngay_Muon date not null,Han_Tra as (

Ma_Thu_Thu char(10 ) foreign key references

THỦ_THỦ Ma_Thu_Thu( ) not null,)

-TẠO BẢNG CHI TIỂDT PHIỂDỦ MƯỢNcreate table CT_PHIEỦ_MỦON

Ma_Phieu_Muon char(10 ) not null foreign key (Ma_Phieu_Muon)

references PHIEỦ_MỦON(Ma_Phieu_Muon),

Ma_Sach char(10 ) not null foreign key (Ma_Sach)

references SẢCH Ma_Sach),Mo_Ta nvarchar(80),

Constraint PK_CTPHMT primary key(Ma_Phieu_Muon Ma_Sach, ))

-TẠO BẢNG VI PHẠMcreate table VI_PHẢM(

Ma_Vi_Pham char(10) primary key not null,Ten_Vi_Pham nvarchar (50 ) not null,

Hinh_Thuc_Phat nvarchar(120) not null,)

-TẠO BẢNG PHIỂDỦ PHẠTcreate table PHIEỦ_PHẢT

Ma_Phieu_Phat char(10 ) primary key not null,Ma_Phieu_Muon char(10 ) foreign key references

PHIEỦ_MỦON Ma_Phieu_Muon( ) not null,

Ma_Thu_Thu char(10 ) foreign key references THỦ_THỦ(Ma_Thu_Thu ) not null,

Ngay_Phat date not null,)

-TẠO BẢNG CHI TIỂDT PHIỂDỦ PHẠTcreate table CT_PHIEỦ_PHẢT

Trang 14

Ma_Phieu_Phat char (10) foreign key references

PHIEỦ_PHẢT Ma_Phieu_Phat( ) not null,

Ma_Vi_Pham char(10 ) foreign key references

VI_PHẢM Ma_Vi_Pham( ) not null,

Ma_Sach char(10) foreign key references SẢCH Ma_Sach) notnull,

Nop_Phat money,Mo_Ta nvarchar(120),)

-TẠO RÀNG BỦỘC ĐỘC GIẢ KHÔNG ĐƯỢC MƯỢN KHI CHƯẢ TRẢ SÁCHCREẢTE TRIGGER check_docgiatrasach

on PHIEỦ_MỦON

after insertas

declare @Ngaytra_gannhat date, @Ma_Doc_Gia char(10);

select @Ma_Doc_Gia Ma_Doc_Gia = from inserted select @Ngaytra_gannhat = MẢX(Ngay_thuc_tra) from PHIEỦ_MỦON

where Ma_doc_gia @Ma_doc_gia= ; if @Ngaytra_gannhat IS NỦLL

Trang 15

if (@Ma_Kieu_Muon = 'MV' ẢND @SoLuongMuon 3 > ) OR(@Ma_Kieu_Muon = 'TC' ẢND @SoLuongMuon 2> )

Trang 16

2.3 Dữ liệu bảng Chủ đề

Trang 17

2.4 Dữ liệu bảng Kho Sách

Trang 18

2.5 Dữ liệu bảng Thủ Thư

2.6 Dữ liệu bảng Khoa/Viện

2.7 Dữ liệu bảng Lớp Chuyên Ngành

Trang 19

2.8 Dữ liệu bảng Đầu Sách

Trang 20

2.9 Dữ liêu bảng Tình trạng sách

2.10 Dữ liệu bảng Sách

Trang 21

2.11 Dữ liệu bảng Độc Giả

Trang 22

2.12 Dữ liệu bảng Kiểu Mượn

2.13 Dữ liệu bảng Phiếu Mượn

Trang 23

2.14 Dữ liệu bảng Chi tiết Phiếu Mượn

Trang 24

2.15 Dữ liệu bảng Phiếu Phạt

Trang 25

2.16 Dữ liệu bảng Vi Phạm

Trang 26

2.17 Dữ liệu bảng Chi tiết Phiếu Phạt

Trang 27

3 Truy vấn

3.1 Các phiếu mượn về quá hạn nhưng chưa trả

SELECT Ma_Phieu_Muon ẢS N'Mã phiếDu mượn', P Ma_Doc_Gia ẢS N'Mã độc gia', Ho_Ten ẢS N'Họ tến',

Ngay_Muon ẢS N'Ngày mượn' , Han_Tra ẢS N'Hạn tra',

Ngay_Thuc_Tra ẢS N'Ngày thực tra'

FROM PHIEỦ_MỦON P INNER JOIN DOC_GIẢ D ON P.Ma_Doc_Gia =D Ma_Doc_Gia

WHERE '2024-04-01' Han_Tra and Ngay_Thuc_Tra is null

ORDER BY Han_Tra

3.2 Các sách bị mất và hết giá trị sử dụng trong quá trình cho mượn

SELECT Ma_Sach ẢS N'Mã sách', Ten_Dau_Sach ẢS N'Tến sách', Tac_Gia ẢS N'Tác gia',

Ten_Tinh_Trang ẢS N'Tình trạng'

FROM (SẢCH S INNER JOIN TINH_TRẢNG TT ON S Ma_Tinh_Trang =TT Ma_Tinh_Trang ) INNER JOIN DẢỦ_SẢCH D ON S.Ma_Dau_Sach = D Ma_Dau_Sach

WHERE S Ma_Tinh_Trang = 'MẢT' OR S.Ma_Tinh_Trang = 'HGTSD'

Trang 28

3.3 Tổng tiền phạt và số lượng phiếu phạt trong tháng 1

SELECT Ngay_Phat ẢS N'Ngày phạt',

COỦNT( Ma_Phieu_Phat ) ẢS N'SốD lượng phiếDu phạt', SỦM(Nop_Phat) ẢS N'Tống tiế-n phạt'

FROM CT_PHIEỦ_PHẢT CT INNER JOIN PHIEỦ_PHẢT P ON

P Ma_Phieu_Phat CT= Ma_Phieu_Phat ẢND MONTH(Ngay_Phat) = 1

GROỦP BY Ngay_Phat

SELECT COỦNT( P Ma_Phieu_Phat ) ẢS 'Tống phiếDu phạt tháng 1', SỦM(Nop_Phat) ẢS N'Tống tiế-n phạt tháng 1'

FROM CT_PHIEỦ_PHẢT CT INNER JOIN PHIEỦ_PHẢT P ON

P Ma_Phieu_Phat CT= Ma_Phieu_Phat ẢND MONTH(Ngay_Phat) = 1

V Thiết kế giao diện người dùng.

1 Form nhập liệu

Trang 30

2 Báo cáo

Ngày đăng: 14/08/2024, 10:01

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN