版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、成績(jī):實(shí) 驗(yàn) 報(bào) 告課程名稱:數(shù)據(jù)庫(kù)應(yīng)用技術(shù)實(shí)驗(yàn)項(xiàng)目:圖書館管理系統(tǒng)姓 名:專 業(yè):計(jì)算機(jī)科學(xué)與技術(shù)班 級(jí):計(jì)算機(jī)09-1班學(xué) 號(hào):計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院實(shí)驗(yàn)教學(xué)中心2012年 5月 10日1項(xiàng)目背景1.1 系統(tǒng)背景信息化是當(dāng)今世界發(fā)展的大趨勢(shì),所謂信息化,就是充分利用信息技術(shù),開發(fā)利用信息資源,促進(jìn)信息交流和知識(shí)共享,提高經(jīng)濟(jì)增長(zhǎng)質(zhì)量,推動(dòng)經(jīng)濟(jì)社會(huì)發(fā)展轉(zhuǎn)型的歷史進(jìn)程。大力推進(jìn)信息化發(fā)展,已成為我國(guó)經(jīng)濟(jì)社會(huì)發(fā)展新階段重要而緊迫的戰(zhàn)略任務(wù)。小型圖書館管理信息系統(tǒng)就是能滿足讀者和圖書相對(duì)數(shù)量較少的小型圖書館實(shí)現(xiàn)日常操作信息化和后臺(tái)統(tǒng)計(jì)電算化的系統(tǒng),它可以幫助圖書館管理人員處理基本的管理項(xiàng)目,使小型圖
2、書館也能滿足信息化的需要。開發(fā)這個(gè)小型圖書館管理軟件,利用計(jì)算機(jī)對(duì)圖書資料以及讀者資料進(jìn)行管理能提高工作效率,可方便查找圖書信息,快捷的借出或歸還圖書。管理員還可根據(jù)系統(tǒng)提供的圖書借閱排行榜功能即時(shí)了解圖書的需求信息,掌握今后圖書的訂購(gòu)計(jì)劃;也可根據(jù)罰款統(tǒng)計(jì)功能統(tǒng)計(jì)某一時(shí)間段內(nèi)收繳罰款的總額。本系統(tǒng)面向Windows操作系統(tǒng),以Microsoft Access 2003為后臺(tái)數(shù)據(jù)庫(kù),采用Visual Basic.NET作為開發(fā)工具,開發(fā)過程采用面向?qū)ο蠹夹g(shù)。1.2 系統(tǒng)意義 圖書館進(jìn)行社會(huì)教育,主要表現(xiàn)在可以為社會(huì)、為讀者提供最完備的學(xué)習(xí)條件:資源、場(chǎng)地、設(shè)備。受教育者可以長(zhǎng)期的、自由地利用圖
3、書館進(jìn)行自學(xué)。它還是學(xué)校教育的重要組成部分。在學(xué)校里,圖書館是基本的教育設(shè)施,它被譽(yù)為“知識(shí)的寶庫(kù)、知識(shí)的噴泉”,“大學(xué)的心臟”,“學(xué)校的第二課堂”,直接承擔(dān)著培養(yǎng)人才的重任。2 系統(tǒng)分析2.1 可行性分析1)技術(shù)可行性隨時(shí)計(jì)算機(jī)技術(shù)和管理信息系統(tǒng)的不斷進(jìn)步和發(fā)展,對(duì)小型圖書館的管理從以前手工管理轉(zhuǎn)移到計(jì)算機(jī)管理是切實(shí)可行的。由于市面上已經(jīng)有很多大型圖書館的管理軟件,因此在技術(shù)上是相當(dāng)成熟的,其可行性也是毋庸置疑的。本系統(tǒng)是針對(duì)小型單位或組織的小型圖書館來開發(fā)圖書館管理系統(tǒng),面向Windows操作系統(tǒng),以Microsoft Access 2003作為后臺(tái)數(shù)據(jù)庫(kù),采用Visual Basic.N
4、ET作為開發(fā)工具,采用面向?qū)ο蠹夹g(shù)。筆者對(duì)這兩種工具掌握程度較好,因此在技術(shù)上不存在問題。2)經(jīng)濟(jì)可行性本系統(tǒng)的開發(fā)只需有安裝好相應(yīng)運(yùn)行軟件的計(jì)算機(jī)即可,對(duì)經(jīng)濟(jì)的要求很低。項(xiàng)目成功后,可加快對(duì)數(shù)據(jù)的處理,節(jié)省人力,節(jié)約時(shí)間。系統(tǒng)對(duì)于輸入輸出的規(guī)范,也提高了數(shù)據(jù)的可用性,增強(qiáng)了數(shù)據(jù)庫(kù)的安全系數(shù)。運(yùn)用系統(tǒng)能方便的對(duì)圖書和讀者進(jìn)行錄入、修改、查詢和統(tǒng)計(jì)以及書籍借閱和歸還等工作,也能快速統(tǒng)計(jì)出圖書借閱排行榜,從而便于掌握對(duì)各類圖書的需求,對(duì)以后制訂的圖書訂購(gòu)計(jì)劃能提供一定幫助,具有一定的現(xiàn)實(shí)意義。3)操作可行性本系統(tǒng)界面友好,不僅提供各種查詢菜單欄,更提供直觀的工具欄按鈕,操作流程與實(shí)際流程一致,圖書
5、館管理人員只要稍加了解就能熟練操作。系統(tǒng)實(shí)現(xiàn)后,能使小型圖書館管理人員從繁雜的手工作業(yè)中解放出來,提高其工作效率。綜上所述,系統(tǒng)是可行的。2.2 需求分析小型圖書館管理信息系統(tǒng),是按照實(shí)際的圖書借閱流程來設(shè)計(jì)的,因此其功能也是跟實(shí)際的圖書館借閱功能一致。所以,該小型圖書館管理系統(tǒng)的設(shè)計(jì),要包含圖書借出、歸還功能和數(shù)據(jù)統(tǒng)計(jì)功能。主要應(yīng)具備以下業(yè)務(wù)處理能力:圖書借出,完成借書時(shí)的信息查詢,借后的信息入庫(kù),借書次數(shù)統(tǒng)計(jì)等等;圖書歸還,完成還書時(shí)的信息查詢和數(shù)據(jù)入庫(kù)等。另外還需具有圖書信息管理和讀者信息管理所需的基本功能,包括添加、刪除、修改和查詢,以及相關(guān)信息導(dǎo)入Excel和打印功能等。此外,一些相
6、關(guān)的數(shù)據(jù)統(tǒng)計(jì)功能也很必要,如借閱統(tǒng)計(jì)、讀者超期罰款統(tǒng)計(jì)等,可以為管理員工作提供參考。整個(gè)系統(tǒng)既要實(shí)現(xiàn)基本業(yè)務(wù),還要提供高效性、易用性和穩(wěn)定性的性能要求。2.3系統(tǒng)功能分析系統(tǒng)功能分析是在系統(tǒng)開發(fā)的總體任務(wù)的基礎(chǔ)上完成。圖書管理系統(tǒng)需要完成功能主要有:l 有關(guān)讀者種類標(biāo)準(zhǔn)的制定、種類信息的輸入,包括種類編號(hào)、種類名稱、借書數(shù)量、借書期限、有效期限、備注等。l 讀者種類信息的修改、查詢等。l 讀者基本信息的輸入,包括讀者編號(hào)、讀者姓名、讀者種類、讀者性別、工作單位、家庭住址、電話號(hào)碼、電子郵件地址、辦證日期、備注等。l 讀者基本信息的查詢、修改,包括讀者編號(hào)、讀者姓名、讀者種類、讀者性別、工作單位
7、、家庭住址、電話號(hào)碼、電子郵件地址、辦證日期、備注等等。l 書籍類別標(biāo)準(zhǔn)的制定、類別信息的輸入,包括類別編號(hào)、類別名稱、關(guān)鍵詞、備注信息等。l 書籍類別信息的查詢、修改,包括類別編號(hào)、類別名稱、關(guān)鍵詞、備注信息等。l 書籍信息的輸入,包括書籍編號(hào)、書籍名稱、書籍類別、作者姓名、出版社名稱、出版日期、書籍頁(yè)數(shù)、關(guān)鍵詞、登記日期、備注信息等。l 借書信息的查詢、修改,包括借書信息編號(hào)、讀者姓名、書籍編號(hào)、書籍名稱、借書日期、備注信息等。l 還書信息的輸入,包括還書信息編號(hào)、讀者編號(hào)、讀者姓名、書籍編號(hào)、書籍名稱、借書日期、還書日期、備注信息等。還書信息的查尋和修改,包括還書信息編號(hào)、讀者編號(hào)、讀者
8、姓名、書籍編號(hào)、書籍名稱、借書日期、還書日期、備注信息等。2.3.1系統(tǒng)功能模塊圖對(duì)上述各功能進(jìn)行集中、分塊,按照結(jié)構(gòu)化程序設(shè)計(jì)的要求,得到如圖一所示的系統(tǒng)功能模塊圖。2.4業(yè)務(wù)流程分析2.4.1 業(yè)務(wù)流程描述1)添加圖書新添加的圖書由管理員進(jìn)行入庫(kù)操作,添加圖書信息到圖書信息表中。管理員依次輸入圖書條形碼,書名,作者,出版社,出版時(shí)間,頁(yè)數(shù),類別,存放位置,圖書總數(shù)和圖書價(jià)格,系統(tǒng)自動(dòng)根據(jù)圖書類別、出版時(shí)間給出該書在數(shù)據(jù)庫(kù)中的唯一編號(hào),并同時(shí)記錄入館時(shí)間。所有這些信息將會(huì)被添加到圖書基本信息表中。2)添加讀者新加入的讀者也由管理員進(jìn)行添加操作,添加新讀者信息到讀者信息表中。管理員依次輸入讀者
9、姓名,單位部門,住址,備注,聯(lián)系電話和類別,系統(tǒng)自動(dòng)根據(jù)讀者類別等信息給出該讀者在數(shù)據(jù)庫(kù)中的唯一編號(hào),并自動(dòng)記錄登記日期。所有這些信息將被添加到讀者基本信息表中。3)圖書管理可以對(duì)數(shù)據(jù)庫(kù)中所有的圖書(包括在館和不在館的)進(jìn)行管理,可以對(duì)圖書信息進(jìn)行修改、刪除。首先使用“定位”來確認(rèn)要管理的圖書,也可通過圖書編號(hào)、條形碼等來查找要管理的圖書。4)讀者管理可以對(duì)數(shù)據(jù)庫(kù)中所有的讀者進(jìn)行管理,可以對(duì)讀者的信息進(jìn)行修改、刪除。首先使用“定位”來確認(rèn)要管理的讀者,也可通過讀者編號(hào)、姓名等來查找要管理的讀者。5)圖書借出業(yè)務(wù)讀者根據(jù)需要查詢圖書信息,找到要借圖書后,系統(tǒng)根據(jù)讀者編號(hào)和圖書編號(hào)調(diào)出相關(guān)信息,判
10、斷讀者能否借此書,并根據(jù)讀者類別計(jì)算應(yīng)還日期,借書成功后系統(tǒng)自動(dòng)在相關(guān)數(shù)據(jù)表中修改讀者借書信息以及該圖書相關(guān)信息。6)圖書歸還業(yè)務(wù)系統(tǒng)根據(jù)圖書實(shí)際歸還日期以及應(yīng)還日期判斷是否超期,根據(jù)罰款設(shè)置表中相關(guān)信息計(jì)算罰款金額,并提示過期讀者應(yīng)繳納的罰款金額,最后將歸還信息寫入數(shù)據(jù)庫(kù)各相應(yīng)的數(shù)據(jù)表中。7) 信息查詢業(yè)務(wù)包括圖書基本信息查詢,讀者基本信息查詢,在這個(gè)查詢界面,系統(tǒng)提供多種查詢條件供用戶選擇,根據(jù)需要查詢信息。主界面上的用戶自定義查詢都支持模糊查詢,以方便用戶。另外也可對(duì)所有借出圖書,當(dāng)日借出、當(dāng)日歸還、當(dāng)日新進(jìn)圖書信息進(jìn)行查詢,以及當(dāng)日借書讀者、當(dāng)日還書讀者,當(dāng)日新增讀者和過期未還讀者信息
11、的查詢。無論是那種查詢,都可以把查詢出來的數(shù)據(jù)導(dǎo)入到Excel或打印。8) 統(tǒng)計(jì)業(yè)務(wù)包括圖書借閱排名統(tǒng)計(jì)和罰款金額統(tǒng)計(jì)。在圖書借閱排名統(tǒng)計(jì)中,系統(tǒng)提供借出次數(shù)前10名的圖書排行榜,讓管理員掌握讀者的喜好,為以后購(gòu)買圖書提供參考。在罰款金額統(tǒng)計(jì)中,管理員只需選擇要統(tǒng)計(jì)的時(shí)間段,就可以統(tǒng)計(jì)出該時(shí)間段內(nèi)的罰款信息以及罰款總額。9)系統(tǒng)管理這部分包括修改管理員登錄密碼、圖書類別設(shè)置、存放位置設(shè)置和讀者類別設(shè)置等。10)打印操作 本系統(tǒng)提供所有圖書信息打印,所有讀者信息打印等,另外也提供自定義打印,即可對(duì)查詢出來的結(jié)果進(jìn)行打印。2.4.2 系統(tǒng)業(yè)務(wù)流程圖業(yè)務(wù)流程圖(Transaction Flow Di
12、agram, TFD)是一種描述系統(tǒng)內(nèi)各單位、人員之間業(yè)務(wù)關(guān)系,作業(yè)順序和管理信息流向的圖表1。業(yè)務(wù)流程圖常用符號(hào)如圖所示:根據(jù)上述對(duì)圖書館管理流程一系列的調(diào)研和分析,可以得到如下圖所示的系統(tǒng)綜合業(yè)務(wù)流程圖:2.5 數(shù)據(jù)流程分析數(shù)據(jù)流程圖(Data Flow Diagram, DFD)是以管理業(yè)務(wù)流程圖為依據(jù),通過抽象以舍去具體的組織結(jié)構(gòu)、工作場(chǎng)所和物流等,單從數(shù)據(jù)信息流動(dòng)的角度,來描述系統(tǒng)內(nèi)部及系統(tǒng)與環(huán)境之間的數(shù)據(jù)信息的傳遞、處理和存儲(chǔ)過程的一種工具1。數(shù)據(jù)流程圖中常用的符號(hào)如圖所示:根據(jù)系統(tǒng)的業(yè)務(wù)流程,對(duì)其中的數(shù)據(jù)流向、處理及數(shù)據(jù)存儲(chǔ)進(jìn)行分析后,可以得到本系統(tǒng)的數(shù)據(jù)流程圖:2.6 數(shù)據(jù)字典
13、數(shù)據(jù)字典是用來規(guī)范化描述數(shù)據(jù)具體內(nèi)容的工具,也是對(duì)數(shù)據(jù)匯總分析的一個(gè)總結(jié),包括數(shù)據(jù)流字典、數(shù)據(jù)存儲(chǔ)字典和數(shù)據(jù)處理字典(分別如下文所示)。數(shù)據(jù)流程圖配以數(shù)據(jù)字典,就可以從圖形和文字兩個(gè)方面對(duì)系統(tǒng)的邏輯模型進(jìn)行完整的描述1。數(shù)據(jù)流字典清單:1) 編號(hào):F1名稱:讀者借閱請(qǐng)求來源:讀者去向:P1檢查庫(kù)存和讀者信息內(nèi)容:讀者相關(guān)信息以及要借圖書編號(hào)或條形碼等信息2) 編號(hào):F2名稱:新的借閱信息來源:P1檢查庫(kù)存和讀者信息去向:P2創(chuàng)建新的借書記錄內(nèi)容:讀者合法且可以借書,圖書有庫(kù)存可以借出3) 編號(hào):F3名稱:新的讀者信息來源:P1檢查庫(kù)存和讀者信息去向:P3創(chuàng)建新讀者內(nèi)容:沒有該讀者,以及新讀者的
14、基本信息如姓名、單位等4) 編號(hào):F4名稱:圖書相關(guān)信息來源:D2圖書信息表去向:P1檢查庫(kù)存和讀者信息內(nèi)容:被要求借閱圖書的信息,包括圖書基本屬性和現(xiàn)有數(shù)量等信息5) 編號(hào):F5名稱:合法的讀者信息來源:P3創(chuàng)建新讀者去向:D1讀者信息表內(nèi)容:系統(tǒng)要求的讀者信息,如姓名、單位、登記日期等6) 編號(hào):F6名稱:讀者情況來源:D1讀者信息表去向:P1檢查圖書庫(kù)存和讀者信息內(nèi)容:有借書請(qǐng)求的讀者相關(guān)情況7) 編號(hào):F7名稱:超期罰款標(biāo)準(zhǔn)來源:D1讀者信息表去向:P5計(jì)算罰款金額內(nèi)容:超期讀者的類別以及該類別超期的罰款標(biāo)準(zhǔn)8) 編號(hào):F8名稱:借閱信息來源:P2創(chuàng)建新的借閱記錄去向:D3借閱情況表內(nèi)
15、容:借書的讀者信息以及所及圖書信息,借書日期9) 編號(hào):F9名稱:歸還圖書請(qǐng)求來源:讀者去向:P4歸還圖書內(nèi)容:讀者信息,要?dú)w還圖書信息10)編號(hào):F10名稱:歸還圖書信息來源:P4歸還圖書去向:D3借閱信息表內(nèi)容:讀者信息,歸還的圖書信息,還書時(shí)間11)編號(hào):F11 名稱:超期天數(shù)來源:P4歸還圖書去向:P5計(jì)算罰款金額內(nèi)容:讀者超期圖書的超期天數(shù)12)編號(hào):F12名稱:罰款記錄來源:P5計(jì)算罰款金額去向:D4罰款金額統(tǒng)計(jì)表內(nèi)容:讀者以及超期圖書相關(guān)信息,超期天數(shù),罰款總額13)編號(hào):F13名稱:罰款金額通知來源:P5計(jì)算罰款金額去向:讀者內(nèi)容:讀者為超期圖書支付的罰款金額數(shù)據(jù)存儲(chǔ)字典清單:
16、1) 編號(hào):D1名稱:讀者信息表輸入數(shù)據(jù)流:新讀者信息輸出數(shù)據(jù)流:讀者相關(guān)信息內(nèi)容:讀者編號(hào)、姓名、性別、單位部門、聯(lián)系電話、類別、等級(jí)日期、借書次數(shù)等與讀者有關(guān)的各種信息2) 編號(hào):D2名稱:圖書信息表輸入數(shù)據(jù)流:新圖書信息輸出數(shù)據(jù)流:圖書相關(guān)信息內(nèi)容:圖書編號(hào)、條形碼、書名、作者、出版社出版時(shí)間、頁(yè)數(shù)、類別、存放位置、圖書總數(shù)、入館時(shí)間、如數(shù)價(jià)格、借出次數(shù)等與圖書有關(guān)的各種信息3) 編號(hào):D3名稱:圖書借閱情況表輸入數(shù)據(jù)流:讀者信息,圖書信息,讀者借閱請(qǐng)求等輸出數(shù)據(jù)流:圖書借閱中讀者和圖書相關(guān)信息內(nèi)容:編號(hào),借書者信息、所借圖書信息、借書日期等4) 編號(hào):D4名稱:罰款統(tǒng)計(jì)表輸入數(shù)據(jù)流:超
17、期天數(shù)、讀者信息、罰款標(biāo)準(zhǔn)等輸出數(shù)據(jù)流:讀者超期罰款相關(guān)信息內(nèi)容:超期圖書的借閱者、超期天數(shù)、罰款金額等數(shù)據(jù)處理字典清單:1) 編號(hào):P1名稱:檢查圖書庫(kù)存和讀者信息輸入:讀者借書請(qǐng)求處理邏輯情況:根據(jù)讀者借書請(qǐng)求,參考D1和D2,若沒有該讀者則創(chuàng)建新讀者,若圖書可借則創(chuàng)建新的借閱信息輸出:創(chuàng)建新的借閱信息2) 編號(hào):P2名稱:創(chuàng)建新的借書記錄輸入:新借書信息,即讀者和所借圖書相關(guān)信息處理邏輯情況:根據(jù)P1的結(jié)果,將新借閱信息添加到D3(圖書借閱情況表)中輸出:新的借閱信息3) 編號(hào):P3名稱:創(chuàng)建新讀者輸入:新讀者信息處理邏輯情況:根據(jù)讀者的基本信息,給出讀者編號(hào),添加到D2(讀者信息表)中
18、輸出:新加入的讀者信息4) 編號(hào):P4名稱:歸還圖書輸入:還書請(qǐng)求處理邏輯情況:根據(jù)還書讀者屬性,以及借閱情況,判斷是否過期,若沒有則還書成功,若過期,則執(zhí)行P5輸出:歸還信息5) 編號(hào):P5名稱:計(jì)算罰款金額輸入:罰款標(biāo)準(zhǔn)、超期天數(shù)處理邏輯情況:根據(jù)該讀者的超期天數(shù)、對(duì)應(yīng)的罰款標(biāo)準(zhǔn)計(jì)算出罰款金額,填入D4(罰款統(tǒng)計(jì)表)中輸出:罰款信息3.數(shù)據(jù)庫(kù)設(shè)計(jì)3.1 ER圖設(shè)計(jì)規(guī)劃出的實(shí)體有:讀者類別信息實(shí)體、讀者信息實(shí)體、書籍類別信息實(shí)體、書籍信息實(shí)體、借閱信息實(shí)體、借閱信息實(shí)體。各個(gè)實(shí)體具體的描述E-R圖如下。讀者類別信息實(shí)體讀者類別信息實(shí)體E-R圖借書數(shù)量種類編號(hào)種類名稱借書期限 讀者信息實(shí)體E-
19、R圖。讀者信息實(shí)體辦證日期讀者編號(hào)讀者類別讀者姓名 書籍類別實(shí)體E-R圖書籍類別信息實(shí)體備注信息類別編號(hào)類別名稱關(guān)鍵詞 書籍信息實(shí)體E-R圖書籍信息實(shí)體出版社書籍編號(hào)書籍類別書籍名稱 借閱信息實(shí)體E-R圖借閱信息實(shí)體借書借書借閱信息編號(hào)書籍信息讀者信息 實(shí)體之間相互關(guān)系的E-R圖書籍類別信息讀者類別信息 讀者信息登記書籍信息登記書籍信息管理讀者信息管理借閱登記借閱信息管理3.2 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)E-R圖是建立數(shù)據(jù)模型的基礎(chǔ),根據(jù)E-R模型向關(guān)系模式的轉(zhuǎn)換規(guī)則,可以將E-R圖中所有的實(shí)體和聯(lián)系都用關(guān)系來表示,從而可以得到數(shù)據(jù)庫(kù)的邏輯模型。該圖書館管理信息系統(tǒng)中各個(gè)數(shù)據(jù)表的設(shè)計(jì)如下所示:圖書館管
20、理系統(tǒng)中數(shù)據(jù)庫(kù)的各個(gè)表格設(shè)計(jì)結(jié)果如下: 書庫(kù)圖書信息表列名列名表示數(shù)據(jù)類型長(zhǎng)度圖書編號(hào)BIDNumber20書名BnameVarchar220類別LiebieVarchar220出版社ChubansheVarchar220作者ZuozheVarchar220版次BanciNumber20定價(jià)PriceNumber20是否損壞BrokenBoolean5是否遺失MissBoolean5入庫(kù)時(shí)間TimeDate/Time20庫(kù)存總數(shù)BtotalNumnumber20已借出數(shù)BborrowedNumNumber20 學(xué)生信息表列名列名表示數(shù)據(jù)類型長(zhǎng)度學(xué)號(hào)StuOrdNumber20姓名StuName
21、Varchar220性別SexBoolean5系別XibieVarchar220班級(jí)ClassNumber20已借圖書StuBorrowInteger5已借數(shù)量StunNumNumber20 借閱信息表列名列名表示數(shù)據(jù)類型長(zhǎng)度圖書編號(hào)BIDNumber20學(xué)號(hào)StuOrdNumber20書名BnameVarchar220學(xué)生姓名StuNameVarchar220已借圖書BorrowNumInteger5借閱日期DateDate/Time20是否歸還BackBoolean5續(xù)借XujieBoolean5 過期書信息表列名列名表示數(shù)據(jù)類型說明圖書編號(hào)BIDNumber20書名BNameVarcha
22、r220學(xué)號(hào)StuOrdNumber20學(xué)生姓名StuNameVarchar220過期時(shí)間DeadtimeDate/Time20 罰款信息表列名列名表示數(shù)據(jù)類型長(zhǎng)度流水號(hào)SerialIDNumber20罰款原因ReasonVarchar2100罰款金額NumNumber5日期DateDate/Time203.3物理結(jié)構(gòu)設(shè)計(jì)3.3.1創(chuàng)建表空間1、 創(chuàng)建表空間create tablespace book_tbsdatafile'C:lib_tablespacebook_tbs01.dbf'size 32m;2、 在oracle中創(chuàng)建用戶book并使用上面的表空間create us
23、er bookidentified by bookdefault book_tbs;3、 給book用戶授權(quán)并使用book用戶完成下列步驟grant create session,dba to book;4、 創(chuàng)建各對(duì)象表書庫(kù)圖書信息表:create table books( BID number(20), Bname varchar2(20), Liebie varchar2(20), Chubanshe varchar2(20), Zuozhe varchar2(20), Banci number(20), Price number(5),Broken boolean(5),Miss Bo
24、olean(5),Time data,BtotalNum number(20),BborrowedNum number(20);學(xué)生信息表:create table students( StuOrd number(20), StuName varchar2(20), Sex Boolean, Xibie varchar2(20), Class number(20), StuBorrow int StuNum number(20);借閱信息表:create table borrow ( BID number(20), Bname varchar2(20),StuOrd number(20), S
25、tuName varchar2(20),BorrowNum int, Date date, Liebie varchar2(20), Back boolean,Xujie boolean);過期書信息表:create table guoqi ( BID number(20),Bname varchar2(20),StuOrd number(20), StuName varchar2(20),Deadtime date);罰款信息表:create table fakuan(SerialID number(20),Num number(5),Reason varchar2(100),Date da
26、te);3.3.2創(chuàng)建觸發(fā)器1. 創(chuàng)建觸發(fā)器-(查詢圖書信息)Create trigger selectBorrowon borrowfor selectas declare btotal int,bborrowed intselect Btotal=BTotalNum,Bborrowed=BborrowedNum from inserteddbms.output.put_line(圖書總量:| Btotal)dbms.output.put_line(圖書借書數(shù):| Bborrowed)end;/2. 創(chuàng)建觸發(fā)器-(查詢學(xué)生信息)Create trigger selectStudenton s
27、tudentsfor selectasdeclare StuOrd number,StuName varchar2, StuNum number, StuBorrow intselect StuOrd = StuOrd, StuName = StuName,StuNum= StuNum, StuBorrow= StuBorrow from inserteddbms.output.put_line(學(xué)號(hào):| StuOrd)dbms.output.put_line(學(xué)生姓名:| StuName)dbms.output.put_line(學(xué)生借書量:| StuNum)dbms.output.put_
28、line(學(xué)生借書科目:| StuBorrow)end;/ 3.創(chuàng)建觸發(fā)器-(書本沒有庫(kù)存,則無法進(jìn)行借書操作)Create trigger tri_Bookon Booksfor updateasdeclare btotal int,bborrowed intselect Btotal=BTotalNum,Bborrowed=BborrowedNum from insertedif(Btotal<Bborrowed)beginrollback transactiondbms.output.put_line( '無法借閱!')dbms.output.put_line( &
29、#39;對(duì)不起,此書已經(jīng)沒有庫(kù)存,無法進(jìn)行本次借書操作!')end;/4.創(chuàng)建觸發(fā)器-借書要求(讀者最多借閱量)-假定學(xué)生最多只能借五本書Create trigger BorrowNumon borrowfor insertasdeclare no char(10),num tinyint -獲得學(xué)號(hào)select no=StuOrd from inserted -統(tǒng)計(jì)學(xué)生借書總量并做相應(yīng)處理select num=count(*)from borrowwhere Sno=noif(num>5) -假定學(xué)生最多只能借五本書beginrollback transactiondbms.o
30、utput.put_line( '無法借閱!')dbms.output.put_line( '對(duì)不起,你的借閱總量已經(jīng)達(dá)到5本,無法進(jìn)行本次借書操作!請(qǐng)歸還部分書籍后,再進(jìn)行借書操作!')end;/5.創(chuàng)建觸發(fā)器-(圖書過期要求)Create trigger tri_SRenewBookon studentsfor updateas declare s intselect s=Deadtime from insertedif(s>60)beginrollback transactiondbms.output.put_line( '您借的圖書已過期,
31、無法再借閱別的書.')end/3.3.3創(chuàng)建視圖1.create view book_view(bv_BID,bv_Bname,bv_Bborrowed,bv_Btotal)asselect BID,Bname,BborrowedNum,Btotal,from books;2.create view student_view(sv_StuOrd,sv_StuName,sv_Class,sv_BorrowNum)asselect StuOrd, StuName, Class, BorrowNum from students;3.create view borrow_view(jv_BID
32、,jv_StuOrd,jv_StuName,jv_Bname,jv_ BorrowNum,jv_Back) as select BID,StuOrd,StuName,Bname,BorrowNum,Back from borrow;4. create view guoqi_view(gusv_BID,gusv_Bname,gusv_StuName,gusv_ Class)as select BID, Bname, StuName, Class from guoqi;4系統(tǒng)模塊設(shè)計(jì)4.1圖書館管理信息系統(tǒng)主窗體的設(shè)計(jì)一.創(chuàng)建工程項(xiàng)目-Library MIS打開Visual Basic后,單擊Fi
33、lelNew Project菜單,在工程模板中選擇Standard EXE,Visual Basic將自動(dòng)產(chǎn)生一個(gè)Form窗體,屬性都是缺省設(shè)置.這里我們刪除這個(gè)窗體,單擊FilelSave Project菜單,將這個(gè)工程項(xiàng)目命名為L(zhǎng)ibray MIS.二.創(chuàng)建圖書館管理信息系統(tǒng)的主窗體這個(gè)項(xiàng)目使用多文檔界面,單擊工具藍(lán)欄中的ADD MDI Form 按鈕,生成一個(gè)窗體.在這個(gè)窗體上添加需要的控件,窗體和控件的屬性設(shè)置如表6.表六 主窗體及其控件屬性設(shè)置 控 件屬 性屬性取值frmMain(Form) NameFrmMainCaption圖書館管理信息系統(tǒng)StarUpositonCenterS
34、creenWindowStateMaximizedSbStatusBar(StatusBar)NameSbStatusBarPanles(1)StyleSbrTextPanles(2)StyleSbrDatePanles(3)StyleSbrTime在主窗體中加入狀態(tài)欄控件,可以實(shí)時(shí)反映系統(tǒng)中的各個(gè)狀態(tài)的變化.狀態(tài)欄控件需要在通常的屬性窗口中設(shè)置一般屬性,還需要在其特有的彈出式菜單中進(jìn)行設(shè)置.選中狀態(tài)欄控件,單擊鼠標(biāo)右鍵,選中Property菜單,然后設(shè)置屬性.面板1用來顯示各種文本信息,面板2用來顯示當(dāng)前日期,面板3用來顯示當(dāng)前時(shí)間.創(chuàng)建好的窗體如圖9所示. 圖 9 圖書館管理信息系統(tǒng)主窗體
35、三.創(chuàng)建主窗體的菜單在如圖9所示的主窗體中,單擊鼠標(biāo)右鍵,選擇彈出式菜單中的Menu Editor,創(chuàng)建如圖10所示的菜單結(jié)構(gòu).系統(tǒng)····修改密碼····添加用戶····退出讀者管理····讀者種類管理········添加讀者種類········修改讀者種類·
36、3;······刪除讀者種類····讀者信息管理········添加讀者信息········修改讀者信息········刪除讀者信息書籍管理····書籍類別管理·····
37、···添加書籍類別········修改書籍類別········刪除書籍類別····書籍信息管理········添加書籍信息········修改書籍信息·····
38、···刪除書籍信息借閱信息管理····借書信息管理·······添加借書信息·······修改借書信息·······刪除借書信息·······查詢借書信息····還書信息管理···
39、····添加還書信息·······修改還書信息·······查詢還書信息幫助.·········About 圖10 主窗體中的菜單結(jié)構(gòu)四.創(chuàng)建公用模塊在中可以用公用模塊來存放整個(gè)工程項(xiàng)目公用的函數(shù)過程和全局變量等這樣可以極大地提高代碼的效率在項(xiàng)目資源管理器中為項(xiàng)目添加一個(gè)Module,保存為module.bas.由于系統(tǒng)中各個(gè)功
40、能模塊都將頻繁使用數(shù)據(jù)庫(kù)中的各種數(shù)據(jù),因此需要一個(gè)公共的數(shù)據(jù)操作函數(shù),用以執(zhí)行各種SQL語(yǔ)句添加函數(shù)ExecuteSQL. 在ExecuteSQL函數(shù)中使用了Connect String函數(shù),這個(gè)函數(shù)用來連接數(shù)據(jù)庫(kù)。在錄入有關(guān)信息時(shí),需要回車來進(jìn)入下一個(gè)文本框,這樣對(duì)軟件使用非常方便.在所有的功能模塊都需要這個(gè)函數(shù),所以將它放在公用模塊中。Keyasc用來保存當(dāng)前按鍵,SendKeys函數(shù)用來指定的按鍵一旦單擊回車鍵,將返回Tab鍵,下一個(gè)控件自動(dòng)獲得輸入焦點(diǎn)添加全局變量,用來記錄各個(gè)窗體的讀寫狀態(tài)。gintRTmode變量用來記錄是添加狀態(tài)欄還是修改狀態(tài),賦值為添加,賦值為修改 flagRT
41、edit變量用來標(biāo)示是否進(jìn)入修改的窗體其它全局變量同理由于圖書館管理信息管理系統(tǒng)啟動(dòng)后,需要對(duì)用戶進(jìn)行判斷如果登錄者是授權(quán)用戶,將進(jìn)入系統(tǒng),否則將停止程序的執(zhí)行這個(gè)判斷需要在系統(tǒng)運(yùn)行的最初進(jìn)行,因此將代碼放在公用模塊中4.2讀者種類管理模塊的設(shè)計(jì)圖書館需要管理不同種類的讀者,并且不同讀者享受的服務(wù)不同.讀者種類管理模塊主要實(shí)現(xiàn)如下功能:l 添加讀者種類.l 修改讀者種類.l 刪除讀者種類.一.添加讀者種類窗體的創(chuàng)建選擇”讀者管理讀者種類管理添加讀者種類”菜單.將出現(xiàn)如圖11所示的窗體: 圖 11 添加讀者種類窗體在窗體上放置多個(gè)文本框,用來輸入讀者種類信息;兩個(gè)按鈕用來確定是否添加讀者種類信息
42、;多個(gè)標(biāo)簽用來提示文本框中需要輸入的內(nèi)容.這些控件的屬性見表7.表七 添加讀者種類窗體中各個(gè)控件的屬性設(shè)置控 件屬 性屬性取值frmReadertype(Form)NamefrmReadertypeCaption客房標(biāo)準(zhǔn)MDIChildTruetxtItem(0)-txtItem(4)NametxtItem(0)-txtItem(4)Label 1Caption種類編號(hào)Label 2Caption種類名稱Label 3Caption借書數(shù)量Label 4Caption借書期限Label 5Caption有效期限Label 6Caption備注信息在載入窗體時(shí),程序首先判斷所處狀態(tài)。載入窗體時(shí),
43、將首先通過變量gintRTmode判斷是添加還是修改.如果是添加狀態(tài),文本框?qū)⑶宄齼?nèi)容,窗體有提示信息:如果是修改狀態(tài),將選擇顯示當(dāng)前的記錄.用戶輸入內(nèi)容完畢后,單擊cmdSave按鈕將觸發(fā)Click事件。程序首先對(duì)是否輸入內(nèi)容進(jìn)行判斷,然后進(jìn)行格式判斷.程序?qū)⑴袛嗍欠裼兄貜?fù)編號(hào)的記錄,然后添加數(shù)據(jù)到數(shù)據(jù)庫(kù).最后根據(jù)狀態(tài)來顯示相應(yīng)的信息:如果是添加狀態(tài),將提示添加成功,然后重新顯示并清空所有文本框,以便繼續(xù)添加記錄;如果處于修改狀態(tài),將提示修改成功,然后更新所有記錄的列表.當(dāng)文本框獲得焦點(diǎn)時(shí)將觸發(fā)下面的事件:自動(dòng)選中輸入的內(nèi)容,便于修改.Private Sub txtItem GotFocus
44、(Index As Integer)txtItem(Index).SelStart=0txtItem(Index).SelLength=Len(txtItem(Index)End Sud單擊CmdExit按鈕取消添加信息。輸入完內(nèi)容,按回車鍵將自動(dòng)進(jìn)入下一個(gè)文本框,將觸發(fā)文本框的Keydown事件。按鍵號(hào)碼傳遞給EnterTo Tab函數(shù),如果是回車自動(dòng)轉(zhuǎn)換為Tab鍵.二.修改讀者種窗體的創(chuàng)建選擇“讀者管理讀者種類管理修改讀管理修改讀者種類”菜單,將出現(xiàn)如圖12所示的窗體,窗體放置一個(gè)表格空件。 圖 12 讀者種類記錄列表窗體載入窗體時(shí),觸發(fā)窗體的Load事件,顯示當(dāng)前數(shù)據(jù)庫(kù)中所有的記錄。選擇
45、記錄,然后單擊鼠標(biāo)右鍵,將觸發(fā)MouseUp事件,并出現(xiàn)入圖13的彈出式菜單。 圖 13 彈出式菜單這個(gè)事件發(fā)生在松開鼠標(biāo)的時(shí)候。代碼如下:Private Sub msgListMouseUp(Button As Integer,Shift As Integer, x As Single, y As Single)If Button=2 And Shift=0 ThenPopupMenu fMainForm.menuReadertypeEnd IfEnd Sub在彈出式菜單中選擇“修改讀者種類”,將觸發(fā)菜單的事件,然后在如圖5所示的窗體中載入當(dāng)前的內(nèi)容。當(dāng)窗口變化時(shí),需要調(diào)整標(biāo)簽和表格的位置,
46、使標(biāo)簽始終處于窗體的最上方,而表格始終處于標(biāo)簽的下方。窗體的大小變化時(shí)將觸發(fā)Resize事件。三.刪除讀者種類選擇“讀者管理讀者種類管理刪除讀者種類”菜單,將出現(xiàn)記錄列表。選擇相應(yīng)記錄,單擊鼠標(biāo)右鍵,選擇彈出式菜單,將刪除當(dāng)前記錄。4.3讀者信息管理模塊設(shè)計(jì)讀者信息管理模塊主要實(shí)現(xiàn)如下功能:l 添加讀者信息。l 修改讀者信息。l 刪除讀者信息。l 查詢讀者信息。一.添加讀者信息窗體的創(chuàng)建選擇“讀者管理讀者信息管理添加讀者信息”菜單,將出現(xiàn)如圖14所示的窗體。 圖 14 添加讀者信息窗體窗體中各個(gè)空件屬性這里就不一一介紹。將各種文本框放在窗體的框架中,組成“讀者種類”和“讀者信息”兩項(xiàng)。載入窗體
47、時(shí),讀者種類中自動(dòng)添加讀者種類信息,代碼加在窗體的Load事件中。輸入完內(nèi)容,單擊“保存”按鈕,觸發(fā)Click事件,首先檢查文本內(nèi)容是否符合格式要求,然后判斷是否有重復(fù)記錄,并更新讀者表中的相關(guān)信息,最后添加內(nèi)容到數(shù)據(jù)庫(kù)。二.修改讀者信息選擇“讀者管理讀者信息管理修改讀者信息“菜單,將出現(xiàn)如圖15所示的窗體。 圖 15 修改讀者信息窗體窗體中放置了一個(gè)表格控件,所有讀者記錄都顯示在里面。選擇需要修改的記錄,如圖16所示的彈出式菜單中選擇“修改讀者信息“命令,出現(xiàn)圖16的窗體,然后進(jìn)行修改。 圖 16 修改讀者信息的彈出式菜單選擇“修改讀者信息“命令,將觸發(fā)的事件。程序判斷為修改狀態(tài)后,首先刪除
48、原有記錄,然后把新內(nèi)容加入到數(shù)據(jù)庫(kù)中。三.刪除讀者信息在讀者記錄列表中選擇記錄,然后選擇如圖16菜單中的“刪除讀者信息“命令,將刪除當(dāng)前記錄。四.查詢讀者信息選擇“讀者管理讀者信息管理查詢讀者信息”菜單,將出現(xiàn)如圖17所示的窗體。在這里可以按照各種方式以及它們的組合進(jìn)行查詢。 圖 17 查詢讀者信息的窗體載入窗體時(shí),將自動(dòng)加入所有讀者種類的信息。滿足查詢條件的所有記錄將顯示在如圖9所示的窗體中4.4書籍類別管理模塊的設(shè)計(jì)書籍類別管理模塊主要實(shí)現(xiàn)如下功能:l 添加書籍類別。l 修改書籍類別。l 刪除訂房信息。一.添加書籍類別窗體的創(chuàng)建選擇“書籍管理查書籍類別管理添加書籍類別”菜單,將出現(xiàn)如圖18
49、所示的窗體,用來添加書籍類別。 圖 18 添加書籍類別窗體二.修改書籍類別選擇“書籍管理查書籍類別管理修改書籍類別”菜單,將出現(xiàn)如圖19所示的窗體。 圖 19 書籍類別信息列表在列表中選中記錄,單擊鼠標(biāo)右鍵出現(xiàn)如圖20所示的彈出式菜單,然后選擇“修改書籍類別”命令。 圖 20 彈出式菜單所選記錄出現(xiàn)在如圖18所示的窗體中,然后可以對(duì)記錄內(nèi)容進(jìn)行修改。三.刪除書籍類別在書籍類別表中選擇記錄,并在彈出式菜單中“刪除書籍類別”命令,將刪除當(dāng)前記錄。4.5書籍信息管理模塊的設(shè)計(jì)書籍信息管理模塊主要實(shí)現(xiàn)如下功能:l 添加書籍信息。l 修改書籍信息。l 刪除書籍信息。l 查詢書籍信息。 一.添加書籍信息窗
50、體的設(shè)計(jì)選擇“書籍管理書籍信息管理添加書籍信息”菜單,將首先出現(xiàn)如圖21所示的窗體。 圖 21 添加書籍信息窗體輸入完畢,單擊“保存”按鈕,程序?qū)⑹紫葯z查內(nèi)容是否符號(hào)要求,然后檢查是否有重復(fù)記錄,最后添加到數(shù)據(jù)庫(kù)中。二.修改書籍信息選擇“書籍管理書籍信息管理修改書籍信息”菜單,將首先出現(xiàn)如圖22所示的窗體。 圖 22 書籍信息記錄列表選擇需要修改的記錄,單擊右鍵,出現(xiàn)如圖23所示的彈出式菜單,選擇“修改書籍信息”命令,就可以在如圖21所示的窗體中對(duì)記錄進(jìn)行修改。 圖 23 書籍信息管理的彈出式菜單三.刪除書籍信息選擇書籍信息列表中的記錄,單擊鼠標(biāo)右鍵,在如圖23所示的彈出式菜單中選擇“刪除書籍
51、信息”命令,可以刪除所選記錄。四.查詢書籍信息選擇“書籍管理書籍信息管理查詢書籍信息”菜單,將首先出現(xiàn)如圖24所示的窗體。 圖 24 查詢書籍信息窗體設(shè)置查詢方式并輸入查詢內(nèi)容后,單擊“確定”按鈕后,所有滿足要求的記錄都將顯示在如圖24所示的窗體中。4.6借書信息管理模塊的設(shè)計(jì)借書信息管理模塊主要實(shí)現(xiàn)如下功能:l 添加借書信息。l 修改借書信息。l 刪除借書信息。l 查詢借書信息。 一.添加借書信息窗體的創(chuàng)建選擇“借閱信息管理借書信息管理添加借書信息”菜單,將首先出現(xiàn)如圖25所示的窗體。 圖 25 添加借書信息窗體載入窗體時(shí),所有書籍信息和讀者信息都將自動(dòng)加入。在下拉式文本框中選擇書籍種類時(shí),書籍名稱中將自動(dòng)加入所有書籍的名稱;選擇書籍名稱后,所有書籍信息都將顯示出來;選擇讀者種類后,讀者姓名中將自動(dòng)加入所有同類型的讀者;選擇讀者姓名后,所有讀者信息都將顯示出來。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 配電設(shè)備改造工程
- 2024年高中語(yǔ)文 第五單元 寫作任務(wù)指導(dǎo)-學(xué)寫演講稿教案 新人教版必修下冊(cè)
- 2024-2025學(xué)年高中數(shù)學(xué) 第五章 三角函數(shù) 5.2.1 三角函數(shù)的概念 第2課時(shí) 三角函數(shù)的性質(zhì)教案 新人教A版必修第一冊(cè)
- 湖南省株洲景炎學(xué)校七年級(jí)地理上冊(cè) 2.3 世界的地形教案 湘教版
- 八年級(jí)生物上冊(cè) 第五單元 第四章 第二節(jié)《細(xì)菌》教案 (新版)新人教版
- 總體交通規(guī)劃設(shè)計(jì)合同(2篇)
- 雨棚使用年限合同(2篇)
- 漢字課件 博客
- 故事坐井觀天課件
- 寒號(hào)鳥課件講解
- 煤氣柜設(shè)計(jì)安全要求
- 采購(gòu)管理流程和采購(gòu)工作流程
- 數(shù)學(xué)專業(yè)參考書整理推薦
- DB65T 3952-2016反恐怖防范設(shè)置規(guī)范 學(xué)校
- 土力學(xué)地基基礎(chǔ)電子書
- 《化鎳金之腐蝕》
- 繼承和發(fā)揚(yáng)中國(guó)革命道德
- 《品人錄》讀書筆記思維導(dǎo)圖PPT模板下載
- 《把數(shù)學(xué)畫出來 小學(xué)畫數(shù)學(xué)教學(xué)實(shí)踐手冊(cè)》讀書筆記思維導(dǎo)圖
- 【個(gè)人簡(jiǎn)歷】求職簡(jiǎn)約風(fēng)PPT模板
- 家禽類完整版
評(píng)論
0/150
提交評(píng)論