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

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

.../目錄一.需求描述和系統(tǒng)邊界2二.需求分析31.業(yè)務(wù)需求32.功能需求及數(shù)據(jù)需求分析33.業(yè)務(wù)規(guī)則分析4三.實(shí)體集及屬性4四.聯(lián)系集及E-R圖5五.邏輯數(shù)據(jù)庫設(shè)計(jì)6六.?dāng)?shù)據(jù)庫編程71.創(chuàng)建表72.創(chuàng)建觸發(fā)器103.管理員操作104.讀者操作115.管理員對借閱關(guān)系的操作12七.代碼實(shí)現(xiàn)131.輸入數(shù)據(jù)設(shè)計(jì)132.完成借閱、續(xù)借、歸還的操作設(shè)計(jì)15八.模式求精17九.小結(jié)17一.需求描述和系統(tǒng)邊界數(shù)據(jù)庫技術(shù)和Internet的飛速發(fā)展,使它們已經(jīng)成為現(xiàn)代信息技術(shù)的重要組成部分,是現(xiàn)在計(jì)算機(jī)信息系統(tǒng)和計(jì)算機(jī)應(yīng)用系統(tǒng)的基礎(chǔ)和核心。對于任何一個(gè)企業(yè)來說,數(shù)據(jù)是企業(yè)重要的資產(chǎn),如何有效利用這些數(shù)據(jù),對于企業(yè)發(fā)展起著極其重要的作用。隨著我國市場經(jīng)濟(jì)的迅速發(fā)展和人們生活水平的不斷提高,圖書館藏書的數(shù)目逐漸增大,這也挑戰(zhàn)了圖書管理方面的技術(shù),以前的人工管理方式已經(jīng)不再適應(yīng)現(xiàn)在的環(huán)境,取而代之的是先進(jìn)的圖書管理系統(tǒng),創(chuàng)建圖書管理系統(tǒng)可以讓管理人員方便而快捷的進(jìn)行管理、查詢、借閱、錄入等工作。該圖書管理系統(tǒng)支持2類用戶:管理員和讀者。讀者可以進(jìn)行借閱、續(xù)借、歸還和查詢書籍等操作,管理員可以完成書籍和讀者的增加,刪除和修改以及對讀者,借閱、續(xù)借、歸還的確認(rèn)。二.需求分析1.業(yè)務(wù)需求圖書管理系統(tǒng)的主要業(yè)務(wù)包括:包括圖書館內(nèi)書籍的信息,讀者信息,以及借閱信息。此系統(tǒng)功能分為面向讀者和面向管理員兩部分,其中讀者可以進(jìn)行借閱、續(xù)借、歸還和查詢書籍等操作,管理員可以完成書籍和讀者的增加,刪除和修改以及對讀者,借閱、續(xù)借、歸還的確認(rèn)。2.功能需求及數(shù)據(jù)需求分析〔1注冊管理管理員注冊。管理員注冊時(shí)要求填寫基本信息,包括管理員編號、姓名、性別、、家庭住址。系統(tǒng)檢查所有信息填寫正確后管理員注冊成功。讀者注冊。讀者注冊時(shí)要求填寫基本信息,包括讀者編號、姓名、性別、、學(xué)院等。系統(tǒng)檢查所有信息填寫正確后讀者注冊成功?!?圖書管理增加圖書信息。當(dāng)有新的圖書入庫時(shí),管理員負(fù)責(zé)添加圖書信息,包括書名、分類、圖書編號、作者、出版社、出版時(shí)間、簡介等。圖書信息查詢。管理系統(tǒng)需提供方便快捷的方式進(jìn)行圖書檢索。如可以輸入指定的關(guān)鍵詞進(jìn)行簡單查詢,也可以根據(jù)書名、分類、圖書編號、作者、出版社、出版時(shí)間、簡介等單一或組合條件進(jìn)行查詢。圖書信息更新及刪除。圖書信息發(fā)布后,管理員可以隨時(shí)更新和刪除圖書信息。〔3借閱圖書讀者登入圖書管理系統(tǒng)之后,將需要的圖書的信息輸入,可以借閱圖書。由管理員將圖書信息修改為"不在館"?!?續(xù)借圖書讀者借書之后,一個(gè)月后應(yīng)歸還。如有需要可以續(xù)借圖書30天。此操作由管理員完成?!?歸還圖書讀者將已借圖書歸還給圖書館時(shí),需要管理員確認(rèn)信息。并將圖書信息修改為"在館"3.業(yè)務(wù)規(guī)則分析基于功能需求,通過進(jìn)一步了解,圖書管理業(yè)務(wù)需求如下:〔1所有用戶均可以搜索圖書信息。但只有管理員可以對圖書信息進(jìn)行修改?!?管理員由管理員編號唯一標(biāo)識?!?每位讀者由讀者編號唯一標(biāo)識。〔4圖書編號是圖書的唯一標(biāo)識。〔5借閱圖書后需記錄圖書當(dāng)前狀態(tài)包括在館、不在館、已歸還、未歸還、是否續(xù)借。〔6同一圖書分類中可以有多本圖書,但是每本圖書只能在一種個(gè)圖書分類中。三.實(shí)體集及屬性publishDatepublishDatebookNoclassNobookNameintroductionauthorpublishNameBook圖3-1圖書實(shí)體集E-R圖AdminAdminadminNoaPhoneNumbereraddressaSexadminName圖3-2管理員實(shí)體集E-R圖ReaderReaderreaderNosexrPhoneNumberreaderNameinstituteborrowAdd圖3-3讀者實(shí)體集E-R圖BookClassBookClassclassNoClassName圖3-4圖書分類實(shí)體集E-R圖readerNosexrPhoneNumberreaderNamereaderNosexrPhoneNumberreaderNameReaderinstituteborrowAddborrowBookintroductionpublishNameclassNobookNamepublishDateauthorbookNoAdminAdmin_ReaderAdmin_BookadminNoaPhoneNumbereraddressaSexadminNamereaderNoborrowDateshouldDateBookClassadminNobookNorenewalclassNoClassNameClassifymn1n1n五.邏輯數(shù)據(jù)庫設(shè)計(jì)表3-1BookClass屬性名稱數(shù)據(jù)類型屬性描述classNovarchar<3>分類編號ClassNamevarchar<20>分類名稱表3-2Book屬性名稱數(shù)據(jù)類型屬性描述bookNovarchar<20>圖書編號classNovarchar<3>分類編號bookNamevarchar<3>圖書名稱authorvarchar<12>作者publishNamevarchar<50>出版社publishDatedatetime出版時(shí)間introductionvarchar<200>簡介表3-3Reader屬性名稱數(shù)據(jù)類型屬性描述readerNovarchar<12>讀者編號readerNamevarchar<10>讀者姓名rSexvarchar<2>讀者性別rPhoneNumbervarchar<12>institutevarchar<20>學(xué)院effectDatedatetime生效日期lostEffectDatedatetime失效日期breakRuleschar<2>違規(guī)情況borrowAddint累計(jì)借書表3-4Admin屬性名稱數(shù)據(jù)類型屬性描述adminNovarchar<12>管理員編號adminNamevarchar<12>管理員姓名aSexvarchar<2>管理員性別aPhoneNumbervarchar<12>addressvarchar<40>家庭住址表3-5Borrow屬性名稱數(shù)據(jù)類型屬性描述adminNovarchar<12>管理員編號bookNovarchar<20>圖書編號readerNovarchar<12>讀者編號borrowDatedatetime結(jié)束日期shouldDatedatetime應(yīng)該歸還日期renewalchar<4>是否續(xù)借表3-6Admin_Book屬性名稱數(shù)據(jù)類型屬性描述adminNovarchar<12>管理員編號bookNovarchar<20>圖書編號shopTomedatetime入庫時(shí)間inLibrarychar<4>是否在館表3-7Admin_Reader屬性名稱數(shù)據(jù)類型屬性描述adminNovarchar<12>管理員編號readerNovarchar<12>讀者編號bookNovarchar<20>圖書編號brCheckchar<4>歸還確認(rèn)六.?dāng)?shù)據(jù)庫編程1.創(chuàng)建表〔1創(chuàng)建圖書分類表BookClassCREATETABLEBookClass<classNovarchar<3>notnull,classNamevarchar<20>null,CONSTRAINTBookClassPKPRIMARYKEY<classNo>>〔2創(chuàng)建圖書表BookCREATETABLEBook<bookNovarchar<20>notnull,classNovarchar<3>notnull,bookNamevarchar<50>notnull,authorvarchar<12>notnull,publishNamevarchar<50>,publishDatedatetime,introductionvarchar<200>,CONSTRAINTBookPKPRIMARYKEY<bookNo>,CONSTRAINTBookPK1FOREIGNKEY<classNo>REFERENCESBookClass<classNo>>〔3創(chuàng)建管理員表AdminCREATETABLEAdmin<adminNovarchar<12>notnull,adminNamevarchar<12>notnull,aSexvarchar<2>notnull,aPhoneNumbervarchar<12>null,addressvarchar<40>null,CONSTRAINTAdminPKPRIMARYKEY<adminNo>>〔4創(chuàng)建讀者表ReaderCREATETABLEReader<readerNovarchar<12>notnull,readerNamevarchar<10>notnull,rSexvarchar<2>notnull,rPhoneNumbervarchar<12>null,institutevarchar<20>notnull,effectDatedatetime,lostEffectDatedatetime,breakRuleschar<2>,borrowAddint,CONSTRAINTReaderPKPRIMARYKEY<readerNo>>〔5創(chuàng)建借閱表BorrowCREATETABLEBorrow<adminNovarchar<12>notnull,bookNovarchar<20>notnull,readerNovarchar<12>notnull,borrowDatedatetimenotnull,shouldDatedatetimenotnull,renewalchar<4>notnull,CONSTRAINTBorrowPKPRIMARYKEY<adminNo,readerNo,bookNo>,CONSTRAINTBorrowPK1FOREIGNKEY<adminNo>REFERENCESAdmin<adminNo>,CONSTRAINTBorrowPK2FOREIGNKEY<readerNo>REFERENCESReader<readerNo>,CONSTRAINTBorrowPK3FOREIGNKEY<bookNo>REFERENCESBook<bookNo>,>〔6創(chuàng)建管理員_圖書表Admin_BookCREATETABLEAdmin_Book<adminNovarchar<12>notnull,bookNovarchar<20>notnull,shopTimedatetime,inLibrarychar<4>CONSTRAINTAdmin_BookPKPRIMARYKEY<adminNo,bookNo>,CONSTRAINTAdmin_BookPK1FOREIGNKEY<adminNo>REFERENCESAdmin<adminNo>,>〔7創(chuàng)建管理員_讀者Admin_ReaderCREATETABLEAdmin_Reader<adminNovarchar<12>notnull,readerNovarchar<12>notnull,bookNovarchar<20>notnull,brCheckchar<4>notnull,CONSTRAINTAdmin_readerPKPRIMARYKEY<adminNo,readerNo,bookNo>,CONSTRAINTAdmin_readerPK1FOREIGNKEY<adminNo>REFERENCESAdmin<adminNo>,CONSTRAINTAdmin_readerPK2FOREIGNKEY<readerNo>REFERENCESReader<readerNo>,CONSTRAINTAdmin_readerPK3FOREIGNKEY<bookNo>REFERENCESBook<bookNo>>2.創(chuàng)建觸發(fā)器CreateTriggerRENEWOnBorrowforUpdateAsIfUpdate<renewal>beginUpdateBorrowSetshouldDate=shouldDate+30WhereadminNo=1001end3.管理員操作〔1注冊INSERTINTOAdmin<adminNo,adminName,aSex,aPhoneNumber,address>VALUES<#adminNo,#adminName,#aSex,#aPhoneNumber,#address>〔2注銷DELETEFROM

Admin

WHERE<adminNo=#adminNo>;<3>修改個(gè)人信息UPDATEAdminSET<adminNo=#adminNo,adminName=#adminName,aSex=#aSex,aPhoneNumber#aPhoneNumber,address#address>;<4>增加圖書INSERTINTOBook<bookNo,classNo,bookName,author,publishName,publishDate,introduction>VALUES<#bookNo,#classNo,#bookName,#author,#publishName,#publishDate,#introduction><5>刪除圖書DELETEFROMBookWHERE<bookNo=#bookNo>〔6修改圖書信息UPDATEBook<bookNo=#bookNo,classNo=#classNo,bookName=#bookName,author=#author,publishName=#publishName,publishDate=#publishDate,introduction=#introduction>〔7增加圖書分類INSERTINTOBookClass〔classNo,classNameVALUES<#classNo,#className>〔8刪除圖書分類DELETEFROMBookClassWHERE<classNo=#classNo>〔9更新圖書分類UPDATEBookClass<classNo=#classNo,className=#className>4.讀者操作〔1注冊INSERTINTOReader<readerNo,readerName,rSex,rPhoneNumber,institute,effectDate,lostEffectDate,breakRules,borrowAdd>VALUES〔#readerNo,#readerName,#rSex,#rPhoneNumber,#institute,#effectDate,#lostEffectDate,#breakRules,#borrowAdd〔2注銷DELETEReaderWHERE〔readerNo=#readerNo〔3修改個(gè)人信息UPDATEReaderSET〔readerNo=#readerNo,readerName=#readerName,rSex=#rSex,rPhoneNumber=#rPhoneNumber,institute=#institute,effectDate=#effectDate,lostEffectDate=#lostEffectDate,breakRules=#breakRules,borrowAdd=#borrowAdd<4>查詢SELECT*FROMBookWHEREbookNo=#bookNoORbookName=#bookName5.管理員對借閱關(guān)系的操作<1>插入讀者的信息INSERT

INTOBorrow<adminNo,bookNo,readerNo,borrowDate,shouldDate,renewal>VALUES<#adminNo,#bookNo,#readerNo,#borrowDate,#shouldDate,#renewal><2>

更新信息①更新借出信息UPDATEBorrow

SET<borrowDate=#borrowDate,shouldDate=shouldDate+30,renewal=’0’>

WHERE<adminNo=#adminNo

AND

readerNo=#readerNo

AND

bookNo

=#bookNo>

UPDATEAdmin_Book

SET<inLibrary=’0’>

WHERE<bookNo=#bookNo>

UPDATA

Reader

SET

<borrowAdd=borrowAdd+1>

WHERE<readerNo=#readerNo>

INSERT

INTOAdmin_Reader<adminNo,readerNo,bookNo,brCheck>

VALUES<#adminNo,#readerNo,#bookNo,#brCheck>②更新續(xù)借信息UPDATE

Borrow

SET<renewal=#renewal>

WHERE<adminNo=#adminNo

AND

readerNo=#readerNo

AND

bookNo=#bookNo>③更新還書信息UPDATEAdmin_Book

SET<inLibrary=1>

WHERE<bookNo=#bookNo>

UPDATEAdmin_Reader

SET<brCheck=’1’>

WHERE<adminNo=#adminNo

AND

readerNo=#readerNo

AND

bookNo=#bookNo>七.代碼實(shí)現(xiàn)1.輸入數(shù)據(jù)設(shè)計(jì)〔1插入圖書分類INSERTINTOBookClass<classNo,className>VALUES<'C01','信息技術(shù)教材'>INSERTINTOBookClass<classNo,className>VALUES<'C02','小說'>INSERTINTOBookClass<classNo,className>VALUES<'C03','外語'>INSERTINTOBookClass<classNo,className>VALUES<'C04','漫畫'>〔2插入管理員INSERTINTOAdmin<adminNo,adminName,aSex,aPhoneNumber,address>VALUES<'1001','王子','女','012345678','北京'>〔3插入讀者INSERTINTOReader<readerNo,readerName,rSex,rPhoneNumber,institute,effectDate,lostEffectDate,breakRules,borrowAdd>VALUES<'11111','李瑞','男','123456789','軟件','2010-09-02','2014-06-30','1','10'>〔4插入圖書INSERTINTOBook<bookNo,classNo,bookName,author,publishName,publishDate,introduction>VALUES<'S1234','C01','數(shù)據(jù)庫系統(tǒng)原理與設(shè)計(jì)','萬常選','清華大學(xué)出版社','2009-03-05','數(shù)據(jù)庫教程'>INSERTINTOBook<bookNo,classNo,bookName,author,publishName,publishDate,introduction>VALUES<'S1235','C01','JAVA','吳京','清華大學(xué)出版社','2007-05-07','JAVA基礎(chǔ)教程'>INSERTINTOBook<bookNo,classNo,bookName,author,publishName,publishDate,introduction>VALUES<'S1236','C02','紅樓夢','曹雪芹','清華大學(xué)出版社','2009-09-04','中國四大名著之一'>INSERTINTOBook<bookNo,classNo,bookName,author,publishName,publishDate,introduction>VALUES<'S1237','C03','英語寫作','劉平惠','XX大學(xué)出版社','2006-10-21','基礎(chǔ)英語寫作教程'>INSERTINTOBook<bookNo,classNo,bookName,author,publishName,publishDate,introduction>VALUES<'S1238','C04','最漫畫','郭敬明','長江出版社','2011-03-17','漫畫連載'>〔5插入管理員_書籍表INSERTINTOAdmin_Book<adminNo,bookNo,shopTime,inLibrary>VALUES<'1001','S1234','2010-7-7','0'>INSERTINTOAdmin_Book<adminNo,bookNo,shopTime,inLibrary>VALUES<'1001','S1235','2008-7-8','1'>〔6插入借閱信息INSERTINTOBorrow<adminNo,bookNo,readerNo,borrowDate,shouldDate,renewal>VALUES<'1001','S1234','11111','2012-6-1','2010-7-1','0'>INSERTINTOAdmin_Reader<adminNo,readerNo,bookNo,brCheck>VALUES<'1001','11111','S1234','0'>2.完成借閱、續(xù)借、歸還的操作設(shè)計(jì)假設(shè)讀者想借書籍名為《JAVA》且不知道bookNo〔1借閱操作如下:if<<selectbookNamefromBookwherebookNo='S1235'>='JAVA'>beginINSERTINTOBorrow<adminNo,bookNo,r

溫馨提示

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

評論

0/150

提交評論