柚子快報激活碼778899分享:簡單用數據庫實現圖書管理系統(tǒng)
目錄
一、摘要
2、基本功能
二、前言
三、主體
3.1需求分析
3.1.1 數據需求分析
3.1.2 功能需求分析
3.2概要設計
3.2.1 數據字典
3.2.2 ERD(實體關系圖)
3.2.3 DFD數據流圖
3.3 邏輯設計
3.3.1 E-R模型向關系模型的轉換規(guī)則
3.3.2 E-R圖轉換為如圖所示的數據庫關系表
3.4 物理設計
3.4.1 DDL語言
3.4.2 視圖
3.4.3 重要的存儲過程
四、結論
五、參考文獻
一、摘要
設計教學管理系統(tǒng),要求有基本資料管理,比如:讀者、圖書管理員、閱覽室、書籍、書架、書籍分類、出版社、罰款單、系統(tǒng)管理員,書商等基礎信息?;竟δ埽?/p>
角色1:讀者
?選課
?查詢圖書
?借書還書
角色2:圖書管理員
角色3:采購員
角色4:系統(tǒng)管理員
?數據備份
?系統(tǒng)優(yōu)化
?死鎖排除
? ? ?3.借還書要求考慮到學期、時間、圖書管理員、讀者等信息:借書、還書、日期時間掛鉤、采購書、入庫、書上架、書下架、盤點、銷毀。
二、前言
? 圖書館作為信息資源的集散地,圖書和用戶借閱資料繁多,包含很多信息數據的管理,現今,有很多的圖書館都是初步開發(fā)使用,甚至尚未使用計算機進行信息管理,根據調查得知,他們以前對信息的管理都基于文本,表格等紙介質的手工處理,對圖書借閱情況(如借閱天數,超過借閱的天數)的統(tǒng)計和審核都通過借書卡的方式人工查詢。
? 對借閱的權限,借閱天數用人工計算,手工抄寫。數據處理工作量大,容易出錯。由于數據量大容易丟失,且不容易查找??偟膩碚f,缺乏系統(tǒng)規(guī)范的管理手段。盡管有的圖書館有計算機,但是尚未由于信息管理,沒有發(fā)揮它的效力,資源閑置比較突出,這就是信息管理系統(tǒng)開發(fā)的基本環(huán)境。基于這個問題,我們認為有必要建立一個圖書管理系統(tǒng),使圖書管理工作規(guī)范化。
? 該系統(tǒng)主要有幾個大的模塊︰圖書信息錄入、圖書借閱管理、讀者信息管理、圖書信息查詢,其中每個模塊的主要功能如下∶
? 圖書信息錄入︰圖書信息的錄入采用聯(lián)網查詢方式,通過條碼槍掃描圖書的ISBN碼,系統(tǒng)會自動搜索圖書信息,然后把圖書信息錄入到系統(tǒng)。通過實驗,錄入1本書的時間大概是20—40秒,這比原來的繁瑣的手工錄入效率提高90%,極大的減輕了圖書管理人員的勞動強度,使廣大中小學圖書管理信息化突破了錄入的瓶頸。
? 圖書借閱管理︰根據讀者提供的借書證號或借書卡號進行圖書的借閱、圖書歸還操作。讀者信息管理:對讀者進行注冊登記、注銷讀者、查閱借閱記錄等操作。圖書信息查詢︰包括導入導出圖書信息,根據圖書的書名、分類、出版社、價格范圍、出版日期來查詢圖書,進行分類統(tǒng)計,形成上級報表等[1]。
三、主體
3.1需求分析
3.1.1 數據需求分析
圖書館管理信息系統(tǒng)需要完成功能主要有:
(1)讀者基本信息的輸入,包括借書證編號、讀者姓名、讀者性別等。
(2)讀者基本信息的查詢、修改,包括讀者借書證編號、讀者姓名、讀者性別等。
(3)書籍類別標準的制定、類別信息的輸入,包括類別編號、類別名稱。
(4)書籍類別信息的查詢、修改,包括類別編號、類別名稱。
(5)書籍庫存信息的輸入,包括書籍編號、書籍名稱、書籍類別、作者姓名、出版社名稱、出版日期、登記日期。
(6)借書信息的輸入,包括讀者借書證編號、書籍編號、借書日期。
(7)借書信息的查詢、修改,包括借書證編號、借書證編號、讀者姓名、書籍編號、書籍名稱、借書日期等[2]。
3.1.2?功能需求分析
1.日常工作管理:包括借書管理、還書管理
(1)借書管理:主要功能是記錄借閱證編號和圖書編號,進行借書過程。在數據庫中插入一條借書記錄,該記錄包括學生學號、圖書ID、借出日期、還書期限。
(2)還書管理:主要功能是輸入借閱證編號、圖書ID,在借閱登記表中找到相應的記錄,將該記錄的相應數據插入到還書記錄中,同時將借書記錄刪除,并保存在借閱歷史記錄表中。
2.基本資料維護管理:包括圖書資料維護、學生資料維護
(1)圖書資料維護:包括新書的入庫,以及現有書籍資料的修改和刪除。
(2)學生信息維護:包括新學生的資料入庫,以及現有學生資料的修改和刪除。
3.查詢管理:包括圖書資料查詢、學生信息查詢、借閱歷史記錄查詢。
(1)圖書資料查詢:根據相應的圖書信息對所有書籍進行所需查詢。此查詢包括:圖書類別、圖書編號、圖書名稱、著者、出版社[3]。
(2)學生信息查詢:根據相應的學生信息進行所需查詢。借閱證編號、學生姓名、學生學號。
(3)借閱歷史記錄查詢:根據相應的借閱信息進行所需查詢。此查詢包括:借閱證編號、圖書編號、借書日期、還書日期。
3.2概要設計
3.2.1 數據字典
(1)圖書管理員
表1 圖書管理員表
列名 數據類型 位數 是否為空 工作號 Varchar 12 否 密碼 Varchar 50 否 姓名 Varchar 12 是 性別 Varchar 2 否 電話 Varchar 12 是 備注 Varchar 50 是 家庭住址 Varchar 100 是
(2)讀者
表2 讀者表
列名 數據類型 位數 是否為空 讀者號 Varchar 50 否 讀者姓名 Varchar 50 否 讀者性別 Varchar 20 否 電話 Varchar 12 是 最大借書量 Int 否 系別 Varchar 50 否 生效日期 Datetime 是 失效日期 Datetime 是
(3)書籍表
表3 書籍表
列名 數據類型 位數 是否為空 工作號 Varchar 50 否 ISBN Varchar 13 否 添加時間 Datetime 是 是否在館 Char 4 是
(4)學生表
表4 學生表
列名 數據類型 位數 是否為空 工作號 Varchar 50 否 讀者學號 Varchar 50 否 ISBN Varchar 50 否 借還確認 Varchar 50 否
(5)借閱表
表5 借閱表
列名 數據類型 位數 是否為空 工作號 Bigint 1,1 否 ISBN Varchar 50 否 讀者學號 Varchar 50 否 借書日期 Datetime 否 還書日期 Datetime 否 真實還書日期 Datetime 是 是否續(xù)借 Varchar 50 是 備注 Varchar 100 是
(6)圖書
表6 圖書表
列名 數據類型 位數 是否為空 書籍編號 Bigint 1,1 否 ISBN Varchar 50 否 書名 Varchar 50 否 作者 Varchar 50 是 出版社 Varchar 50 是 價格 Money 是 出版日期 Datetime 是 庫存量 Int 是 簡介 Text 是 狀態(tài) Varchar 50 是
3.2.2 ERD(實體關系圖)?
圖1.1 ?主ER圖
3.2.3?DFD數據流圖
一層數據流圖:
二層數據流圖:
三層數據流圖:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 圖2.3 ?三層數據流圖?
四層數據流:
圖2.4 ?四層數據流圖
3.3 邏輯設計
3.3.1?E-R模型向關系模型的轉換規(guī)則:
(1)實體類型的轉換
將每個實體類型轉換成一個關系模式,實體的屬性即為關系的屬性,實體標識符即為關系的鍵。
(2)聯(lián)系類型的轉換
①如實體間的聯(lián)系是1:1
可以在兩個實體類型轉換成兩個關系模式中的任意一個關系模式的屬性中加入另一個關系模式的鍵和聯(lián)系類型的屬性。
②如實體間的聯(lián)系是1:n
則在n端實體類型轉換成的關系模式中加入1端實體類型轉換成的關系模式的鍵和聯(lián)系類型的屬性。
③如實體間的聯(lián)系是m:n
則將聯(lián)系類型也轉換成關系模式,其屬性為兩端實體類型的鍵加上聯(lián)系類型的屬性,而鍵為兩端實體鍵的組合。
3.3.2 E-R圖轉換為如圖所示的數據庫關系表:
(1)圖書信息表
表7 圖書信息表
(2)學生信息表
表8 ?學生信息表
(3)管理員信息表
表9 ?管理員信息表
(4)借閱信息表
表10 ?借閱信息表
(5)圖書類別信息表
?
表11 ?圖書類別信息表
3.4 物理設計
數據庫物理設計的任務是為上一階段得到的數據庫邏輯模型,即數據庫的邏輯結構選擇合適的應用環(huán)境的物理結構,既確定有效地實現邏輯結構模式的數據庫儲存,確定在物理設備上所采用的存儲結構和存取方法,然后對該存儲式進行性能評價、修改設計、經過多次反復,最后得到一個性能較好的存儲模式。數據庫物理設計內容包括記錄存儲結構的設計和存儲路徑的設計[4]。
3.4.1 DDL語言
①建數據庫:
create database libary
②建表:
創(chuàng)建圖書信息表
CREATE TABLE dbo.jy (
Lno nchar(10) Primary key ,
Lname nchar(20)NULL ,
Wr nchar(10)NULL ,
Ldate smalldate NULL ,
Lprees nchar (20)NULL
Lbz?nchar(20)NULL
)
創(chuàng)建讀者信息表
CREATE TABLE dbo.reader (
Rno nchar (10) Primary key ,
Rname nchar (10)NOT NULL,
Rsex nchar(1)NOT NULL ,
Rdep nchar(20)NOT NULL,
Rage int NULL
)
創(chuàng)建借閱信息表
CREATE TABLE dbo.jy (
Rno nchar(10) Primary key ,
Lno nchar(10) Primary key ,
data smalldate NULL ,
Ldata smalldate NULL
)
創(chuàng)建用戶表
CREATE TABLE dbo. manage (
Pwd nchar(10) Primary key ,
Id nchar(10)NULL ,
)
CREATE TABLE UserInfo(
LibNum Int NOT NULL PRIMARY KEY,
Name varchar (20)NOT NULL,
Sex varchar (20)NOT NULL,
Type varchar (20)NOT NULL,
)
CREATE TABLE Book(
BoNum INT NOT NULL PRIMARY KEY,
Author varchar (15) NOT NULL,
BookName varchar (25) NOT NULL,
Price varchar (30)NOT NULL,
Press varchar (20)NOT NULL,
Storage varchar (25) NOT NULL,
Published varchar (30) NOT NULL,
)
CREATE TABLE Borrow(
BorNum INT NOT NULL PRIMARY KEY,
BorrowNum varchar (30)NOT NULL,
BorrowTime varchar (20) NOT NULL,
BookNum varchar (35) NOT NULL,
)
3.4.2 視圖
?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 圖3.1 視圖1?
圖3.2 視圖2
3.4.3 重要的存儲過程
INSERT UserInfo
VALUES('411420020','張三',男',學生')
INSERT UserInfo
VALUES('411420021','王麗',女','學生')
INSERT UserInfo
VALUES('411420022','李四',男',’學生')
INSERT UserInfo
VALUES('411420023','馬陽',女',學生')
?
圖3.3
INSERT Borrow
VALUES('411420020 ,'0101001','2015.6.7",'2015.7.7')
INSERT Borrow
VALUES('411420021',0101002','2015.6.8',2015.7.7')
INSERT Borrow
VALUES('411420022','0101003',2015.6.9',2015.7.9')
?
圖3.4
INSERT Book
VALUES(01010001''關系數據庫基礎'徐人鳳"∵'高等教育出版社' 29.60',2000.9.8',2001.8.9','王明')
INSERT Book
VALUES(01010002','瘋狂AJAX講義',’李剛','電子工業(yè)出版社',?'60.00',2009.8.7',2009.10.8','李哲')
INSERT Book
VALUES(01010003',’JAVA’,’語言程序設計’,’鄭莉','清華大學出版社’,’44.50',2009.9.6','2009.11.11','王磊’)
圖3.5
create view Info_view(條碼號,書名,ISBN號,是否借出,已借次數)
As
select bno , bname , bisbn , islent , times
from Informationcreate view Book_view(ISBN號,書名,類別號,書架號,價格,出版社,圖片,圖書簡介)
as
select bisbn , bname , tpno , bshelf , price , publisher,picture,intro
from Book
create view Book_Type_view(類別號,類別)
as
select tpno , tp
from Book_Type
查詢某本書是否可借的詳細信息
create view info3_view(書名,架位,條碼號,是否借出,是否在架上)?
as select
information.bname ,book.bshelf ,information.bno ,information.islent ,information .ishere
From?book,information?where information.bisbn='978-7-5617-6282-O' andinformation.bisbn=book . bisbn
按書名關鍵字檢索
create view info1_view(書名,ISBN號,價格,出版社,架位)
as select distinct book. bname , book.bisbn , book.price,book.publisher , book.bshelf
from book where book. bname like '%關系數據庫基礎%'
統(tǒng)計A類圖書總數(以此類推,可統(tǒng)計其他類圖書總數)
select count(bno) from information where bisbn in ( select bisbn from bookwhere Tpno='A')
統(tǒng)計圖書總數
select count (bno) from information
統(tǒng)計每本書被借次數
select times from information where bno = '02010001'
查看Book表中關系數據庫書的信息:
SELECT*FROM BookWHERE BoNum='1010001'
?
圖3.6
查詢張三信息:
SELECT*FROM UserInfoWHERE LibNum='411420020'
四、結論
? 通過這段時間的努力,基本完成了圖書管理系統(tǒng)的基本功能:管理員對圖書信息的管理以及對讀者信息的管理,主要是對其中的表(圖書信息表dbo.libary和讀者信息表讀者表dbo.reader)的信息進行添加、查詢和刪除。但部分功能未能實現例如讀者對該系統(tǒng)的注冊,登陸、借閱查尋等一些列功能。
? 同時通過這幾天的程序及報告編寫,我也發(fā)現了自己的很多不足,自己的知識有很多漏洞,看到了自己的實踐經驗還是比較缺乏,理論聯(lián)系實際的能力還是比較脆弱。尤其是編寫大型的程序所要擁有的知識和技能比較缺乏。程序編好了,還要經過調試和修改,這步也很關鍵,好的程序是經過了無數次的修改和調試才產生的。我們的程序基本上能夠滿足要求,但還有一些地方需要改進,在今后我們應該在多看書的同時還要加強實踐的練習,才能進一步提高自己的編程能力。
五、參考文獻
圖書管理信息系統(tǒng)課程設計 - 百度文庫基于分布式多層數據庫的圖書管理系統(tǒng)的建立[J]. 劉皓,陳麗.石河子大學學報(自然科學版).?2006(04)北京天文館圖書管理系統(tǒng)的設計與實現[J]. 管峰,陳昌.??內蒙古科技與經濟.?2021(21)基于大數據的智能圖書管理系統(tǒng)的研究與設計[J]. 楊江海,婁德涵,鄧海生.??電子制作.?2021(04)
?
柚子快報激活碼778899分享:簡單用數據庫實現圖書管理系統(tǒng)
精彩文章
本文內容根據網絡資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。
轉載請注明,如有侵權,聯(lián)系刪除。