數(shù)據(jù)庫圖書管理系統(tǒng)1_第1頁
數(shù)據(jù)庫圖書管理系統(tǒng)1_第2頁
數(shù)據(jù)庫圖書管理系統(tǒng)1_第3頁
數(shù)據(jù)庫圖書管理系統(tǒng)1_第4頁
數(shù)據(jù)庫圖書管理系統(tǒng)1_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 圖書館管理系統(tǒng)設計成員:劉強 091040113 孫恒 091040120 楊星 091040129 完成時間:2011-11-06目錄1需求分析.31.1實現(xiàn)功能.31.2需求定義.3 1.2.1 系統(tǒng)信息管理 .3 1.2.2 系統(tǒng)組成.42功能說明.42.1圖書基本功能.42.2實現(xiàn)借書功能.42.3實現(xiàn)還書功能.42.4新書入庫舊書注銷.43系統(tǒng)功能結構圖.54業(yè)務流程圖.64.1新書入庫流程圖.64.2借書(E-R圖).65數(shù)據(jù)庫設計.75.1需求數(shù)據(jù)項.75.2關系模式.75.3具體實現(xiàn)過程.75.4程序源代碼.7 5.4.1 建立表格.7 5.4.2 操作功能.106數(shù)據(jù)庫設計

2、總結.151 需求分析 1.1 實現(xiàn)功能 隨著科學技術的不斷提高,計算機科學日漸成熟, 作為計算機應用的一部分,使用計算機對圖書信息進行管理,具有手工管理所無法比擬的優(yōu)點。圖書管理系統(tǒng)的開發(fā)是一個經(jīng)常談論的問題,而且它是一個相對開放的系統(tǒng),比較成熟。本系統(tǒng)主要實現(xiàn)對圖書館的圖書信息進行管理,圖書館的正常運營中總是面對大量的學生和教師信息,因此要對讀者資源,圖書資源,借書信息,閱讀信息進行管理。本系統(tǒng)的開發(fā)就是在于提高圖書管理的工作效率,加強圖書館的管理。 圖書館管理系統(tǒng)是圖書館管理工作中不可缺少的部分,它的內容對于圖書館的管理者和使用者來說都至關重要,所以圖書管理系統(tǒng)應該能夠為管理者或讀者提供

3、充足的信息和快捷的數(shù)據(jù)處理手段。作為數(shù)據(jù)庫應用的一部分,使用數(shù)據(jù)庫對圖書信息進行管理,具有人工管理所無法比擬的優(yōu)點.例如:新書入庫,舊書下架,檢索迅速、查找方便、易修改、可靠性高、存儲量大、數(shù)據(jù)處理快捷、保密性好、壽命長、成本低等。這些優(yōu)點能夠極大地提高圖書管理的效率,也是圖書館的科學化、正規(guī)化管理的重要條件。因此,設計這樣一套數(shù)據(jù)庫管理軟件成為很有必要的事情。圖書管理信息系統(tǒng)是典型的信息管理系統(tǒng),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應用程序的開發(fā)兩個方面。該程序對于圖書的借閱與新舊圖書的管理進行分析與設計,對于圖書館后臺圖書管理的數(shù)據(jù)庫建立起數(shù)據(jù)一致性和完整性強和數(shù)據(jù)的安全性,方便教

4、師學生和圖書管理人員可以短時間且準確的完成圖書管理工作。圖書管理員:1. 能方便的對圖書新書入庫,舊書注銷。 學生:1. 能按各種方式(比如書名、編號、作者)查詢圖書館的藏書情況。2. 能夠方便地借閱圖書、歸還圖書。3. 能夠查詢自己的基本資料、借閱圖書情況。4. 能夠熟悉圖書管理系統(tǒng)的使用。 1.2 需求定義 1.2.1 圖書館信息管理 主要可以分為兩大塊:(1)圖書信息的服務系統(tǒng)、(2)圖書的綜合管理系統(tǒng)。圖書的使用對象是借閱者,例如學生,教師;管理者是圖書館的管理員。因此根據(jù)這些信息,本系統(tǒng)的主要功能就是:實現(xiàn)圖書館圖書信息的管理和維護,如用戶信息管理,圖書館規(guī)則維護,新書入庫,整理圖書

5、,修改圖書信息和進行查詢等;以及服務系統(tǒng)的圖書信息查詢,圖書的借出和歸還等功能1.2.2系統(tǒng)組成 系統(tǒng)主要由兩大子系統(tǒng)組成:圖書管理和維護子系統(tǒng)以及圖書信息服務子系統(tǒng)。系統(tǒng)主要有四個數(shù)據(jù)庫表:圖書信息表,用戶信息表,學生信息表和借出信息表1. 以現(xiàn)代軟件工程原理和思想指導整個課題的開發(fā)過程,要經(jīng)過系統(tǒng)可行性分析、需求分析、概要設計、詳細設計、編碼、調試維護和安裝實施等步驟;2. 要有詳細的設計說明書;3. 每一模塊的流程圖要很清晰;4. 本系統(tǒng)能夠正常的運行,能較好得完成預定的功能;2 功能說明 2.1圖書基本情況1書籍類別標準的制定,類別信息的輸入,包括類別編號,類別名稱,關鍵詞,備注信息等

6、。2 書籍信息的輸入,包括書籍編號,書籍名稱,書籍類別,作者名稱,出版社名稱,備注信息等。 2.2實現(xiàn)借書功能1借書信息的輸入,包括借書籍編號,書籍作者,書籍編號,書籍名稱,借書日期,備注信息等。2借書信息的查詢,包括書籍編號,書籍作者,書籍編號,書籍名稱,備注信息等。 2.3實現(xiàn)還書功能1還書信息的輸入,包括書籍編號,書籍作者,書籍編號,書籍名稱,備注信息等。 2還書信息的查詢,包括書籍編號,書籍作者,書籍編號,書籍名稱,備注信息等。 2.4 新書入庫和舊書注銷1 新書信息的輸入,包括書籍編號,書籍作者,書籍編號,書籍名稱,備注信息等。2 舊書信息的輸入,包括書籍編號,書籍作者,書籍編號,書

7、籍名稱,備注信息等。3 系統(tǒng)功能結構圖圖書管理系統(tǒng)借閱更新借閱記錄舊書注銷新書入庫學生借書信息管理教師借書信息管理學生還書信息管理教師還書信息管理書籍信息管理系統(tǒng)管理員管理借閱信息管理4 業(yè)務流程圖(含E-R圖) 4.1新書入庫數(shù)據(jù)流圖圖書信息名稱與編碼圖書信息管理管理人員性別教師號系學號性別系 4.2借書(E-R圖)姓名職稱教師學生出生日期性別管理NM 1 Q借閱借閱性圖書名p圖書編號庫存圖書出版日期作者存放位置5 數(shù)據(jù)庫設計 5.1 需求數(shù)據(jù)項書庫圖書信息,包括數(shù)據(jù)項有:圖書編號、書名、書號、類別、出版社、作者。學生信息,包括數(shù)據(jù)項有:學生編號、學號、姓名、性別、系別、班級、級別、已借圖書

8、。借書信息,包括數(shù)據(jù)項有:圖書編號、學生編號書名、姓名、學號、書號、系別、班級、已借圖書、出版社、作者、借閱日期、圖書類別。管理員信息,包括數(shù)據(jù)項有:員工序號、姓名、密碼、類別、性別、出生日期。 5.2 關系模式 針對一般圖書管理信息系統(tǒng)的需求,通過對圖書管理信息工作過程的內容和數(shù)據(jù)流程分析,設計如下面所示的數(shù)據(jù)項和關系模式:圖書(圖書編號,圖書名稱,作者名稱,出版日期,圖書類別,存放位置,庫存量,借閱性)借閱表(圖書編號、圖書名稱,讀者編號,借書日期,還書日期)教師(教師號,教師姓名,性別,系,職稱)學生(學號,學生姓名,性別,系,出生日期) 5.3具體實現(xiàn)過程 1. 創(chuàng)建4張表(教師表,學

9、生表,管理員,圖書) 2. 在表中分別插入數(shù)據(jù) 3. 創(chuàng)建借還書的視圖 4. 自動更新借入信息情況,利用存儲過程實現(xiàn) 5. 自動更新庫存情況,利用存儲過程實現(xiàn)5.4 程序源代碼 5.4.1 建立表格create database library-建立表-use library-表1:學生表-create table Student /*創(chuàng)建學生表*/(Sno char(9) primary key, /*學號,主碼*/Sname char(9) not null, /*學生姓名*/Ssex char(4) check(Ssex in (男,女), /*學生性別*/Sdept char(4) n

10、ot null, /*學生所在系*/Sage datetime /*出生日期*/ )-向學生表中插入數(shù)據(jù)-select *from Student-表2:教師表-create table Teacher /*創(chuàng)建教師表*/(Tno char(9) primary key, /*教師號*/Tname char(9) not null,/*教師名*/Tsex char(4) check (Tsex in(男,女),/*教師性別*/Tsdept char(4) not null,/*教師所在系*/Tzc char(20) not null /*教師職稱*/)-向教師表中插入數(shù)據(jù)-表3:圖書表-cre

11、ate table Book/*創(chuàng)建圖書表*/(Bno varchar(20) primary key,/*圖書號*/Bname varchar(20) not null,/*圖書名*/Bwriter varchar(20) not null,/*圖書作者*/Bpress varchar(20),/*出版社*/Bdist char(10),/*圖書類別*/Bcount int,/*庫存量*/Bsite varchar(40),/*存放位置*/Batt char(6) check(Batt in(可借,閱覽)/*借閱性*/) -向圖書表中插入數(shù)據(jù)-表4:管理員表-create table lib

12、rarymanager(Mno char(3) not null primary key,Mname varchar(8) not null,Msex char(2) not null,jopsite varchar(40) not null,borndatetime datetime not null,jobname varchar(10) not null,)-向管理員表中插入數(shù)據(jù)-表5:圖書館進書表-create table J_Book/*創(chuàng)建圖書表*/(Bno varchar(20) primary key,/*圖書號*/Bname varchar(20) not null,/*圖書

13、名*/Bwriter varchar(20) not null,/*圖書作者*/Bpress varchar(20),/*出社*/Bdist char(10),/*圖書類別*/Jcount int,/*庫存量*/Bsite varchar(40),/*存放位置*/Batt char(6) check(Batt in(可借,閱覽)/*借閱性*/)-表6:圖書刪除表-create table D_Book/*創(chuàng)建圖書表*/(Bno varchar(20) primary key,/*圖書號*/Bname varchar(20) not null,/*圖書名*/Dcount int,/*刪除量*/)

14、-表7:學生借書記錄表-create table S_borrow/*創(chuàng)建學生借書表*/(Sno char(9) not null,/*學號*/Bno varchar(20) not null,/*書號*/Bname varchar(20) not null,/*書名*/B_count int,/*借書量*/borrowdatetime datetime not null,/*借書時間*/primary key(Sno,Bno),foreign key(Sno)references Student(Sno),foreign key(Bno)references Book(Bno)-表8:教師借

15、書記錄表-create table T_borrow/*創(chuàng)建 教師借書表*/(Tno char(9) not null,/*教師號*/Bno varchar(20) not null,/*書號*/Bname varchar(20) not null,/*書名*/B_count int ,/*借書量*/borrowdatetime datetime not null,/*借書時間*/primary key(Tno,Bno),foreign key(Tno)references Teacher(Tno),foreign key(Bno)references Book(Bno) 5.4.2功能操作-

16、查詢-create proc smcx(Bname varchar(20)asif exists(select *from Book where Bname=Bname)select Bname,Bwriter,Bsite,Batt,Mnamefrom Book,librarymanagerwhere Bname=Bname and jopsite=Bsiteexec smcx C語言查詢結果表-教師借書記錄-create proc j_sjsjl(Tno varchar(9),Bno varchar(20),Bname varchar(20),B_count int) asbeginif e

17、xists(select *from Book where Bno=Bno and Batt=可借) if not exists(select *from T_borrow where Tno=Tno and Bno=Bno and Bname=Bname) insert into T_borrow(Tno,Bno,Bname,B_count,borrowdatetime) values(Tno,Bno,Bname,B_count,getdate() else update T_borrow set B_count=B_count+B_count where Bno=Bno update Bo

18、ok set Bcount=Bcount-B_count where Bno=Bnoendexec j_sjsjl 9205035,ap-987524,C語言,10select *from T_borrowT_borrow教師借書生成表select *from BookBook更新表-教師還書記錄-create proc j_shsjl(Tno varchar(9),Bno varchar(20),Bname varchar(20),B_count int) asif exists(select *from T_borrow where Tno=Tno and Bno=Bno and Bnam

19、e=Bname and B_count=B_count)begin if exists(select *from T_borrow where Tno=Tno and Bno=Bno and Bname=Bname and B_count=B_count) delete from T_borrow where Bno=Bno else update T_borrow set B_count=B_count-B_count where Bno=Bno update Book set Bcount=Bcount+B_count where Bno=Bnoendexec j_shsjl9205035

20、,ap-987524,C語言,10select *from T_borrowT_borrow還書注銷表select *from BookBook結果表-學生借書記錄-create proc x_sjsjl(Sno varchar(9),Bno varchar(20),Bname varchar(20),B_count int) asbeginif exists(select *from Book where Bno=Bno and Batt=可借) if not exists(select *from S_borrow where Sno=Sno and Bno=Bno and Bname=B

21、name) insert into S_borrow(Sno,Bno,Bname,B_count,borrowdatetime) values(Sno,Bno,Bname,B_count,getdate() else update S_borrow set B_count=B_count+B_count where Bno=Bno update Book set Bcount=Bcount-B_count where Bno=Bnoend exec x_sjsjl 09050103,ap-987524,C語言,10select *from Bookselect *from S_borrowS_

22、borrow學生借書生成表select *from T_borrowBook更新表-學生還書記錄-create proc x_shsjl(Sno varchar(9),Bno varchar(20),Bname varchar(20),B_count int) asif exists(select *from S_borrow where Sno=Sno and Bno=Bno and Bname=Bname and B_count=B_count)begin if exists(select *from S_borrow where Sno=Sno and Bno=Bno and Bname

23、=Bname and B_count=B_count) delete from S_borrow where Bno=Bno else update S_borrow set B_count=B_count-B_count where Bno=Bno update Book set Bcount=Bcount+B_count where Bno=Bnoendexec x_shsjl09050103,ap-987524,C語言,10select *from S_borrowS_boroow學生借書注銷表select *from BookBook學生還書結果表-新書入庫-create proc x

24、_srk(Bno varchar(20),Bname varchar(20),Bwriter varchar(20),Bpress varchar(20),Bdist char(10),Jcount int,Bsite varchar(40),Batt char(6)asbegin insert into J_Book(Bno,Bname,Bwriter,Bpress,Bdist,Jcount,Bsite,Batt) values(Bno,Bname,Bwriter,Bpress,Bdist,Jcount,Bsite,Batt) if not exists(select*from Book where Bno=Bno and Bname=Bname) begin insert into Book(Bno,Bname,Bwriter,Bpress,Bdist,Bcount,Bsite,Batt) values(Bno,Bname,Bwriter,Bpress,Bdist,Jcount,Bsite,Batt) end else update Book set Bcount=Bcount+Jcount where Bno=Bno end exec x_srk yz-568731,現(xiàn)代科學,陸羽,云南大學出版社,綜合

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論