Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 21 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
21
Dung lượng
488,42 KB
Nội dung
Xây dựng phần mềm quản lý thư viện TRƯỜNG ĐẠI HỌC THỦY LỢI KHOA CÔNG NGHỆ THÔNG TIN - - BÀI TẬP LỚN MÔN HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU ĐỀ TÀI: XÂY DỰNG PHẦN MỀM QUẢN LÝ THƯ VIỆN Nhóm sinh viên thực hiện: Trần Hoàng Anh – Lớp 57TH2 Vũ Thị Hường – Lớp 57TH2 Giảng viên hướng dẫn: Th.S Nguyễn Ngọc Quỳnh Châu download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện HÀ NỘI, 10/2017 LỜI NÓI ĐẦU Hiện nay, phá t triển củ a xã hộ i kinh tế thị trườ ng ngà y cà ng đượ c mở rộ ng Vì vậ y ng tá c n lý, kiểm số t tình hình doanh thu, số lượ ng, m giấ y tờ rấ t khó khă n việc n lý, sử a đổ i liệu dễ gâ y mấ t má t, bả o mậ t thô ng tin Chính đị i hỏ i cầ n phả i có mộ t hệ thố ng chặ t chẽ, hợ p lý mớ i đả m bả o đượ c việc n lý dễ dà ng đá p ứ ng đượ c nhu cầ u cầ n thiết Thế kỷ XXI kỷ bù ng nổ mạ nh mẽ củ a ngà nh khoa họ c kỹ thuậ t i chung ngà nh CNTT i riêng Ngà y nay, việc ứ ng dụ ng tin họ c cô ng tá c n lý phá t triển rấ t mạ nh, ứ ng dụ ng tin họ c giú p cho cô ng tá c n lý ngà y cà ng hiệu hơn, gó p phầ n nâ ng cao hiệu cô ng việc, đưa cá c bá o cá o, số liệu thố ng kê, Đồ ng thờ i, cô ng việc củ a nhà n lý tiết kiệm đượ c nhiều thờ i gian, cô ng sứ c, việc n lý dễ dà ng bả o mậ t Nhờ có phá t triển củ a CNTT mà có nhiều phầ n mềm ứ ng dụ ng n lý đượ c đờ i ví dụ như: Quả n lý nhâ n , n lý ch sạ n, n lý ngâ n hà ng, Vậ y tạ i ta khô ng thể kết hợ p tin họ c việc n lý thư viện để khiến cho việc n lý trở nên dễ dà ng Vớ i nhữ ng lý nhó m định chọ n đề tà i “Quản lý thư viện” vớ i mong muố n tìm hiểu lĩnh vự c n lý i chung mà mụ c đích n lý sá ch củ a thư viện Đạ i họ c Thủ y Lợ i i riêng để đá p ứ ng đượ c nhu cầ u thự c tế củ a ngườ i Mụ c tiêu củ a bà i bá o cá o nêu rõ cá c đặ c tả yêu cầ u củ a hệ thố ng, phâ n tích, thiết kế để xâ y dự ng đượ c phầ n mềm n lý thư viện phụ c vụ cho việc n lý hoà n n tự độ ng má y tính download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện MỤC LỤC LỜI NÓI ĐẦU MỤC LỤC CHƯƠNG I: BÀI TOÁN ĐẶT RA VÀ YÊU CẦU CỦA HỆ THỐNG 1.1 Giới thiệu toán: 1.2 Yêu cầu chung toán: 1.3 Cách thức giải toán: 1.4 Phát biểu nghiệp vụ toán: CHƯƠNG II: PHÂN TÍCH HỆ THỐNG 2.1 Phân tích chức hệ thống .5 2.2 Người sử dụng hệ thống: CHƯƠNG 3: XÂY DỰNG MƠ HÌNH LIÊN KẾT THỰC THỂ 3.1 Xác định thực thể toàn vẹn: 3.2 Xây dựng mơ hình ER: 3.3 Xây dựng mơ hình quan hệ 3.4 Mơ hình hệ thống CHƯƠNG 4: MỘT SỐ CÂU LỆNH SQL 4.1 Thủ tục (PROCEDURE) .8 4.2 Hàm (FUNCTION) 11 4.3 View 13 4.4 Trigger 14 4.5 Phân Quyền: 17 CHƯƠNG : KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN .19 5.1 Kết luận 19 5.2 Demo giao diện 19 5.3 Hướng phát triển 19 CHƯƠNG 6: TÀI LIỆU THAM KHẢO .20 6.1 Tài liệu tham khảo online 20 6.2 Giáo trình 20 download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện CHƯƠNG I: BÀI TOÁN ĐẶT RA VÀ YÊU CẦU CỦA HỆ THỐNG 1.1 Giới thiệu toán: Như ng ta biết, mộ t hệ thố ng thư viện lớ n thư viện trườ ng Đạ i họ c Thủ y Lợ i số lượ ng sá ch rấ t nhiều đồ ng thờ i để n lý đượ c số sá ch cũ ng cầ n số lượ ng nhâ n viên nhiều Đặ c biệt nhữ ng thá ng đầ u kỳ họ c số lượ ng sinh viên đến để mượ n giá o trình rấ t ng Vì vậ y yêu cầ u đặ t : Phải để tiết kiệm thời gian, nguồn nhân lực, thông tin tin cậy, bảo mật hệ thống quản lý,…? 1.2 Yêu cầu chung toán: Đặ c tả cá c yêu cầ u, c nă ng: Quản lý độc giả mượn - trả sách, quản lý đầu sách, quản lý ghi nợ độc giả hạn trả sách làm sách tìm kiếm sách 1.3 Cách thức giải tốn: Tìm hiểu quy tắ c nghiệp vụ , cá c yêu cầ u đặ t củ a đề bà i Cá c ngô n ngữ lậ p trình sở liệu Bắ t tay o xâ y dự ng ứ ng dụ ng Tiến hà nh kiểm tra chạ y thử Thay đổ i 1.4 Phát biểu nghiệp vụ toán: Quản lý mượn, trả: Khi ngườ i mượ n (sinh viên) đến mượ n sá ch Nếu thô ng tin khô ng đá p ứ ng yêu cầ u đượ c mượ n (chưa ng tiền) đưa thô ng bá o từ chố i, đá p ứ ng đượ c lậ p phiếu mượ n cho ngườ i mượ n (sinh viên) Khi ngườ i mượ n trả sá ch, phiếu trả đượ c lậ p cho ngườ i mượ n dự a so khớ p Quản lý độc giả: Sinh viên họ c tạ i trườ ng đượ c lưu thô ng tin hệ thố ng Đồ ng thờ i hệ thố ng sẽ n lý cá c giao dịch thô ng tin liên quan tớ i độ c giả Quản lý sách: Nhậ p mớ i thô ng tin sá ch, sử a chữ a thơ ng tin, xó a bỏ nhữ ng sá ch khơ ng cị n đượ c sử dụ ng Quản lý nhân viên: Admin có quyền thao tá c n lý thêm, sử a, xó a thô ng tin nhâ n viên download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện Quản lý thông kế: Lấ y thô ng tin từ cá c bả ng cầ n thiết giao dịch để đưa số liệu: Tổ ng độ c giả , số đọ c giả mượ n, số độ c giả hạ n trả , số độ c giả chưa ng phí, sá ch mượ n, sá ch tồ n, sá ch hạ n chưa trả CHƯƠNG II: PHÂN TÍCH HỆ THỐNG 2.1 Phân tích chức hệ thống Hình 1: Mơ hình c nă ng hệ thố ng 2.2 Người sử dụng hệ thống: Quản lý (admin): Quả n lý chịu trá ch nhiệm việc n lý, có quyền truy cậ p o tấ t cá c c củ a hệ thố ng, bao gồ m n lý nhâ n viên, n lý cá c đầ u sá ch, thố ng kê số lượ ng sinh viên đến mượ n sá ch, cậ p nhậ t bổ xung, sử a đổ i hoặ c xó a cầ n thiết Nhân viên: Nhâ n viên tiếp nhậ n thô ng tin yêu cầ u mượ n sá ch củ a sinh viên, hướ ng dẫ n cho sinh viên sử dụ ng phầ n mềm củ a hệ thố ng, tìm kiếm sá ch download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện có yêu cầ u, ghi nợ xuấ t file excel danh sá ch củ a nhữ ng sá ch mượ n, trả cò n nợ lạ i Sinh viên (người mượn): Sinh viên tương tá c vớ i hệ thố ng thô ng qua mã sinh viên củ a đượ c cấ p sẵ n, xem trự c tiếp trạ ng thá i củ a mượ n quấ n sá ch cò n nợ CHƯƠNG 3: XÂY DỰNG MƠ HÌNH LIÊN KẾT THỰC THỂ 3.1 Xác định thực thể toàn vẹn: tblLoaiSach (MaL, TenS, NXB, NamXB, GiaSach) tblSach (ID, MaL, MaS) tblNV (ID , MaNV, TenNV, SDT, PassNV, DiaChi, Quyen) tblNM (ID, MaNM, TenNM, GioiTinh, NgaySinh, Khoa, DiaChi, GhiChu, DongPhi) tblTra (ID_NV, NgayT, GhiChu ) tblHDMuon (SoHDMuon, ID_NM, ID_NV, NgayM, GhiChu) tblChiTietHDMuon(ID_S, SoHDMuon) tblLichSu (Id_NV_M, Id_NV_T, SoHDMuon, Id_S, NgayM, NgayT, GhiChuM, ChiChuT, Id_NM, Id_LichSu) 3.2 Xây dựng mơ hình ER: tblNV N Lậ p tblNM tblTra 1 Lậ p Có N tblLichSu Gồ m N Có N N tblHDMuon Có N tblChiTietHDMuon tblSach tblLoaiSach download by : skknchat@gmail.com N Có Xây dựng phần mềm quản lý thư viện Hình 2: Mơ hình liên kết thự c thể ER 3.3 Xây dựng mô hình quan hệ Hình 3: Mơ hình quan hệ 3.4 Mơ hình hệ thống download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện Hình 4: Mơ hình hệ thố ng n lý thư viện CHƯƠNG 4: MỘT SỐ CÂU LỆNH SQL 4.1 Thủ tục (PROCEDURE) Thủ tụ c thố ng kê cá c độ c giả chưa ng phí mượ n sá ch CREATE PROC Chuadongphi AS BEGIN SELECT nm.Id, nm.MaNM, nm.TenNM, nm.NgaySinh, CASE WHEN nm.GioiTinh=1 THEN N'Nam' WHEN nm.GioiTinh=0 THEN N'Nữ ' END AS GioiTinh,Khoa,DiaChi, CASE WHEN Dp=1 THEN N'Đã Đó ng' WHEN Dp=0 THEN N'Chưa Đó ng' END AS Dp,GhiChu FROM dbo.tblNM AS nm WHERE Dp=0 END Chạ y thử : EXEC Chuadongphi download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện Thố ng kê cá c sá ch đượ c mượ n bở i sinh viên nà o CREATE PROCEDURE [dbo].[Prd_tracudocgia] @MaNM NVARCHAR(50) AS BEGIN SELECT * FROM dbo.DGM WHERE MaNM=@MaNM END Chạ y thử : EXEC dbo.Prd_tracudocgia @MaNM = N'SV06' nvarchar(50) Thô ng kê tổ ng số sá ch cò n lạ i, số lượ ng sá ch mượ n số lượ ng sá ch hạ n CREATE PROC Prd_Thongke_Sach AS BEGIN DECLARE @TongQH INT SELECT @TongQH= (SELECT COUNT(MaNM)FROM dbo.tblQuaHan1) SELECT dbo.Fun_TongSoSach() AS TongS,dbo.Fun_TongSoSachChoMuon() AS SachCM,dbo.Fun_TongSoSach()-dbo.Fun_TongSoSachChoMuon()AS SachTK ,@TongQH AS QuaH END Chạ y thử : EXEC Prd_Thongke_Sach download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện Thủ tụ c tìm kiếm sá ch mộ t sá ch nà o CREATE PROC Prd_TK_SelectMaS @MaS NVARCHAR(50) AS BEGIN IF(@MaS=' ' ) SELECT N'Chưa có ' AS MaS ,N'Chưa có ' AS MaL,N'Chưa có ' AS TenS,N'Chưa có ' AS NXB,N'Chưa có ' AS NamXB,N'Chưa có ' AS GiaSach ELSEBEGIN SELECT s.MaS,ls.MaL,TenS,NXB,NamXB,GiaSach FROM dbo.tblSach AS s ,dbo.tblLoaiSach AS ls WHERE ls.MaL=s.MaL AND( MaS LIKE @MaS+'%' OR TenS LIKE '%'+@MaS+'%') END END Chạ y thử : EXEC Prd_TK_SelectMaS 'S01' Thố ng kê danh sá ch sinh viên mượ n sá ch mộ t ngà y bấ t kì CREATE PROC sinhvien_ms @thang int AS DECLARE cur_ct cursor SCROLL FOR SELECT Id_NM, TenNM FROM dbo.tblHDMuon, dbo.tblNM WHERE (month (NgayM) = @thang) AND (dbo.tblHDMuon.Id_NM=dbo.tblNM.Id) OPEN cur_ct fetch first from cur_ct WHILE @@fetch_status =0 BEGIN fetch next from cur_ct END CLOSE cur_ctDEALLOCATE cur_ct Chạ y thử : 10 download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện EXEC sinhvien_ms '10' Thủ tụ c tự cậ p nhậ t mã số hó a đơn thêm mộ t hó a đơn mớ i create PROCEDURE Prd_MaSoHD AS BEGIN DECLARE @Dem INT DECLARE @Dem1 INT SELECT @Dem = COUNT(SoHDMuon) FROM dbo.tblHDMuon SELECT @Dem1 = COUNT(SoHDMuon) FROM dbo.tblLichSu IF @Dem=0 AND @Dem1=0 SELECT AS SoHD ELSE BEGIN IF @Dem=0 AND @Dem1 !=0 SELECT MAX(SoHDMuon)+1 AS SoHD FROM dbo.tblLichSu IF @Dem!=0 AND @Dem1 =0 SELECT MAX(SoHDMuon)+1 AS SoHD FROM dbo.tblHDMuon IF @Dem!=0 AND @Dem1 !=0 IF (SELECT MAX(SoHDMuon) AS SoHD FROM dbo.tblLichSu)>=(SELECT MAX(SoHDMuon) AS SoHD FROM dbo.tblHDMuon) SELECT MAX(SoHDMuon)+1 AS SoHD FROM dbo.tblLichSu ELSE SELECT MAX(SoHDMuon)+1 AS SoHD FROM dbo.tblHDMuon END END Chạ y thử : EXEC dbo.Prd_MaSoHD 11 download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện 4.2 Hàm (FUNCTION) Hà m trả giá trị tính số lầ n mượ n mộ t sá ch nà o củ a mộ t sinh viên nà o CREATE function Fun_Soluongloaisach(@MaS nvarchar(50),@Id int ) RETURNS int as begin declare @tong int select @tong =(select COUNT( MaS) FROM dbo.tblSach,dbo.tblLoaiSach,dbo.tblLichSu WHERE dbo.tblSach.MaS=@MaS AND dbo.tblSach.MaL=tblLoaiSach.MaL AND Id =dbo.tblLichSu.Id_S AND Id_NM=@Id) return @tong END Chạ y thử : SELECT dbo Fun_Soluongloaisach ( 'S01', '113') Hà m trả giá trị tính tổ ng số sá ch bị mượ n mượ n CREATE FUNCTION Fun_TongSoSachChoMuon() returns int as begin declare @tong int select @tong =(select COUNT(id_S) from tblChiTietHDMuon) return @tong END Chạ y thử : SELECT dbo.Fun_TongSoSachChoMuon() Hà m trả giá trị tính tổ ng số sá ch cò n lạ i kho 12 download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện create function Fun_TongSoSach() returns int as begin declare @tong int select @tong=(select COUNT(id) from tblSach) return @tong end Chạ y thử : SELECT dbo.Fun_TongSoSach () Hà m trả bả ng tính số lượ ng sá ch theo từ ng loạ i sá ch CREATE FUNCTION SLSACHTHEOLOAI() RETURNS @kq TABLE ( MaL nvarchar(50), SLSach int) AS BEGIN INSERT INTO @kq SELECT MaL, COUNT(MaS) FROM dbo.tblSach GROUP BY MaL RETURN END Chạ y thử : SELECT MaL, SLSach FROM dbo.SLSACHTHEOLOAI() 4.3 View Tạ o view liệt kê thô ng tin cá c đọ c giả mượ n sá ch hạ n CREATE VIEW tblQuaHan1 AS SELECT dbo.tblNM.MaNM, dbo.tblNM.TenNM, dbo.tblNM.NgaySinh, dbo.tblNM.Khoa, dbo.tblNM.DiaChi, dbo.tblNM.DongPhi, dbo.tblNM.GhiChu FROM dbo.tblLoaiSach INNER JOIN dbo.tblSach ON dbo.tblLoaiSach.MaL = dbo.tblSach.MaL INNER JOIN 13 download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện dbo.tblChiTietHDMuon ON dbo.tblSach.Id = dbo.tblChiTietHDMuon.Id_S INNER JOIN dbo.tblNM INNER JOIN dbo.tblHDMuon ON dbo.tblNM.Id = dbo.tblHDMuon.Id_NM ON dbo.tblChiTietHDMuon.SoHD_Muon = dbo.tblHDMuon.SoHDMuon WHERE (DATEDIFF(dd, dbo.tblHDMuon.NgayM, GETDATE()) > 120 Chạ y thử : SELECT * FROM dbo.tblQuaHan1 Tạ o vew a thô ng tin sá ch đượ c mượ n bở i sinh viên CREATE VIEW dbo.DGM AS SELECT nm.Id, nm.MaNM, nm.TenNM, s.MaS, ls.MaL, ls.TenS, ls.NXB, ls.NamXB, ls.GiaSach FROMdbo.tblNM AS nm INNER JOINdbo.tblHDMuon AS m ON nm.Id = m.Id_NM INNER JOIN dbo.tblChiTietHDMuon AS ctm ON m.SoHDMuon = ctm.SoHD_Muon INNER JOIN dbo.tblSach AS s ON ctm.Id_S = s.Id INNER JOIN dbo.tblLoaiSach AS ls ON s.MaL = ls.MaL Chạ y thử : SELECT * FROM dbo.DGM Tạ o view a thô ng tin bả n giao địch mượ n củ a sinh viên CREATE VIEW THONGTINS_M AS SELECT MaNM, TenNM, MaNV,TenNV, NgayM FROM dbo.tblNV,dbo.tblNM, dbo.tblChiTietHDMuon, dbo.tblHDMuon 14 download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện WHERE (dbo.tblNV.Id=dbo.tblHDMuon.Id_NV) AND (dbo.tblNM.id=dbo.tblHDMuon.Id_NM) AND (dbo.tblHDMuon.SoHDMuon=dbo.tblChiTietHDMuon.SoHD_Muon) Chạ y thử : SELECT * FROM THONGTINS_M 4.4 Trigger TRIGGER khô ng cho phép thêm phiếu mượ n ngà y mượ n lớ n ngà y tạ i ngượ c lạ i chèn bả n ghi mớ i o bả ng HDMuon CREATE TRIGGER Them_HDM ON dbo.tblHDMuon FOR INSERT AS DECLARE @Id_NM INT DECLARE @Id_NV INT DECLARE @SoDMuon INT DECLARE @NgayM DATE DECLARE @GhiChu NVARCHAR(50) SELECT @NgayM= NgayM FROM dbo.tblHDMuon WHERE SoHDMuon IN ( SELECT SoHDMuon FROM Inserted) IF(@NgayM >GETDATE()) BEGIN PRINT N'Dữ liệu nhậ p o khơ ng đú ng-Vui lị ng kiểm tra lạ i' ROLLBACK TRAN END ELSE IF (NOT EXISTS (SELECT SoHDMuon FROM dbo.tblHDMuon WHERE SoHDMuon=@SoDMuon)) BEGIN INSERT INTO dbo.tblHDMuon ( Id_NM, Id_NV, SoHDMuon, NgayM, GhiChu ) 15 download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện VALUES (@Id_NM , Id_NM - int @Id_NV, Id_NV - int @SoDMuon, SoHDMuon - int @NgayM, NgayM - date @GhiChu GhiChu - nvarchar(200) ) END TRIGGER cho phép tự cậ p nhậ t số lượ ng sá ch theo từ ng loạ i sá ch sau có giao dịch trả sá ch CREATE TRIGGER UPDATE_SLS ON tblSach FOR INSERT AS DECLARE @tong int UPDATE dbo.tblSach SET @tong = dbo.SLSACHTHEOLOIAI() FROM dbo.tblSach WHERE MaS= (SELECT MaS FROM inserted) TRIGGERS tự cậ p nhậ t thô ng tin o bả ng lịch sử sau có giao dịch muộ n - trả diễn CREATE TRIGGER dbo.Add_tblLichsu ON tblTra FOR INSERT AS BEGIN DECLARE @dem INT SELECT @dem=COUNT(Id_S) FROM dbo.tblChiTietHDMuon WHERE Id_S =(SELECT Id_S FROM Inserted) IF @dem!=0 BEGIN DECLARE @Id_NM INT DECLARE @Id_NV_T INT DECLARE @Id_NV_M INT DECLARE @SoHDMuon INT DECLARE @Id_S INT DECLARE @NgayM DATE 16 download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện DECLARE @NgayT DATE DECLARE @GhiChuM NVARCHAR(500) DECLARE @GhiChuT NVARCHAR(500) SELECT @Id_NV_T = Id_NV FROM Inserted SELECT @Id_NV_M = Id_NV FROM dbo.tblHDMuon,dbo.tblChiTietHDMuon WHERE (dbo.tblHDMuon.SoHDMuon=dbo.tblChiTietHDMuon.SoHD_Muon AND dbo.tblChiTietHDMuon.Id_S = (SELECT Id_S FROM Inserted)) SELECT @SoHDMuon = SoHD_Muon FROM dbo.tblChiTietHDMuon WHERE Id_S= (SELECT Id_S FROM Inserted) SELECT @Id_S = Id_S FROM Inserted SELECT @NgayM = NgayM FROM dbo.tblHDMuon,dbo.tblChiTietHDMuon WHERE (dbo.tblHDMuon.SoHDMuon=dbo.tblChiTietHDMuon.SoHD_Muon AND dbo.tblChiTietHDMuon.Id_S = (SELECT Id_S FROM Inserted)) SELECT @NgayT = NgayT FROM Inserted SELECT @GhiChuM =GhiChu FROM dbo.tblHDMuon,dbo.tblChiTietHDMuon WHERE (dbo.tblHDMuon.SoHDMuon=dbo.tblChiTietHDMuon.SoHD_Muon AND dbo.tblChiTietHDMuon.Id_S = (SELECT Id_S FROM Inserted)) SELECT @GhiChuT = GhiChu FROM Inserted SELECT @Id_NM = Id_NM FROM dbo.tblHDMuon,dbo.tblChiTietHDMuon WHERE (dbo.tblHDMuon.SoHDMuon=dbo.tblChiTietHDMuon.SoHD_Muon AND dbo.tblChiTietHDMuon.Id_S = (SELECT Id_S FROM Inserted)) INSERT dbo.tblLichSu (Id_NV_M,Id_NV_T,SoHDMuon,Id_S,NgayM,NgayT,GhiChuM,GhiChuT,Id_NM) VALUES ( @Id_NV_M,@Id_NV_T ,@SoHDMuon,@Id_S ,@NgayM ,@NgayT ,@GhiChuM,@GhiChuT,@Id_NM) DELETE dbo.tblTra WHERE Id_S = (SELECT Id_S FROM Inserted) DELETE dbo.tblChiTietHDMuon WHERE Id_S = (SELECT Id_S FROM Inserted) DECLARE @Index INT SELECT @Index = COUNT(SoHD_Muon) FROM dbo.tblChiTietHDMuon WHERE SoHD_Muon =@SoHDMuon IF(@Index=0) DELETE dbo.tblHDMuon WHERE SoHDMuon=@SoHDMuon 17 download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện END ELSE ROLLBACK TRAN END GO 4.5 Phân Quyền: B1: Và o Database QLTHUVIEN -> Security -> Roles -> Kích chuộ t phả i o Roles, chọ n new - > new Database Roles Add cá c Roles: ADMIN, NHANVIEN tương ứ ng B2: Gá n quyền cho Roles: - Roles ADMIN: có cá c quyền db_accessadmin, db_backupoperator, db_datareader, db_datawriter, db_owner, db_securityadmin, db_ddladmin - Roles NHANVIEN có cá c quyền db_datareader, db_datawriter, db_owner B3: Viết Query phâ n quyền, thêm login, xó a quyền củ a roles CREATE PROC [dbo].[phanquyen] @manv nvarchar(10), @hoten nvarchar(50), @sdt numeric(18, 0), @passnv nvarchar(3), @diachi nvarchar(100), @quyen nvarchar(50) As begin insert into tblNV(MaNV,TenNV, SDT, PassNV, DiaChi, Quyen) values (@manv,@hoten,@sdt, @passnv,@diachi,@quyen) exec sp_addlogin @manv,@manv exec sp_grantdbaccess @manv,@manv if(@quyen)='ADMIN' begin exec sp_addrolemember 'ADMIN',@manv end else begin exec sp_addrolemember 'NHANVIEN',@manv end end CREATE PROC [dbo].[them_login] @manv nvarchar(10),@pass nvarchar(50) a begin transaction declare @themlog nvarchar(300) set @themlog ='create login ['+@manv+'] with password= '''+@pass+''+',default_database=[QLTHUVIEN]' exec (@themlog) declare @themuser nvarchar(300) 18 download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện set @themuser ='create user ['+@manv+'] for login= ['+@manv+']' exec (@themuser) commit transaction end CREATE PROC [dbo].[xoaquyen] @manv nchar(10), @username nvarchar(10), @pass nvarchar(50) as begin delete from tblNV where (MaNV = @manv) and ( quyen= @username) and (@pass = PassNV) exec sp_droplogin @manv exec sp_dropuser @manv end sp_helptext SACH_DOCGIA GRANT ALL ON tblHDMuon TO ADMIN GRANT ALL ON tblChiTietHDMuon TO ADMIN GRANT ALL ON tblTra TO ADMIN GRANT ALL ON tblSach TO ADMIN GRANT ALL ON tblLoaiSach TO ADMIN GRANT ALL ON tblNM TO ADMIN GRANT ALL ON LichSu TO ADMIN GRANT ALL ON tblNV TO ADMIN GRANT ALL ON tblHDMuon TO NHANVIEN GRANT ALL ON tblCHitTietMuon TO NHANVIEN GRANT ALL ON tblTra TO NHANVIEN GRANT ALL ON tblSach TO NHANVIEN GRANT ALL ON tblLoaiSach TO NHANVIEN GRANT ALL ON tblNM TO NHANVIEN GRANT select, INSERT ON tblHDMuon TO NHANVIEN GRANT SELECT ON tblLoaiSach TO NHANVIEN 19 download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện CHƯƠNG : KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 5.1 Kết luận - Sau thờ i gian phâ n tích, thiết kế lậ p trình, nhó m hồ n nh bả n hệ thố ng “quản lý thư viên”, đá p ứ ng cá c c n lý củ a ngườ i n lý nhâ n viên n lý - Mặ c dù có nhiều cố gắ ng suố t trình m bà i tậ p lớ n, thờ i gian có hạ n thiếu kinh nghiệm thự c tế nên cũ ng khô ng thể trá nh khỏ i nhữ ng nhượ c điểm thiếu só t Vì vậ y, em mong nhậ n đượ c gó p ý củ a để nhó m ng em phá t triển hệ thố ng nà y hoà n thiện 5.2 Demo giao diện 5.3 Hướng phát triển - Trong tương lai, nhó m muố n phá t triển hệ thố ng thêm mộ t số c để đá p ứ ng yêu cầ u thự c tế như: n lý việc nhậ p xuấ t suấ t, cho sinh viên tự đă ng nhậ p o hệ thố ng để xem thô ng tin, xâ y dự ng website cho phép sinh viên xem tìm hiểu trướ c đến mượ n sá ch,… đưa hệ thố ng o triển khai thự c tế tạ i thư viện 20 download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện CHƯƠNG 6: TÀI LIỆU THAM KHẢO 6.1 Tài liệu tham khảo online Lậ p trình lớ p củ a thầ y Nguyễn Xuâ n Hù ng https://www.youtube.com/watch?v=7_UE_iC19c&feature=youtu.be&list=PLIbobkdH1ftS5_L858q3BXfsexe-HWprG Lậ p trình mơ hình lớ p từ bả n đến nâ ng cao Đạ i Phi Lê https://www.youtube.com/watch?v=4d4zqVSoOdI 6.2 Giáo trình Nguyễn Ngọ c Quỳnh Châ u, Bà i giả ng hệ n trị sở liệu Phạ m Hữ u Khang, Lậ p trình ứ ng dụ ng chuyên nghiệp SQL SERVER 2000 21 download by : skknchat@gmail.com ... thiết kế để xâ y dự ng đượ c phầ n mềm n lý thư viện phụ c vụ cho việc n lý hoà n n tự độ ng má y tính download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện MỤC LỤC LỜI NÓI ĐẦU ... đượ c sử dụ ng Quản lý nhân viên: Admin có quyền thao tá c n lý thêm, sử a, xó a thơ ng tin nhâ n viên download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư viện Quản lý thông kế: Lấ... mềm quản lý thư viện Hình 2: Mơ hình liên kết thự c thể ER 3.3 Xây dựng mơ hình quan hệ Hình 3: Mơ hình quan hệ 3.4 Mơ hình hệ thống download by : skknchat@gmail.com Xây dựng phần mềm quản lý thư