基于.NET平臺的圖書館管理信息系統(tǒng)設(shè)計與實現(xiàn)_第1頁
基于.NET平臺的圖書館管理信息系統(tǒng)設(shè)計與實現(xiàn)_第2頁
基于.NET平臺的圖書館管理信息系統(tǒng)設(shè)計與實現(xiàn)_第3頁
基于.NET平臺的圖書館管理信息系統(tǒng)設(shè)計與實現(xiàn)_第4頁
基于.NET平臺的圖書館管理信息系統(tǒng)設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、本 科 畢 業(yè) 設(shè) 計 ( 論 文 ) 計算機(jī)與信息學(xué)院題目:基于.net 平臺的圖書館管理信息系統(tǒng)設(shè)計與實現(xiàn)學(xué)生:學(xué)號:專業(yè):班級: 指導(dǎo)教師:日期:目錄摘要.- 1 - abstract .- 2 - 第 1 章 緒論.- 4 - 1.1 開發(fā)背景及意義 . - 4 - 1.2系統(tǒng)簡介 . - 4 - 第 2 章 技術(shù)背景 .- 5 - 2.1 開發(fā)平臺 .net及 c# 語言 . - 5 - 2.2 sql server 2005 . - 6 - 2.3 ado.net . - 7 - 第 3 章 需求分析 .- 8 - 3.1 業(yè)務(wù)描述 . - 8 - 3.1.1 圖書借閱者業(yè)務(wù) .

2、- 8 - 3.1.2 圖書館工作人員業(yè)務(wù) . - 9 - 3.1.3 圖書館管理人員業(yè)務(wù) . - 9 - 3.2 系統(tǒng)基本模塊功能分析 . - 10 - 3.2.1 系統(tǒng)數(shù)據(jù)流程圖 . - 10 - 3.2.2 系統(tǒng)基本模塊功能分析 . - 10 - 3.3 狀態(tài)分析 . - 10 - 3.4 安全性分析 . - 11 - 第 4 章 系統(tǒng)設(shè)計 . - 12 - 4.1 系統(tǒng)設(shè)計基本思想 . - 12 - 4.2 系統(tǒng)總功能模塊結(jié)構(gòu)設(shè)計 . - 12 - 4.3 系統(tǒng)子模塊設(shè)計 . - 12 - 4.4 系統(tǒng)界面設(shè)計 . - 14 - 4.4.1 登錄界面設(shè)計 . - 14 - 4.4.2

3、系統(tǒng)主界面 . - 14 - 4.4.3 讀者檔案管理 . - 15 - 4.4.4 圖書檔案管理 . - 16 - 4.4.5 讀者查詢 . - 16 - 4.4.6 圖書罰款 . - 17 -4.5 數(shù)據(jù)庫設(shè)計 . - 18 - 4.5.1 概念結(jié)構(gòu)設(shè)計 . - 18 - 4.5.2 邏輯結(jié)構(gòu)設(shè)計 . - 19 - 4.5.3 物理結(jié)構(gòu)設(shè)計 . - 19 - 第 5 章 系統(tǒng)實現(xiàn) . - 23 - 5.1 系統(tǒng)實現(xiàn) . - 23 - 5.1.1 系統(tǒng)開發(fā)及運行環(huán)境 . - 23 - 5.1.2 系統(tǒng)模塊的實現(xiàn) . - 23 - 5.2 系統(tǒng)測試 . - 27 - 5.2.1 測試目的 .

4、- 27 - 5.2.2 測試原則 . - 28 - 5.2.3 測試用例 . - 28 - 第 6 章 畢業(yè)設(shè)計總結(jié) . - 29 - 謝辭 . - 30 - 參考文獻(xiàn) . - 31 - 附錄 a:主要源程序代碼 . - 32 - 附錄 b:圖書館管理信息系統(tǒng)使用說明書. - 39 - 附錄 c:光盤資料說明 . - 40 - 計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 1 - 基于.net平臺的圖書館管理信息系統(tǒng)設(shè)計與實現(xiàn)摘要隨著社會的發(fā)展,人們對知識的渴求越來越大。其中知識的主要來源就是書籍。圖書館就成了人們獲得知識的一個寶貴地方。而管理現(xiàn)代化,辦公自動化和決策科學(xué)化,是現(xiàn)代化辦公管理發(fā)展的

5、必然趁勢。圖書管理比較繁瑣,復(fù)雜,產(chǎn)生的文檔比較多,并且由于手工的操作,使這些文檔無法有效地核對和管理,在匯總以及分析方面更加困難。國內(nèi)一些圖書館對信息管理的主要方式是基于文本、表格等紙介質(zhì)的手工處理,對于圖書借閱情況(如借書天數(shù)、超過限定借書時間的天數(shù))的統(tǒng)計和核實等往往采用對借書卡的人工檢查進(jìn)行,對借閱者的借閱權(quán)限、以及借閱天數(shù)等用人工計算、手抄進(jìn)行。這種數(shù)據(jù)信息處理工作量大,容易出錯;由于數(shù)據(jù)繁多,容易丟失,且不易查找??偟膩碚f,缺乏系統(tǒng),規(guī)范的信息管理手段。因此,迫切需要計算機(jī)技術(shù)來輔助管理。圖書管理系統(tǒng)的目的是應(yīng)用信息化的技術(shù)對圖書進(jìn)行管理,減少大量的數(shù)據(jù)冗余和傳統(tǒng)管理的繁瑣工作量,

6、實現(xiàn)圖書管理的系統(tǒng)化,科學(xué)化?;谏鲜鲞@些特點,使用visual studio 2005 和 sql server 2005 工具開發(fā)了本系統(tǒng)。本系統(tǒng)共有資料管理模塊、借閱管理模塊、查詢報表管理模塊和系統(tǒng)管理模塊 4 大模塊。本文首先對系統(tǒng)進(jìn)行需求分析,使用流程圖、實體關(guān)系圖、狀態(tài)圖等對系統(tǒng)進(jìn)行詳細(xì)的結(jié)構(gòu)分析。隨后進(jìn)行詳細(xì)的系統(tǒng)設(shè)計,功能設(shè)計、模塊設(shè)計、數(shù)據(jù)庫設(shè)計、界面設(shè)計。本系統(tǒng)基本包含了小型圖書館的有關(guān)功能需求。關(guān)鍵詞:圖書;信息管理;系統(tǒng)分析;系統(tǒng)設(shè)計;系統(tǒng)實現(xiàn)計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 2 - based on the .net platform of the librar

7、y management information system design and realization abstract as society develops, people thirst for knowledge is growing.which is the main source of knowledge and books.library access to knowledge has become a valuable place.the modernization of management, office automation and scientific decisi

8、on-making, is the inevitable development of modern office management taking advantage of.library management is cumbersome, complex to produce more documents, and because of manual operation, so that these documents can not be effectively checked and managed, in the matrix and the analysis more diffi

9、cult.some domestic library information management is based on the main form of text, tables and other paper-based manual processing, for borrowing books (such as library days, more than the charging time of the number of days) and verification of such statistics are often used for librarycard manual

10、 inspections carried out on the borrowers borrowing authority, and the number of days with artificial lending terms were handwritten.this data processing workload, error-prone; the variety of data, easily lost, and easy to find.overall, the lack of a systematic, standardized information management t

11、ools.therefore, the urgent need for computer technology to assist management. the purpose of library management system is the application of information technology on library management, reduce the large amount of data redundancy and cumbersome traditional management workload, library management to

12、achieve a systematic and scientific.based on these characteristics, the use of visual studio 2005 and sql server 2005 計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 3 - tools to develop this system.total data management module of the system, to borrow management module, reporting module and the system management module manage

13、ment 4 major modules.firstly, the system needs analysis, the use of flow charts, entity relationship diagrams, state diagrams of the detailed structural analysis of the system.followed by a detailed system design, functional design, module design, database design, interface design.the basic system i

14、ncludes the functional needs of small libraries.key words: books; information management; system analysis; system design; system implementation計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 4 - 第1章 緒論1.1 開發(fā)背景及意義當(dāng)今時代是飛速發(fā)展的信息時代,在各行各業(yè)中離不開信息處理,計算機(jī)管理系統(tǒng)被廣泛應(yīng)用。計算機(jī)的好處在于它能夠進(jìn)行信息管理,使用計算機(jī)信息管理,不僅提高了工作效率,而且大大提高了安全性。如今圖書管理是高校內(nèi)每一個系或院都必須切實面對的工

15、作,但一直以來人們使用傳統(tǒng)的人工方式管理圖書資料。這種方式存在著很多缺點,如效率低、保密性差而且較為繁瑣。另外,隨著圖書資料數(shù)量的增加,其工作量也將大大增加,這必將增加圖書資料管理者的工作量和勞動強(qiáng)度,這將給圖書資料的查找、更新、維護(hù)都帶來很多困難。隨著科學(xué)技術(shù)不斷的提高,這種傳統(tǒng)的手工管理方法必然被計算機(jī)管理所取代。圖書管理的優(yōu)點在于,查找方便、可靠性高、保密性好、成本低等,這些優(yōu)點能夠極大地提高圖書管理的效率。因此,開發(fā)圖書館管理系統(tǒng)是非常必要的。1.2 系統(tǒng)簡介圖書館管理系統(tǒng) (library manage system)的設(shè)計與實現(xiàn)是結(jié)合c#.net2005和 sql server20

16、05開發(fā)的 。本系統(tǒng)以讀者管理、圖書管理、讀書借還管理、綜合查詢、報表管理、管理員等六大系統(tǒng)功能為重點部分。其中具體讀者管理模塊包括讀者類型設(shè)置、讀者檔案管理、借書證掛失與恢復(fù)等功能;圖書管理包括:圖書類型設(shè)置、圖書檔案管理、出版社管理、圖書注銷、圖書征訂等功能;圖書借還管理模塊包括、圖書借閱、圖書歸還、圖書續(xù)借、圖書丟失、圖書罰款等功能;綜合查詢包括、圖書借閱查詢、圖書歸還查詢、圖書超期查詢、圖書注銷查詢、圖書定購查詢、讀者檔案管理員包括管理員密碼修改功能。計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 5 - 第2章 技術(shù)背景本系統(tǒng)以 sql server 2005 作為后臺數(shù)據(jù)庫, micros

17、oft visual studio .net 2005(c#)為前臺開發(fā)工具。2.1 開發(fā)平臺 .net及 c# 語言microsoft .net是一個環(huán)境,稱之為理想化的未來因特網(wǎng)環(huán)境,微軟的構(gòu)想是一個“不再關(guān)注單個網(wǎng)站、單個設(shè)備與因特網(wǎng)相連的互聯(lián)網(wǎng)環(huán)境,而是要讓所有的計算機(jī)群、相關(guān)設(shè)備和服務(wù)商協(xié)同工作”的網(wǎng)絡(luò)計算環(huán)境。 microsoft .net追求的是以上所說的一種理想的互聯(lián)網(wǎng)環(huán)境。microsoft .net的最終目的就是讓用戶在任何地方、任何時間,以及利用任何設(shè)備都能訪問他們所需要的信息、文件和程序。而用戶無需知道這些東西存在什么地方,甚至連如何獲得等具體細(xì)節(jié)都不知道。圖 2-1

18、.net框架圖microsoft .net開發(fā)框架支持多種語言,。而且microsoft公司支持第三方生產(chǎn)針對 microsoft .net的編譯器和開發(fā)工具,這也就是說幾乎所有市場上的編程語言都有可能應(yīng)用于microsoft .net開發(fā)框架。 .net 框架圖如圖 2-1 所示。計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 6 - 需要特別指出的是, microsoft公司在 microsoft .net中推出了全新的c 語言,這種全新的面向?qū)ο蟮恼Z言使得開發(fā)者可以快速地構(gòu)建從底層系統(tǒng)級到高層商業(yè)組件的不同應(yīng)用。microsoft .net會改變技術(shù)開發(fā)人員的開發(fā)應(yīng)用程序的方式,而且使得開發(fā)人員

19、能創(chuàng)建出全新的各種應(yīng)用程序,其關(guān)鍵是提出了web服務(wù)這個嶄新的概念。microsoft .net可使用戶通過互聯(lián)網(wǎng)輕松地完成那些在當(dāng)今看來十分費時費力的事務(wù),這些事務(wù)往往要求用戶進(jìn)行數(shù)據(jù)重復(fù)輸入并需長時間運行才能完成??傊?microsoft .net使得用戶不再關(guān)心如何與計算機(jī)進(jìn)行交互,從而致力于使計算機(jī)自動執(zhí)行所需要完成的任務(wù)。visual c# .net 是一套綜合工具集,用于為 microsoft windows 和 web 創(chuàng)建 xml web 服務(wù)和基于 microsoft .net 的應(yīng)用程序。這個強(qiáng)勁的開發(fā)包使用面向組件的 c# 開發(fā)語言,為具備 c+ 或 java 經(jīng)驗的初級

20、和中級開發(fā)人員創(chuàng)建下一代軟件提供了現(xiàn)代化的語言和環(huán)境。visual c# .net 基于強(qiáng)大的 c+ 傳統(tǒng)語言而創(chuàng)建。 c# 是一個現(xiàn)代化的、直觀的、面向?qū)ο蟮木幊陶Z言,它不僅可以讓 c+ 和 java 開發(fā)人員馬上熟悉,而且提供了重要的改進(jìn),包括統(tǒng)一的類型系統(tǒng)、最大化開發(fā)人員控制的“不安全”代碼以及大多數(shù)開發(fā)人員容易理解的強(qiáng)大的新語言構(gòu)造。這個現(xiàn)代化的面向組件的語言具有對屬性、索引器、委托、版本控制和自定義屬性的內(nèi)在支持,開發(fā)人員可以充分享受它帶來的好處。使用 xml 注釋, c# 開發(fā)人員可以生成有用的源代碼文檔。高級繼承模型使開發(fā)人員能夠重用來自任何支持 .net 的語言的代碼。2.2

21、sql server 2005 sql server 2005引入了 sql server management studio ,這是一個新型的統(tǒng)一的管理工具組。這個工具組將包括一些新的功能,以開發(fā)、配置sql server數(shù)據(jù)庫,發(fā)現(xiàn)并修理其中的故障,同時這個工具組還對從前的功能進(jìn)行了一些改進(jìn)。使用 sql server 2005 ,開發(fā)人員通過使用相似的語言,例如微軟的visual c# .net 和微軟的 visual basic,將能夠創(chuàng)立數(shù)據(jù)庫對象。開發(fā)人員還將能夠建立兩個新的對象用戶定義的類和集合。計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 7 - 從對 sql類的新的支持,到多活動結(jié)

22、果集(mars ),sql server 2005 中的ado.net 將推動數(shù)據(jù)集的存取和操縱,實現(xiàn)更大的可升級性和靈活性。總之, sql server 2005 非常適合與本系統(tǒng)的開發(fā)。2.3 ado.net ado.net 提供了對 xml 的強(qiáng)大支持,這也是ado.net 的一個主要設(shè)計目標(biāo)。 在 ado.net 中通過 xmlreader、 xmlwriter 、 xmlnavigator 及 xmldocument等可以方便地創(chuàng)建和使用xml 數(shù)據(jù),并且支持w3c 的 xslt、dtd 及 xdr 等標(biāo)準(zhǔn)。ado.net 對 xml 的支持也為 xml 成為 microsoft.n

23、et 中數(shù)據(jù)交換的統(tǒng)一格式提供了基礎(chǔ)。 ado.net 引入了 dataset的概念,提供了數(shù)據(jù)的關(guān)系型視圖。不管數(shù)據(jù)來源于一個關(guān)系型數(shù)據(jù)庫,還是來源于一個 xml 文檔,都可以用一個統(tǒng)一的編程模型來創(chuàng)建和使用它。它替代了原有的recordset的對象,提高了程序的交互性和可擴(kuò)展性,尤其適合與分布式的應(yīng)用場合。計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 8 - 第3章 需求分析需求分析就是描述系統(tǒng)的需求,通過定義系統(tǒng)中的關(guān)鍵類來建立模型。分析的根本目的是在開發(fā)者和提出需求的人之間建立一種理解和溝通的機(jī)制。系統(tǒng)分析工作是開發(fā)信息系統(tǒng)中的重要環(huán)節(jié),特別是開發(fā)大中型規(guī)模的信息系統(tǒng),系統(tǒng)分析工作做的好壞將

24、直接影響整個系統(tǒng)的成敗。系統(tǒng)分析階段是整個系統(tǒng)建設(shè)最關(guān)鍵的階段之一,也是信息系統(tǒng)建設(shè)與一般工程項目建設(shè)的主要區(qū)別。系統(tǒng)分析也稱邏輯設(shè)計,即建立新系統(tǒng)的邏輯模型,在邏輯上規(guī)定新系統(tǒng)的功能但不涉及新系統(tǒng)具體的物理實現(xiàn),也就是要解決系統(tǒng)“做什么”,而不是“如何做”的問題。系統(tǒng)分析階段的結(jié)果在系統(tǒng)分析說明書中描述,系統(tǒng)分析說明書是下階段工作的依據(jù),也是衡量一個信息系統(tǒng)優(yōu)劣的依據(jù)。3.1 業(yè)務(wù)描述圖書管理系統(tǒng)需要滿足來自三方面的需求,這三個方面分別是圖書借閱者、圖書館工作人員和圖書館管理人員。圖書借閱者的需求是查詢圖書館所存的圖書、個人借閱情況及個人信息的修改;圖書館工作人員對圖書借閱者的借閱及還書要求

25、進(jìn)行操作,同時形成借書或還書報表給借閱者查看確認(rèn);圖書館管理人員的功能最為復(fù)雜,包括對工作人員、圖書借閱者、圖書進(jìn)行管理和維護(hù),及系統(tǒng)狀態(tài)的查看。3.1.1 圖書借閱者業(yè)務(wù)圖書借閱者根據(jù)本人的借書證號碼和密碼登錄系統(tǒng),可查看圖書館中館藏圖書的情況,可以查詢圖書館中的熱門書籍,圖書排行榜,還可以對本人借書歷史、會費標(biāo)準(zhǔn)等進(jìn)行的查詢和維護(hù)部分個人信息。一般情況下,圖書借閱者只能查詢和維護(hù)本人的借書歷史和個人信息,若查詢和維護(hù)其他借閱者的借書情況和個人信息,就必須要知道其他圖書借閱者的借書證號碼和密碼。但借閱者很難得到別人的登錄密碼,所以這是比較安全的,不但滿足了各個借閱者的查詢要求,還可以保護(hù)圖書

26、借閱者的個人隱私。計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 9 - 3.1.2 圖書館工作人員業(yè)務(wù)圖書館工作人員即圖書管理員有自己的登錄名稱和登錄密碼,登錄系統(tǒng)以后,可以對圖書館內(nèi)的圖書信息進(jìn)行操作,包括類別、出版社等具體信息進(jìn)行增加、刪除、修改,還可以對借閱者的借書還書要求進(jìn)行操作,可以查詢各種圖書相關(guān)信息,并打印各種報表,可以進(jìn)行讀者掛失處理,但是不能對讀者的借閱歷史等隱私進(jìn)行查看,不能查看圖書館的收入情況,不能對其他管理員的操作權(quán)限進(jìn)行修改。3.1.3 圖書館管理人員業(yè)務(wù)圖書館管理人員即系統(tǒng)管理員功能最廣,幾乎涵蓋本系統(tǒng)的所有功能,數(shù)據(jù)安全性和保密性要求高,可以是想對圖書信息、借閱者信息、

27、總體借閱情況信息的管理和統(tǒng)計、工作人員和管理人員信息查看、修改,并對操作權(quán)限等進(jìn)行維護(hù)。圖書館管理員可以瀏覽、查詢、添加、刪除、修改、統(tǒng)計圖書的基本信息;瀏覽、查詢、統(tǒng)計、添加、刪除和修改圖書借閱者的基本信息,瀏覽、查詢、統(tǒng)計、添加、刪除和修改圖書館的借閱信息,注意在刪除某條圖書借閱者基本信息記錄或圖書基本信息記錄時,應(yīng)實現(xiàn)對借閱記錄的級聯(lián)刪除。業(yè)務(wù)流程圖如圖 3-1 所示。讀者管理員借書證圖書信息借閱表結(jié)束還書操作書庫讀者表圖 3-1 業(yè)務(wù)流程圖計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 10 - 3.2 系統(tǒng)基本模塊功能分析3.2.1 系統(tǒng)數(shù)據(jù)流程圖數(shù)據(jù)流程圖又稱數(shù)據(jù)流圖,它以圖形的方式來表達(dá)

28、數(shù)據(jù)處理系統(tǒng)中信息的變換和傳遞過程。作為一種描述手段,它可以模擬手工、自動以及兩者兼而有之的數(shù)據(jù)處理過程。根據(jù)系統(tǒng)的調(diào)查和分析,本系統(tǒng)總的數(shù)據(jù)流程圖如圖3-2 所示。圖 3-2 系統(tǒng)總數(shù)據(jù)流程圖3.2.2 系統(tǒng)基本模塊功能分析1)“讀者管理”用于管理讀者相關(guān)信息。2)“圖書管理”用于管理圖書相關(guān)信息。3)“圖書借還管理”用于圖書借還的相關(guān)信息。4)“綜合查詢”用于圖書的相關(guān)查詢和模糊查詢等。5)“報表“用于顯示圖書分類、讀者的狀況。3.3 狀態(tài)分析狀態(tài)圖在需求分析中非常重要,是系統(tǒng)分析的一種常用工具,通過他可以直觀圖 3-3 系統(tǒng)管理員維護(hù)借閱者帳戶的活動圖讀者圖書管理系統(tǒng)借閱讀者歸還計算機(jī)與

29、信息學(xué)院本科畢業(yè)設(shè)計(論文)- 11 - 的了解到系統(tǒng)的功能,及不同成員登錄的不同權(quán)限,不同操作,系統(tǒng)管理員維護(hù)限于篇幅,這里盡畫出系統(tǒng)管理員維護(hù)借閱者帳戶的活動圖書籍狀態(tài)圖進(jìn)行進(jìn)行說明,如圖3-3 所示。3.4 安全性分析系統(tǒng)的安全性是整個系統(tǒng)的一個重點,從使用系統(tǒng)的人員情況來看,在計算機(jī)上運行后, 3 種人員可以登錄系統(tǒng),分別是讀者、圖書管理員、系統(tǒng)管理員,讀者的權(quán)限最低,只能對圖書信息進(jìn)行查詢而不能添加、修改,可以查看自己的借閱歷史記錄,不能查看其他讀者的記錄,很好的保護(hù)了讀者的隱私,較為安全。在同一臺機(jī)器上可以重復(fù)登錄,每種人員登錄后進(jìn)行操作,然后可以退出,如果需要再次登錄,就必須要知

30、道其他人員的登錄名密碼。圖書管理員只能對圖書進(jìn)行相關(guān)操作,而不能對讀者信息記錄等進(jìn)行操作。系統(tǒng)管理員,人員較少,可以有系統(tǒng)的幾乎所有權(quán)限??傮w來說,每種使用人員中的每一個人,都只能對與自己相關(guān)的信息進(jìn)行操作,而每人的密碼其他人員很難得到,所以系統(tǒng)的安全性可以滿足要求。計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 12 - 第4章 系統(tǒng)設(shè)計4.1 系統(tǒng)設(shè)計基本思想系統(tǒng)開發(fā)的總目標(biāo)是實現(xiàn)內(nèi)部圖書借閱管理的系統(tǒng)化、規(guī)范化和自動化。系統(tǒng)設(shè)計的任務(wù)是:在系統(tǒng)分析的基礎(chǔ)上,按邏輯模型的要求,科學(xué)合理地進(jìn)行系統(tǒng)的總體設(shè)計和詳細(xì)設(shè)計。其中,總體設(shè)計又稱結(jié)構(gòu)設(shè)計,包括子系統(tǒng)劃分、模塊結(jié)構(gòu)圖等;詳細(xì)設(shè)計包括代碼設(shè)計、人

31、機(jī)界面設(shè)計、數(shù)據(jù)庫設(shè)計等。4.2 系統(tǒng)總功能模塊結(jié)構(gòu)設(shè)計根據(jù)上述本圖書管理系統(tǒng)需要實現(xiàn)的功能,可以得出圖書館管理系統(tǒng)的總體模塊功能結(jié)構(gòu)圖,如圖4-1 所示。圖 4-1 圖書館管理系統(tǒng)總功能模塊結(jié)構(gòu)圖4.3 系統(tǒng)子模塊設(shè)計(1) 讀者信息管理模塊用于管理讀者相關(guān)信息,如圖4-2 所示。計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 13 - 圖 4-2 讀者管理模塊功能結(jié)構(gòu)圖 (2) 圖書信息管理模塊用于管理圖書相關(guān)信息,如圖4-3 所示。圖 4-3 圖書管理功能結(jié)構(gòu)圖 (3) 圖書借還管理模塊用于圖書借還的操作,如圖4-4 所示。圖 4-4 圖書借還管理功能結(jié)構(gòu)圖計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)-

32、 14 - (4) 綜合查詢模塊用于圖書的相關(guān)查詢和模糊查詢等,如圖4-5 所示。圖 4-5 綜合查詢功能結(jié)構(gòu)圖4.4 系統(tǒng)界面設(shè)計4.4.1 登錄界面設(shè)計首先,程序判斷用戶輸入的數(shù)據(jù)是否為空,若為空則提示“請輸入用戶信息” ;不為空則對用戶名進(jìn)行判斷, 如果用戶名錯誤則不執(zhí)行查詢密碼操作,并提示“輸入信息錯誤,請重新輸入!“相反輸入正確則將密碼與數(shù)據(jù)庫中數(shù)據(jù)進(jìn)行比較,一致則跳轉(zhuǎn)到程序主界面,錯誤即提示“輸入信息錯誤,請重新輸入!”。用戶登錄界面如圖4-6 所示。圖 4-6 系統(tǒng)登錄界面4.4.2 系統(tǒng)主界面從登錄界面進(jìn)入后首先看到的是系統(tǒng)主界面。此界面包含了所有界面的入口點該界面由菜單欄和狀

33、態(tài)欄組成。每個功能的訪問可通過點擊菜單欄里相應(yīng)的名計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 15 - 稱進(jìn)入。然后可對其進(jìn)行進(jìn)一步的操作。狀態(tài)欄顯示的是系統(tǒng)當(dāng)前的狀態(tài)、系統(tǒng)時間等。如圖 4-7 所示。圖 4-7 系統(tǒng)主界面4.4.3 讀者檔案管理此功能模塊主要負(fù)責(zé)的是讀者的登記、注冊并輸入相關(guān)信息。此頁面為用戶提供了用戶新增、修改、刪除等操作。在工具欄中提供快捷操作,可以直接翻閱記錄。如圖 4-8 所示。圖 4-8 讀者信息管理界面計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 16 - 4.4.4 圖書檔案管理在圖書檔案管理功能模塊中,主要用于查詢、瀏覽圖書的信息以及對圖書檔案的增加、刪除、修改等功能

34、。如圖4-9 所示。圖 4-9 圖書檔案管理界面4.4.5 讀者查詢在讀者查詢功能中,只需選擇輸入查詢內(nèi)容,然后選擇查詢字段。此后點擊查詢按鈕即會在數(shù)據(jù)庫查詢匹配的記錄,并把記錄加入下面的列表框中。 如圖 4-10所示。計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 17 - 圖 4-10 讀者查詢界面4.4.6 圖書罰款借出的圖書有可能在規(guī)定的時間內(nèi)沒有還上,按照罰款的規(guī)則把罰款的金額記入相應(yīng)證號的圖書罰款表中。當(dāng)讀者未還清欠款時暫停該讀者的借閱,必須交清欠費方可進(jìn)行借閱圖書。操作界面如下,輸入查詢的相關(guān)信息,確定無誤后只需交清欠費后點擊交納罰款即可。如圖4-11 所示。圖 4-11 圖書罰款界面計

35、算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 18 - 4.5 數(shù)據(jù)庫設(shè)計4.5.1 概念結(jié)構(gòu)設(shè)計人們把數(shù)據(jù)庫設(shè)計分為需求分析、概念結(jié)構(gòu)設(shè)計、邏輯結(jié)構(gòu)設(shè)計、物理結(jié)構(gòu)設(shè)計、數(shù)據(jù)庫實施、數(shù)據(jù)庫運行與維護(hù)6 個階段。概念結(jié)構(gòu)設(shè)計就是對信息世界進(jìn)行建模,常用的概念模型是e-r模型。1 實體描述(1)根據(jù)分析得到本圖書館管理系統(tǒng)的各實體分別為:圖書、借閱證、管理員、讀者(2)實體屬性分別描述如下:圖書(條形碼、編號、書名、類型、作者、譯者、isbn、出版社、價格、頁碼、書架名稱、現(xiàn)存量、庫存總量、入庫時間、操作員、簡介、借出次數(shù)、是否注銷)管理員(編號、名稱、密碼、圖書管理、讀者管理、圖書借還、系統(tǒng)設(shè)置、系統(tǒng)查

36、詢)讀者(條形碼、編號、姓名、性別、類型、出生日期、有效證件、證件號碼、聯(lián)系方式、登記日期、有效期至、操作員、備注、圖書借閱次數(shù)、是否掛失)(3)各實體間的聯(lián)系。一個讀者可借閱多本圖書。一個管理員可管理多名讀者;一個讀者也可能被多名管理員管理。一個管理員發(fā)放多個借閱證。一個管理員可管理多本圖書;同一本圖書也可被多名管理員管理。一個讀者擁有一個借閱證。2 e-r 圖本系統(tǒng)的 e-r圖如圖 4-12 所示。計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 19 - 圖書歸還pk歸還編號fk1圖書編號讀者編號退還押金歸還時間操作員確定歸還出版社pk出版社編號isbn出版社名稱讀者類型pk類型圖書冊書續(xù)借次數(shù)限

37、制圖書圖書丟失pk丟失編號fk1圖書編號讀者編號賠償金額操作時間操作員確定丟失圖書征訂pk征訂編號fk1圖書編號訂購者訂購者聯(lián)系方式訂購數(shù)量訂購單價訂購日期是否驗收驗收日期操作員圖書借閱pk借閱編號fk1圖書編號讀者編號借閱時間應(yīng)還時間續(xù)借次數(shù)操作員狀態(tài)讀者信息pk編號條形碼姓名性別fk1類型出生日期有效證件證件號碼聯(lián)系方式登記日期有效期至操作員備注圖書借閱次數(shù)期刊借閱次數(shù)是否掛失圖書罰款pk罰款編號fk2圖書編號fk1讀者編號罰款日期應(yīng)罰金額實收金額是否交款備注圖書類型pk類型編號類型名稱可借天數(shù)圖書注銷pk注銷編號fk1圖書編號注銷數(shù)量注銷時間操作員確定注銷圖書信息pk編號條形碼書名類型作

38、者譯者isbn出版社價格頁碼書架名稱現(xiàn)存量庫存總量入庫時間操作員簡介借出次數(shù)是否注銷圖 4-12 系統(tǒng) e-r 圖4.5.2 邏輯結(jié)構(gòu)設(shè)計er模型向關(guān)系模型的轉(zhuǎn)換,實際上就是把er圖轉(zhuǎn)換成關(guān)系模式的集合。er圖的主要成分是實體類型和聯(lián)系類型,轉(zhuǎn)換規(guī)則就是如何把實體類型、聯(lián)系類型轉(zhuǎn)換成關(guān)系模式。規(guī)則一:將每個實體類型轉(zhuǎn)換成一個關(guān)系模式,實體的屬性即為關(guān)系模式的屬性,實體標(biāo)識符即為關(guān)系模式的鍵。規(guī)則二:若實體間聯(lián)系是1:1,可以在兩個實體類型轉(zhuǎn)換成的每個關(guān)系模式中任意一個關(guān)系模式的屬性中加入另一個關(guān)系模式的鍵和聯(lián)系類型的屬性。若實體間聯(lián)系是 1:n,則在 n端實體類型轉(zhuǎn)換楊的關(guān)系模式中加入1 端實

39、體類型的鍵和聯(lián)系類型的屬性。若實體間聯(lián)系是m :n ,則將聯(lián)系類型也轉(zhuǎn)換成關(guān)系模式,其屬性為兩端實體類型的鍵加上聯(lián)系類型的屬性,而鍵為兩端實體的組合。4.5.3 物理結(jié)構(gòu)設(shè)計根據(jù)本系統(tǒng)的需求分析,本系統(tǒng)的數(shù)據(jù)庫共有13 張表,限于篇幅,盡列出如幾張進(jìn)行說明。1. 圖書信息表計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 20 - 基本表圖書信息,用于保存入庫的所有圖書,其中除書所專有的屬性外還添加了幾項屬性:圖書所在書架、現(xiàn)存量、庫存總量、入庫時間、借出次數(shù)、是否注銷。其中現(xiàn)存量是根據(jù)圖書借閱情況做相應(yīng)更改沒借出一本數(shù),現(xiàn)存量減少一本,每歸還一本現(xiàn)存量增加一本。庫存總量是根據(jù)圖書丟失或圖書注銷做相應(yīng)更

40、改的每丟失一本圖書現(xiàn)存量和庫存總量都相應(yīng)減少一本。如注銷該圖書則從數(shù)據(jù)庫中減少相應(yīng)的數(shù)目。注銷是標(biāo)記圖書是否需要被注銷,如標(biāo)明要注銷則該圖書不得再借閱,查看圖書是否已完全歸還如在借閱中等圖書歸還完畢注銷此數(shù)。如表 4-1 所示。表 4-1 圖書信息表結(jié)構(gòu)數(shù)據(jù)項數(shù)據(jù)類型主鍵否長度條形碼varchar 否40 編碼varchar 是50 書名varchar 否200 類型varchar 否100 作者varchar 否100 譯者varchar 否100 isbn varchar 否40 出版社varchar 否100 價格money 否8 頁碼int 否4 書架名稱varchar 否200 現(xiàn)存

41、量int 否4 庫從總量int 否4 入庫時間smalldatetir 否4 操作員varchar 否20 簡介varchar 否100 借出次數(shù)int 否4 是否注銷bit 否1 2 讀者信息用于保存讀者信息,其中包含了讀者的基本信息。其中類型、有效證件是外鍵信息輸入是通過選取相關(guān)值然后填充至數(shù)據(jù)庫。此表還添加了借書證的信息相應(yīng)減少了借書證表的創(chuàng)建。其還配備了圖書借閱次數(shù)信息。另外還多了個是否掛失選項,如果讀者丟失借書證則可以掛失。掛失的卡不能再借閱書刊,在借閱是計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 21 - 系統(tǒng)檢查是否掛失,掛失則跳出提示并關(guān)閉窗口。必須注銷掛失才能繼續(xù)使用。如表 4-

42、2 所示。表 4-2 基本表讀者信息表結(jié)構(gòu)數(shù)據(jù)項數(shù)據(jù)類型主鍵否長度條形碼varchar 否40 編號varchar 是20 姓名varchar 否20 類型varchar 否8 出生日期smalldatetir 否20 有效證件varchar 否4 證件號碼varchar 否60 聯(lián)系方式varchar 否60 登記日期smalldatetir 否100 有效期至smalldatetir 否4 操作員varchar 否4 備注varchar 否20 圖書借閱次數(shù)int 否100 是否掛失bit 否4 性別varchar 否1 3 圖書借閱基本表圖書借閱記錄已借出的圖書的主要信息。對于圖書的詳細(xì)

43、屬性可根據(jù)圖書編號返回圖書表中查找,同時還記錄了每本借出圖書的外借日期和應(yīng)還日期。并可以查看已續(xù)借的次數(shù),同時設(shè)置了圖書狀態(tài)未還,以還,丟失等狀態(tài)。如表4-3 所示。表 4-3 基本表圖書借閱表結(jié)構(gòu)數(shù)據(jù)項數(shù)據(jù)類型主鍵否長度借閱編號int 是4 圖書編號varchar 否50 讀者編號varchar 否40 借閱時間smalldatetir 否4 應(yīng)還時間smalldatetir 否4 續(xù)借次數(shù)int 否4 操作員varchar 否20 狀態(tài)varchar 否10 計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 22 - 4 圖書罰款圖書丟失或者圖書過期都會觸發(fā)圖書罰款這一事件。罰款未交清則不允許再次借

44、閱圖書。需等相關(guān)罰款全部交清才能繼續(xù)使用借書功能。如表4-4 所示。表 4-4 基本表圖書罰款表結(jié)構(gòu)數(shù)據(jù)項數(shù)據(jù)類型主鍵否長度罰款編號int 是4 圖書編號varchar 否50 讀者編號varchar 否20 罰款日期smalldatetir 否4 應(yīng)罰金額money 否8 實收金額money 否8 是否交款bit 否1 備注varchar 否100 計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 23 - 第5章系統(tǒng)實現(xiàn)5.1 系統(tǒng)實現(xiàn)實現(xiàn)的任務(wù)是在預(yù)定的環(huán)境中實現(xiàn)系統(tǒng)、生成代碼、可執(zhí)行程序和相應(yīng)的軟件文檔,建立一個可執(zhí)行的系統(tǒng)。5.1.1 系統(tǒng)開發(fā)及運行環(huán)境1. 硬件環(huán)境 intel amd 或同

45、檔次以上微機(jī); 1g 以上內(nèi)存或更高; 120g 以上硬盤; 42 速以上光驅(qū); 針打或激光打印機(jī)一臺。2. 軟件環(huán)境 操作系統(tǒng):服務(wù)器windows xp server ,客戶端 windows xp; 軟件開發(fā)平臺: .net 2.0 framework,開發(fā)語言 c#; 數(shù)據(jù)庫: sql server 2005 ; 可視化軟件開發(fā)工具: microsoft visual studio 2005;開發(fā)軟件工具: microsoft office visio 2003 5.1.2 系統(tǒng)模塊的實現(xiàn)限于篇幅,下面盡對系統(tǒng)中主要模塊的實現(xiàn)進(jìn)行闡述。1. 用戶登錄的不同操作權(quán)限實現(xiàn)該系統(tǒng)共有三種人員

46、使用,圖書借閱者、圖書管理員和系統(tǒng)管理員,不同的人員有不同的權(quán)限。在用戶登錄界面,可以選擇登錄的用戶類型是讀者還是管理員,在用戶名密碼都正確的情況下進(jìn)入主界面。根據(jù)不同用戶的不同操作權(quán)限配置系統(tǒng)菜單。主要代碼如下:讀者登錄,權(quán)限固定,舉例如下this .menustrip1.visible = false ; 計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 24 - this . 圖書類別設(shè)置 toolstripbutton.visible = false ; 管理員登錄,首先恢復(fù)按鈕顯示,舉例如下this .menustrip1.visible = true ; this . 圖書類別設(shè)置 tool

47、stripbutton.visible = true ; 根據(jù)操作權(quán)限表配置菜單 , 例:string mysql = select * from 操作權(quán)限設(shè)置 where 用戶名稱 = + this .myoperator + ; datatable mytable = new datatable (); sqldataadapter myadapter = new sqldataadapter (mysql, myconnection); myadapter.fill(mytable); if ( int )mytable.rows0 資料管理之圖書類別設(shè)置 = 0) this . 圖書類

48、別管理 ttoolstripmenuitem.visible = false ; this .toolstripseparator1.visible = false ; this . 圖書類別設(shè)置 toolstripbutton.visible = false ; if ( int )mytable.rows0 資料管理之出版社信息設(shè)置 = 0) this . 出版社信息設(shè)置 ptoolstripmenuitem.visible = false ; this .toolstripseparator2.visible = false ; this . 出版社信息設(shè)置 toolstripbutto

49、n.visible = false ; 任何一種讀者都可以在登錄后,點擊退出登錄按鈕,返回登錄頁面。這樣就實現(xiàn)了在同一臺機(jī)器中可以多次登錄。首先要對主界面實例化,在其他界面尤其是登錄界面使用。privatestaticmainform mydlg; publicstaticmainform getmydlg() return mydlg; 而在登錄頁面,要對主界面進(jìn)行設(shè)置,并記錄登錄用戶名、用戶類型等信息。/ 顯示 mainform program.getmydlg().visible = true ; / 記錄登錄的用戶名program.getmydlg().myoperator = thi

50、s .用戶名稱 textbox.text; / 記錄登錄用戶的用戶說明用于在狀態(tài)欄中顯示 mysql = select 用戶說明 from 操作權(quán)限設(shè)置 where 用戶名稱 = + this . 用戶名稱 textbox.text + ; mycommand = new sqlcommand (mysql, myconnection); program.getmydlg().userdirection = mycommand.executescalar().tostring(); / 根據(jù)用戶的操作權(quán)限配置系統(tǒng)菜單計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 25 - program.getmyd

51、lg().setuseroperatemenu(); / 最大化顯示系統(tǒng)主窗體program.getmydlg().windowstate = formwindowstate .maximized; 2. 借書功能實現(xiàn)在借書的操作頁面,首先系統(tǒng)自動創(chuàng)建無連接的數(shù)據(jù)表,用于展示存放結(jié)束信息,然后需要輸入用戶名稱,在焦點離開文本框時,可以顯示讀者名稱,讀者的會員等級。點擊查詢,根據(jù)查詢條件,顯示允許借閱的圖書信息,然后雙擊要借的圖書,這時會根據(jù)會員等級得出最長借出天數(shù)、最多借出冊數(shù),根據(jù)讀者編號得到已借圖書冊數(shù)等信息。然后判斷歸還天數(shù)是否合法,借出冊數(shù)是否合法。成功以后,借閱信息會先暫時寫入前面創(chuàng)

52、建的數(shù)據(jù)表中,點擊保存更改數(shù)據(jù)庫信息。部分重要代碼如下:privatevoid bookborrowform_load( object sender, eventargs e) / 創(chuàng)建無連接的數(shù)據(jù)表datacolumn mykey = new datacolumn1; myborrowtable = new datatable ( 借閱管理臨時表 ); myborrowtable.columns.add(圖書編號 , typeof (string); myborrowtable.columns.add(讀者編號 , typeof (string); myborrowtable.columns

53、.add(借出日期 , typeof (datetime); myborrowtable.columns.add(應(yīng)還日期 , typeof (datetime); myborrowtable.columns.add(借閱說明 , typeof (string); this .datagridview1.datasource = myborrowtable; / 向借閱臨時表中增加圖書privatevoid datagridview2_doubleclick(object sender, eventargs e) / 檢查此讀者想借的圖書數(shù)量是否符合其等級的規(guī)定if ( this .myboo

54、ks - this .myindex = 0) messagebox .show( 借出數(shù)量過多! , 信息提示 , messageboxbuttons .ok, messageboxicon.information); return ; / 應(yīng)還日期和借出日期之間的天數(shù)timespan myspan = this . 應(yīng)還日期 datetimepicker.value.subtract(this . 借出日期datetimepicker.value); / 檢查此讀者想借圖書的天數(shù)是都符合其等級的規(guī)定計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 26 - if (myspan.days - myd

55、ays 0) messagebox .show( 借出日期過長! , 信息提示 , messageboxbuttons .ok, messageboxicon.information); return ; / 檢查應(yīng)還日期是否在借出日期之前,是否合法if (myspan.days = 0) messagebox .show( 應(yīng)還日期不正確! , 信息提示 , messageboxbuttons .ok, messageboxicon.information); return ; / 檢查庫存數(shù)量sqlcommand mycommand = myconnection.createcommand

56、(); mycommand.commandtext = select (入庫數(shù)量 - 出借數(shù)量 )- 遺失數(shù)量 ) as 庫存數(shù)量 from 圖書信息 where 圖書編號 = +this .datagridview2.currentrow.cells0.value.tostring()+ ; object kc = mycommand.executescalar(); if ( convert .toint32(kc) 1) messagebox .show( 庫存數(shù)量不足! , 信息提示 , messageboxbuttons .ok, messageboxicon.information

57、); return ; / 把借書信息寫入臨時表datarow myrow = myborrowtable.newrow(); myrow 讀者編號 = this .讀者編號 textbox.text; myrow 圖書編號 = this .datagridview2.currentrow.cells0.value.tostring(); myrow 借出日期 = this .借出日期 datetimepicker.value; myrow 應(yīng)還日期 = this .應(yīng)還日期 datetimepicker.value; myrow 借閱說明 = this .借閱說明 textbox.text;

58、 myborrowtable.rows.add(myrow); myindex = myindex + 1;/ 借出數(shù)量 +1 privatevoid保存 button_click(object sender, eventargs e) for ( int i = 0; i = convert.toint32(txtbcount.text) messagebox.show( 已經(jīng)達(dá)到最大借書數(shù)量,請先歸還書籍后再借書 , 借書數(shù)量達(dá)到上限 , messageboxbuttons.ok, messageboxicon.information); groupbox2.enabled = false

59、; return; myconnection = new sqlconnection( datasource.connectionstring); myconnection.open(); commd = myconnection.createcommand(); datarow dr = ds.tables 圖書借閱 .newrow(); string booktype; if (rabtnbookid.checked) commd.commandtext = select 編號 , 書名 , 出版社 , 價格 , 類型 from 圖書信息where 編號 = +txtbooksearch.

60、text.trim() + ; else commd.commandtext = select 編號 , 書名 , 出版社 , 價格 , 類型 from 圖書信息where 條形碼 = +txtbooksearch.text.trim() + ; sdr = commd.executereader(); 計算機(jī)與信息學(xué)院本科畢業(yè)設(shè)計(論文)- 35 - if (sdr.hasrows = false) messagebox.show( 無 此 圖 書 , 請 檢 查 后 重 新 輸 入 , 錯 誤 , messageboxbuttons.ok, messageboxicon.error); 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論