![管理信息系統(tǒng)課程設(shè)計 圖書管理系統(tǒng).doc_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/26/bdc48d43-a3d1-48a9-a123-47383aadf375/bdc48d43-a3d1-48a9-a123-47383aadf3751.gif)
![管理信息系統(tǒng)課程設(shè)計 圖書管理系統(tǒng).doc_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/26/bdc48d43-a3d1-48a9-a123-47383aadf375/bdc48d43-a3d1-48a9-a123-47383aadf3752.gif)
![管理信息系統(tǒng)課程設(shè)計 圖書管理系統(tǒng).doc_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/26/bdc48d43-a3d1-48a9-a123-47383aadf375/bdc48d43-a3d1-48a9-a123-47383aadf3753.gif)
![管理信息系統(tǒng)課程設(shè)計 圖書管理系統(tǒng).doc_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/26/bdc48d43-a3d1-48a9-a123-47383aadf375/bdc48d43-a3d1-48a9-a123-47383aadf3754.gif)
![管理信息系統(tǒng)課程設(shè)計 圖書管理系統(tǒng).doc_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/26/bdc48d43-a3d1-48a9-a123-47383aadf375/bdc48d43-a3d1-48a9-a123-47383aadf3755.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、管理信息系統(tǒng)課程設(shè)計目錄1設(shè)計題目22設(shè)計目的23設(shè)計任務(wù)24設(shè)計準(zhǔn)備24.1 系統(tǒng)準(zhǔn)備24.2 知識準(zhǔn)備25系統(tǒng)分析25。1任務(wù)分析25.2功能分析35.3功能需求35.4 系統(tǒng)建設(shè)目標(biāo)35。5 部分要求說明36系統(tǒng)設(shè)計36.1 體系結(jié)構(gòu)36。2 功能框圖46.3 數(shù)據(jù)庫結(jié)構(gòu)41。 讀者類別表(ReaderType)42。 讀者信息表(Reader)43。 圖書信息表(Book)54。 借閱信息表(Borrow)56.4 功能模塊51. 圖書管理52. 讀者管理53. 借閱管理64。 數(shù)據(jù)統(tǒng)計65。 系統(tǒng)管理66。5 界面設(shè)計61. 登錄窗口62. 總體界面73. 菜單設(shè)計74。 查詢圖書信
2、息75。 添加圖書信息86. 添加讀者信息97。 查詢讀者信息98. 添加讀者類別信息99. 修改讀者類別信息1010。 借書1011。 續(xù)借1012。 還書1113. 查詢讀者借閱信息1114. 按借閱統(tǒng)計信息1115. 按圖書統(tǒng)計信息1116. 查詢個人借閱信息1217。 用戶管理127 系統(tǒng)實現(xiàn)127.1數(shù)據(jù)庫部分主要代碼127。2 數(shù)據(jù)庫操作公共類147。3 業(yè)務(wù)實體類187。4 數(shù)據(jù)訪問層207.5 業(yè)務(wù)邏輯層227。6 表示層268 小結(jié)351設(shè)計題目圖書管理信息系統(tǒng)2設(shè)計目的通過對圖書管理信息系統(tǒng)的系統(tǒng)分析、系統(tǒng)設(shè)計、編碼和調(diào)試等工作的實踐,了解管理信息系統(tǒng)的一般設(shè)計方法和實現(xiàn)思
3、路,深入了解數(shù)據(jù)庫設(shè)計的基本理論及方法。3設(shè)計任務(wù)要求完成一個具有一定實用價值的圖書管理信息系統(tǒng),主要任務(wù)包括: 在SQL Server 2000或SQL Server 2005環(huán)境下建立圖書管理信息系統(tǒng)所使用的數(shù)據(jù)庫,利用企業(yè)管理器或查詢分析器建立各種數(shù)據(jù)庫對象,包括:數(shù)據(jù)表、視圖、約束、存儲過程和觸發(fā)器等; 了解數(shù)據(jù)庫引擎技術(shù),并掌握使用ADO.NET連接數(shù)據(jù)庫服務(wù)器和客戶端應(yīng)用程序; 掌握使用C或其他語言開發(fā)一個數(shù)據(jù)庫系統(tǒng)的基本方法和步驟,應(yīng)用程序的功能包括:數(shù)據(jù)的輸入、修改和刪除;數(shù)據(jù)的瀏覽和查詢;數(shù)據(jù)的圖形化、報表以及打印輸出;系統(tǒng)的用戶登錄和權(quán)限管理; 了解多層C/S或B/S體系結(jié)
4、構(gòu)的數(shù)據(jù)庫系統(tǒng)的開發(fā)過程:需求分析、系統(tǒng)設(shè)計、系統(tǒng)實現(xiàn)及文檔的收集和整理。4設(shè)計準(zhǔn)備4。1 系統(tǒng)準(zhǔn)備操作系統(tǒng):Windows xp數(shù)據(jù)庫系統(tǒng):SQL Server 2000 或 SQL Server 2005客戶端開發(fā)工具:Visual Studio 2005或其他開發(fā)工具4.2 知識準(zhǔn)備熟悉SQL Server 2000 或 SQL Server 2005的使用;熟悉C、ASP.NET或其他語言進(jìn)行數(shù)據(jù)庫編程。5系統(tǒng)分析一直以來人們使用傳統(tǒng)的人工方式管理圖書館的日常工作,對于圖書館的借書和還書過程,想必大家都已很熟悉。在計算機(jī)尚未在圖書館廣泛使用之前,借書和還書過程主要依靠手工。一個最典型的
5、手工處理還書過程就是:讀者將要借的書和借閱證交給工作人員,工作人員將每本書上附帶的描述書的信息的卡片和讀者的借閱證放在一個小格欄里,并在借閱證和每本書貼的借閱條上填寫借閱信息。這樣借書過程就完成了。還書時,讀者將要還的書交給工作人員,工作人員根據(jù)圖書信息找到相應(yīng)的書卡和借閱證,并填好相應(yīng)的還書信息,這樣還書過程就完成了. 以上所描述的手工過程的不足之處顯而易見,首先處理借書、還書業(yè)務(wù)流程的效率很低,其次處理能力比較低,一段時間內(nèi),所能服務(wù)的讀者人數(shù)是有限的。利用計算機(jī)來處理這些流程無疑會極大程度地提高效率和處理能力。我們將會看到排隊等候借書、還書的隊伍不再那么長,工作人員出錯的概率也小了,讀者
6、可以花更多的時間在選擇書和看書上。 5.1任務(wù)分析本系統(tǒng)主要用于學(xué)校教師和學(xué)生圖書管理,主要任務(wù)是通過建立圖書管理系統(tǒng),完善學(xué)校圖書錄入、借還以及讀者信息的管理,通過查詢可立即定位該讀者的相應(yīng)的信息,可以對圖書進(jìn)行查詢、增加、修改,讀者可以預(yù)約已借圖書,針對這些問題設(shè)計此系統(tǒng)。5.2功能分析通過建立圖書管理系統(tǒng),把圖書館的圖書管理、讀者管理、圖書借閱管理等日常管理工作實行計算機(jī)統(tǒng)一管理,以提高工作效率和管理水平。這些管理包括:1、圖書基本信息的管理,包括增加、修改、查詢;2、讀者基本信息的管理,包括增加、修改、查詢管理;3、圖書借閱的管理,包括借書、還書、續(xù)借;4、系統(tǒng)管理,主要是增加用戶、修
7、改維護(hù)用戶信息。5。3功能需求通過以上的功能分析,該系統(tǒng)要完成以下的功能需求。1、管理員與讀者用戶登錄后有不同的權(quán)限,管理員具有管理和查詢?nèi)康臋?quán)限,讀者用戶只有查詢權(quán)限。2、圖書管理功能,用于實現(xiàn)添加和修改圖書紀(jì)錄。3、圖書查詢功能,用于查詢借閱圖書信息和統(tǒng)計借閱紀(jì)錄。4、讀者服務(wù)功能,用于添加和修改讀者紀(jì)錄及信息.5、圖書借閱功能,主要用于圖書借還.6、用戶主要用于用戶信息和密碼修改。5.4 系統(tǒng)建設(shè)目標(biāo) (1)要解決的問題隨著辦公自動化水平的不斷提高,現(xiàn)在學(xué)校管理學(xué)生信息也逐步從手工轉(zhuǎn)到計算機(jī)自動化信息處理階段。設(shè)計一個功能完整、操作簡便、界面友好的學(xué)生信息管理系統(tǒng)已經(jīng)是勢在必行的了。
8、由于原先圖書管理采用的人工系統(tǒng),浪費(fèi)人力物力財力,圖書管理系統(tǒng)可以改善這種情況,只需一臺電腦和一個管理員老師就能輕松完成。(2)系統(tǒng)開發(fā)的目的提高圖書管理工作的效率,減少相關(guān)人員的工作量,使學(xué)校的圖書管理工作真正做到科學(xué)、合理的規(guī)劃,系統(tǒng)、高效的實施,提高對借閱圖書以及讀者信息管理的速度。減少人力的投入的同時提高了信息處理的精度和準(zhǔn)確度,在輸入無誤的基礎(chǔ)上可保證數(shù)據(jù)的正確性。(3)開發(fā)帶來的好處改進(jìn)了管理服務(wù)的質(zhì)量,可由系統(tǒng)對圖書進(jìn)行自動分類、歸類,讀者信息整理、借閱情況登記入檔。改進(jìn)人員的利用率,減少了前臺操作人員,更多的人員可用于為借閱者服務(wù)、更新圖書等其他事物,節(jié)省人力資源。5.5 部分
9、要求說明圖書信息包括:每種圖書都有書名、ISBN、一名或多名作者(譯者)、出版社、定價和內(nèi)容簡介等;讀者信息包括:借書證記錄有借閱者的姓名、密碼、類別和所在單位等;讀者憑借書證借書,教師最多借書15本書,借書期限最長為90天,學(xué)生最多借書8本書,借書期限最長為30天。對于超期未還的讀者不能繼續(xù)借書,每本書每超期一天罰款0。05元.6系統(tǒng)設(shè)計6.1 體系結(jié)構(gòu)要求使用多層(三層)C/S或B/S模式開發(fā)該系統(tǒng)。簡單的客戶/服務(wù)器體系結(jié)構(gòu)的數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)周期短,能夠適應(yīng)大部分中小型數(shù)據(jù)庫應(yīng)用系統(tǒng)的要求(當(dāng)客戶端數(shù)量少于50時),但是,隨著數(shù)據(jù)庫應(yīng)用的日益發(fā)展、數(shù)據(jù)容量的不斷增加、客戶端數(shù)量的不斷增
10、多,這種體系結(jié)構(gòu)顯示出了諸多缺陷。所謂三層體系結(jié)構(gòu),是在客戶端與數(shù)據(jù)庫之間加入了一個“中間層”。它是指邏輯上的三層結(jié)構(gòu),即使在一臺機(jī)器上也可構(gòu)成三層體系結(jié)構(gòu)的應(yīng)用系統(tǒng).三層分別為表示層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問層。表示層(USL):為客戶提供對應(yīng)用程序的訪問,以Windows應(yīng)用程序或Web應(yīng)用程序的形式提供實現(xiàn)的功能。業(yè)務(wù)邏輯層(BLL):實現(xiàn)應(yīng)用程序的業(yè)務(wù)功能,以類庫的形式為表示層提供服務(wù)。數(shù)據(jù)訪問層(DAL):實現(xiàn)整個系統(tǒng)所有的數(shù)據(jù)庫連接、數(shù)據(jù)存取操作,以組件類庫的形式為業(yè)務(wù)邏輯層提供服務(wù)。此外,實體類,簡單地說是描述一個業(yè)務(wù)實體的類。業(yè)務(wù)實體直觀一點(diǎn)的理解就是整個應(yīng)用系統(tǒng)業(yè)務(wù)所涉及的對象,
11、從數(shù)據(jù)存儲來講,業(yè)務(wù)實體就是存儲應(yīng)用系統(tǒng)信息的數(shù)據(jù)表,將數(shù)據(jù)表中的每一個字段定義成屬性,并將這些屬性用一個類封裝,這個類就稱為實體類。業(yè)務(wù)實體可以認(rèn)為屬于業(yè)務(wù)邏輯層,當(dāng)然,可以將業(yè)務(wù)實體單獨(dú)作為一層,稱為業(yè)務(wù)實體層。表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)訪問層都依賴于業(yè)務(wù)實體。各層之間數(shù)據(jù)的傳遞主要是實體對象(業(yè)務(wù)信息封裝在實體對象中). 6。2 功能框圖該系統(tǒng)主要由五大功能模塊組成:圖書管理、讀者管理、借閱管理、數(shù)據(jù)統(tǒng)計和系統(tǒng)管理。各大功能模塊又由一些子功能模塊構(gòu)成,其功能框圖如下。6。3 數(shù)據(jù)庫結(jié)構(gòu)1. 讀者類別表(ReaderType)字段名數(shù)據(jù)類型說明rdTypeSmallInt讀者類別【主鍵】rd
12、TypeNameVarchar(8)讀者類別名稱CanLendQtyInt可借書數(shù)量CanLendDayInt可借書天數(shù)CanContinueTimesInt可續(xù)借的次數(shù)PunishRateFloat罰款率(分/天/本)DateValidSmallInt證書有效日期2. 讀者信息表(Reader)字段名數(shù)據(jù)類型說明rdIDInt讀者序號【主鍵】rdNamevarchar(10)讀者姓名rdPwdvarchar (10)讀者密碼,初值為“123”rdSexBit性別,0男,1女rdTypeSmallInt讀者類別【外鍵】rdDeptChar(8)單位代碼rdPhonevarchar(25)電話號
13、碼rdEmailvarchar(25)電子郵件rdDateRegsmalldatetime讀者登記日期rdBorrowQtyInt已借書數(shù)量ldPunishMoneyMoney罰款金額3。 圖書信息表(Book)字段名數(shù)據(jù)類型說明bkIDInt圖書序號【主鍵】bkCodeChar(20)圖書編號bkNameVarchar(50)書名bkAuthorVarchar(30)作者bkPressVarchar(50)出版社bkDatePressSmalldatetime出版日期bkISBNChar(15)書號bkCatalogVarchar(30)分類名bkLanguageSmallInt語言,0中文
14、,1英文,2-日文,3俄文,4德文,5法文bkPagesInt頁數(shù)bkPriceMoney價格bkDateInSmallDateTime入館日期bkBriefText內(nèi)容簡介bkCoverVarchar(100) 或image圖書封面照片bkIsInLabChar(4)或bit是否在館4。 借閱信息表(Borrow)字段名數(shù)據(jù)類型說明rdIDInt讀者序號【主鍵】bkIDInt圖書序號【主鍵】ldContinueTimesInt續(xù)借次數(shù)(第一次借時,記為1)ldDateOutSmallDateTime借書日期ldDateRetPlanSmallDateTime應(yīng)還日期ldDateRetActS
15、mallDateTime實際還書日期ldOverDayInt超期天數(shù)ldOverMoneyMoney超期金額lsHasReturnBit是否已經(jīng)還書,缺省為0-未還OperatorLendVarChar(10)借書操作員OperatorRetVarChar(10)還書操作員6。4 功能模塊1。 圖書管理添加圖書信息:圖書管理員可以將新書添加到數(shù)據(jù)庫中。查詢圖書信息:所有用戶可以按指定的組合條件查詢圖書,查詢結(jié)果可以顯示、預(yù)覽、打印、導(dǎo)出到Excel文件。對于圖書管理員,可以刪除圖書和修改部分字段的內(nèi)容。2. 讀者管理讀者管理員可以添加讀者類別和修改讀者類別.讀者管理員可以添加讀者信息,可以按指
16、定的組合條件查詢讀者,查詢結(jié)果可以顯示、預(yù)覽、打印和導(dǎo)出到Excel文件,還可以刪除讀者和修改部分字段的內(nèi)容。讀者可以修改個人信息、密碼和查閱個人的借閱信息.3. 借閱管理讀者管理員可以給讀者借書和還書.還書時如果圖書超期,提示超期的天數(shù),并計算罰款,記錄歸還相關(guān)信息。讀者管理員還可按讀者信息查詢指定期間內(nèi)的歷史借閱信息和當(dāng)前未還信息,按圖書信息查詢指定期間內(nèi)的歷史借閱信息和當(dāng)前借閱讀者信息.查詢結(jié)果可以顯示、預(yù)覽、打印和導(dǎo)出到Excel文件.4. 數(shù)據(jù)統(tǒng)計圖書管理員和讀者管理員可以做如下統(tǒng)計:按圖書的個別屬性進(jìn)行分類統(tǒng)計(如:圖書編號前幾位、出版社、出版年、入館日期年、是否在館等);按借閱的
17、個別屬性進(jìn)行分類統(tǒng)計(如:讀者類型、單位代碼、借閱天數(shù)等)。統(tǒng)計結(jié)果可以顯示、預(yù)覽、打印和導(dǎo)出到Excel文件.5。 系統(tǒng)管理系統(tǒng)管理員可以瀏覽、添加、修改和刪除用戶信息.6.5 界面設(shè)計1。 登錄窗口所有用戶只有正確登錄后,方可進(jìn)入該系統(tǒng),登錄窗口如下.Ø 用戶ID指“用戶“表中的用戶ID或“讀者"信息表中的讀者ID。2. 總體界面用戶進(jìn)入系統(tǒng)后,總體界面如下,左邊是菜單欄,右邊是處理窗口.3. 菜單設(shè)計不同角色的用戶登錄后,有不同的菜單,每個菜單對應(yīng)不同的功能。不同角色的菜單設(shè)計如下。4. 查詢圖書信息圖書管理員、讀者管理員和讀者均可查詢圖書信息,如下圖。Ø
18、輸入查詢條件:圖書序號采用完全匹配;圖書編號采用左匹配;圖書名稱、作者、出版社采用模糊匹配;出版日期、入館日期、庫存數(shù)量支持區(qū)間條件。Ø 區(qū)間條件采用“”作為區(qū)間分隔符,日期區(qū)域輸入如:2007112007-331表示日期大于等于20071-1且小于等于20073-31,2007-1-1表示日期大于等于2007-11,2007-331表示日期小于等于2007331。數(shù)量區(qū)域輸入如:1030,10,30。Ø 輸入文本若為空,表示沒有約束條件。Ø 按下“查詢”按鈕后,將滿足各個輸入框中的條件相與的記錄顯示到網(wǎng)格中。Ø 查詢結(jié)果可以預(yù)覽、打印和導(dǎo)出到指定的Ex
19、cel文件。Ø 按下“明細(xì)”按鈕,可以查看選定圖書的詳細(xì)信息.Ø 若用戶角色為圖書管理員,可以按下“修改”或“刪除”按鈕.n 按下“刪除”按鈕,可以刪除選擇的圖書。n 按下“修改”按鈕,將修改的結(jié)果保存到“圖書信息表”,成功修改后,顯示提示信息。5. 添加圖書信息只有圖書管理員可以添加圖書信息,如下圖.Ø 輸入或選擇相關(guān)圖書的信息。Ø 起始序號是系統(tǒng)自動獲得到的最后入館圖書的序號加1,然后根據(jù)圖書本數(shù),自動生成圖書序號。Ø 圖書封面從掃描的文件得到,上傳后存儲到數(shù)據(jù)庫相應(yīng)記錄中。Ø 按下“添加”按鈕,向“圖書信息表”中添加1條記錄,成
20、功添加后,顯示提示信息。6。 添加讀者信息只有讀者管理員才可以添加讀者信息,如下圖。Ø 輸入或選擇相關(guān)圖書的信息.Ø 按下“添加"按鈕,向“讀者信息表”中添加1條記錄。成功添加后,顯示提示信息。Ø 按下“修改”按鈕,將修改的結(jié)果保存到“讀者信息表”中。成功修改后,顯示提示信息.Ø 按下“刪除”按鈕,可以刪除選定的讀者信息。7。 查詢讀者信息圖書管理員、讀者管理員均可查詢讀者信息,如下圖.Ø 輸入查詢條件:讀者編號、性別、讀者類別采用完全匹配;讀者姓名采用模糊匹配; Ø 輸入文本若為空,表示沒有約束條件。Ø 按下“查
21、詢"按鈕后,將滿足各個輸入框中的條件相與的記錄顯示到網(wǎng)格中.Ø 查詢結(jié)果可以預(yù)覽、打印和導(dǎo)出到指定的Excel文件。8. 添加讀者類別信息只有讀者管理員才可以添加讀者類別信息,如下圖。Ø 輸入或選擇相關(guān)讀者類別的信息.Ø 按下“添加"按鈕,向“讀者類別信息表”中添加1條記錄。成功添加后,顯示提示信息。9。 修改讀者類別信息只有讀者管理員才可以修改讀者類別信息。Ø 輸入或選擇相關(guān)讀者的信息。Ø 按下“修改"按鈕,修改“讀者類別信息表”中相應(yīng)的記錄。成功修改后,顯示提示信息。10. 借書讀者管理員可以借書,如下圖。
22、216; 輸入讀者編號后,系統(tǒng)自動顯示讀者姓名等信息;Ø 輸入圖書序號或圖書名稱,系統(tǒng)自動顯示圖書信息。Ø 按下“借書”按鈕,向“借閱信息表"中添加1條記錄(續(xù)借次數(shù)為0,計劃還書日期為當(dāng)前系統(tǒng)日期加上該讀者可借書的最大天數(shù),是否已經(jīng)還書為0,借書操作員)。11。 續(xù)借讀者管理員可以續(xù)借,如下圖。Ø 輸入讀者編號后,系統(tǒng)自動顯示讀者信息以及該讀者的所有借閱圖書。Ø 選擇要續(xù)借的圖書,按下“續(xù)借”按鈕,修改“借閱信息表”中對應(yīng)記錄的相關(guān)信息(續(xù)借次數(shù)加1,計劃還書日期加上可以借書天數(shù),超期金額,罰款金額,借書操作員).成功續(xù)借后,顯示提示信息。&
23、#216; 注:只能對滿足以下條件的圖書才能續(xù)借:離還書日期只有1個星期,若已超期需交罰款金額,續(xù)借次數(shù)不能超過讀者類型指定的次數(shù)。12. 還書讀者管理員可以還書,如下圖。Ø 輸入讀者編號后,系統(tǒng)自動顯示讀者信息,同時顯示改讀者的所有借閱圖書.Ø 選擇要還的圖書,按下“還書"按鈕,修改“借閱信息表"中對應(yīng)記錄的相關(guān)信息(實際還書日期為當(dāng)前系統(tǒng)日期,是否已經(jīng)還書為1,超期金額,罰款金額,還書操作員).成功還書后,顯示提示信息。13。 查詢讀者借閱信息讀者管理員讀者的查詢借閱信息,如下圖。Ø 輸入查詢條件:讀者類別采用完全匹配;Ø 按下“
24、查詢"按鈕后,將記錄顯示到網(wǎng)格中。Ø 查詢結(jié)果可以預(yù)覽、打印和導(dǎo)出到指定的Excel文件。14。 按借閱統(tǒng)計信息圖書管理員和讀者管理員可以按借閱統(tǒng)計信息。Ø 按讀者類型統(tǒng)計借閱情況:按讀者類型分類匯總統(tǒng)計,統(tǒng)計結(jié)果可以預(yù)覽、打印、導(dǎo)出到Excel文件,還可以顯示統(tǒng)計圓餅圖。Ø 按單位代碼統(tǒng)計借閱情況:按單位代碼分類匯總統(tǒng)計,統(tǒng)計結(jié)果可以預(yù)覽、打印、導(dǎo)出到Excel文件,還可以顯示統(tǒng)計柱狀圖。Ø 按借閱天數(shù)統(tǒng)計借閱情況:按借閱天數(shù)區(qū)間分類匯總統(tǒng)計,天數(shù)區(qū)間按7天一個間隔分為7、14、21、28、35、42、49、56、63、70、77、84、91
25、、91以上,統(tǒng)計結(jié)果可以預(yù)覽、打印、導(dǎo)出到Excel文件,還可以顯示統(tǒng)計柱狀圖。15。 按圖書統(tǒng)計信息圖書管理員和讀者管理員可以按借閱統(tǒng)計信息.Ø 按圖書類型統(tǒng)計借閱情況:按圖書類型分類匯總統(tǒng)計,統(tǒng)計結(jié)果可以預(yù)覽、打印、導(dǎo)出到Excel文件,還可以顯示統(tǒng)計柱狀圖.Ø 按出版社統(tǒng)計借閱情況:按出版社分類匯總統(tǒng)計,統(tǒng)計結(jié)果可以預(yù)覽、打印、導(dǎo)出到Excel文件,還可以顯示統(tǒng)計柱狀圖.Ø 按出版年統(tǒng)計借閱情況:按出版年區(qū)間分類匯總統(tǒng)計,出版年區(qū)間按近10年一年一個間隔,以后5年一個間隔,最多50年,統(tǒng)計結(jié)果可以預(yù)覽、打印、導(dǎo)出到Excel文件,還可以顯示統(tǒng)計柱狀圖。
26、16; 按入館年統(tǒng)計借閱情況:按入館年區(qū)間分類匯總統(tǒng)計,入館年區(qū)間按近10年一年一個間隔,以后5年一個間隔,最多50年,統(tǒng)計結(jié)果可以預(yù)覽、打印、導(dǎo)出到Excel文件,還可以顯示統(tǒng)計柱狀圖。16. 查詢個人借閱信息讀者可以查詢本人的借閱信息,界面見查詢讀者借閱信息,其中讀者ID自動關(guān)聯(lián)讀者本人。17. 用戶管理系統(tǒng)管理員可以進(jìn)行用戶管理,首先在網(wǎng)格中顯示全部用戶信息,如下圖。 Ø 按下“添加"按鈕,彈出“添加用戶”對話框,如下圖.² 按下“添加”按鈕,向“用戶信息表”中添加一條記錄。成功添加后,顯示提示信息。Ø 按下“修改"按鈕,彈出“修改用戶”
27、對話框,如下圖。 ² 按下“修改"按鈕,修改“用戶信息表”中對應(yīng)記錄。成功修改后,顯示提示信息.7 系統(tǒng)實現(xiàn)7.1數(shù)據(jù)庫部分主要代碼- Description:獲取罰款率<Description, ,CREATE FUNCTION GetPunishRate(rdID int) RETURNS floatASBEGIN DECLARE rate floatSELECT rate=PunishRate FROM ReaderType WHERE rdType in (SELECT rdType FROM Reader WHERE rdID=rdID) RETURN ra
28、teEND- Description:添加圖書Description,,>CREATE PROCEDURE dbo.usp_AddBookbkID int,bkCode char(20),bkName varchar(50),bkAuthor varchar(30),bkPress varchar(50),bkDatePress smalldatetime,bkISBN char(15),bkCatalog varchar(30),bkLanguage smallint,bkPages int,bkPrice money, bkDateIn smalldatetime,bkBrief t
29、ext,bkCover image=null,bkIsInLab bit, bkNum intAS WHILE bkNum0 BEGIN INSERT Book VALUES( bkID,bkCode, bkName, bkAuthor, bkPress, bkDatePress, bkISBN, bkCatalog, bkLanguage, bkPages, bkPrice, bkDateIn, bkBrief, bkCover, bkIsInLab) SET bkID=bkID+1 SET bkNum=bkNum1 END- Description:添加讀者Description,,>
30、;CREATE PROCEDURE dbo.usp_AddReader rdID int, rdName varchar(10), rdPwd varchar(10), rdSex char(2), rdTypeName varchar(5), rdDept varchar(15), rdPhone varchar(25), rdEmail varchar(25), rdDateReg smalldatetime, rdBorrowQty intAS INSERT Reader Values( rdID, rdName, rdPwd, rdSex, rdType, rdDept, rdPhon
31、e, rdEmail, rdDateReg, rdBorrowQty)- Description:還書更新<Description,CREATE PROCEDURE dbo。usp_ReturnBookrdID int, bkID int, OperatorRet varchar(10)ASDECLARE overMoney moneySET overMoney=0SELECT ldOverMoney FROM BorrowWHERE rdID=rdID AND bkID=bkID AND IsHasReturn=0UPDATE Borrow SET ldDateRetAct=GETDA
32、TE(), IsHasReturn=1, OperatorRet=OperatorRetWHERE rdID=rdID AND bkID=bkID AND IsHasReturn=0UPDATE ReaderSET rdBorrowQty=rdBorrowQty-1, PunishMoney=PunishMoney-overMoneyWHERE rdID=rdIDUPDATE BookSET bkIsInLab=1WHERE bkID=bkID- Description:添加借閱記錄Description,CREATE PROCEDURE dbo。usp_AddBorrowRecordrdID
33、 int, bkID int, OperatorLend varchar(10)ASDECLARE date smalldatetimeDECLARE days intSET date=GETDATE()SELECT days=CanLendDay FROM ReaderTypeWHERE rdType IN(SELECT rdType FROM Reader WHERE rdID=rdID)INSERT Borrow Values(rdID, bkID, 0, date, DATEADD(DAY,days,date), NULL, 0, 0, 0, OperatorLend, NULL)UP
34、DATE ReaderSET rdBorrowQty=rdBorrowQty+1WHERE rdID=rdIDUPDATE BookSET bkIsInLab=0WHERE bkID=bkID- Description:更新借閱表、讀者表Description,,CREATE PROCEDURE dbo.usp_UpdateBorrowASDECLARE today smalldatetimeDECLARE pm moneySET today=GETDATE()UPDATE Borrow SET ldOverDay=DATEDIFF(DAY,ldDateRetPlan,today), ldOv
35、erMoney=DATEDIFF(DAY,ldDateRetPlan,today)*dbo.GetPunishRate(rdID)/100WHERE IsHasReturn=0 AND TodayldDateRetPlanUPDATE ReaderSET PunishMoney=sumOverMoneyFROM dbo。Reader,(SELECT SUM(dbo.Borrow。ldOverMoney) AS sumOverMoney, dbo。Reader。rdID FROM dbo。Borrow INNER JOIN dbo。Reader ON dbo。Borrow。rdID = dbo。
36、Reader。rdID WHERE (dbo.Borrow.IsHasReturn = 0)GROUP BY dbo。Reader.rdID)SumMoney WHERE SumMoney。rdID=Reader。rdID- Description:更新借閱表<Description,>CREATE PROCEDURE dbo。usp_UpdateBorrowASDECLARE today smalldatetimeDECLARE pm moneySET today=GETDATE()UPDATE Borrow SET ldOverDay=DATEDIFF(DAY,ldDateRe
37、tPlan,today), ldOverMoney=ldOverDay*dbo。GetPunishRate(rdID)/100WHERE IsHasReturn=0 AND Today>ldDateRetPlanUPDATE ReaderSET PunishMoney=sumOverMoneyFROM dbo.Reader,(SELECT SUM(dbo。Borrow。ldOverMoney) AS sumOverMoney, dbo。Reader.rdID FROM dbo.Borrow INNER JOIN dbo。Reader ON dbo.Borrow。rdID = dbo.Re
38、ader。rdID WHERE (dbo.Borrow。IsHasReturn = 0)GROUP BY dbo。Reader.rdID)SumMoney WHERE SumMoney.rdID=Reader。rdID7。2 數(shù)據(jù)庫操作公共類數(shù)據(jù)庫操作類SqlHelper主要實現(xiàn)的功能有:打開數(shù)據(jù)庫連接、關(guān)閉數(shù)據(jù)庫連接、執(zhí)行帶參數(shù)的SQL語句,執(zhí)行存儲過程等。 / summary> / 數(shù)據(jù)庫基礎(chǔ)操作類 / /summary class SQLHelper / summary / 數(shù)據(jù)庫連接對象 / </summary> private static SqlConnectio
39、n conn = new SqlConnection( Properties.Settings.Default.ConnectionString); private static DataSet ds = new DataSet(); private static SqlDataAdapter sda; / summary> / 打開數(shù)據(jù)庫連接 / </summary private static void OpenConn() try if (ConnectionState。Closed = conn。State) conn.Open(); catch (Exception) t
40、hrow new Exception("數(shù)據(jù)庫連接失敗!"); / <summary> / 關(guān)閉數(shù)據(jù)庫連接 / </summary private static void CloseConn() if (conn != null) if (ConnectionState.Open = conn.State) conn。Close(); region 執(zhí)行SQL非查詢語句,返回受影響的行數(shù) / <summary / 執(zhí)行不帶參數(shù)的SQL非查詢語句,返回受影響的行數(shù) / </summary / <param name=”sql”>要執(zhí)行
41、的sql語句/param / <returns返回受影響的記錄數(shù)/returns> public static int ExecuteNonQuery(string sql) int rows = 0; try OpenConn(); SqlCommand cmd = new SqlCommand(sql, conn); rows = cmd。ExecuteNonQuery(); finally CloseConn(); return rows; / summary> / 執(zhí)行帶參數(shù)的SQL語句,返回受影響的行數(shù) / /summary / param name="s
42、ql”>要執(zhí)行的sql語句/param> / param name="parameters"參數(shù)集合</param / <returns>返回受影響的記錄數(shù)/returns> public static int ExecuteNonQuery(string sql, SqlParameter parameters) int rows = 0; try OpenConn(); SqlCommand cmd = new SqlCommand(sql, conn); if (null != parameters) foreach (SqlPar
43、ameter param in parameters) cmd.Parameters.Add(param); rows = cmd.ExecuteNonQuery(); catch (SqlException ex) throw ex; finally CloseConn(); return rows; / summary> / 執(zhí)行帶參數(shù)的存儲過程,返回受影響的行數(shù) / /summary> / param name=”storedProcName”>存儲過程名稱/param> / <param name=”parameters”存儲過程的參數(shù)</param
44、> / <returns>返回受影響的記錄數(shù)/returns public static int ExecuteStoredProc(string storedProcName, SqlParameter parameters) int rows = 0; try OpenConn(); SqlCommand cmd = new SqlCommand(); cmd。CommandType = CommandType。StoredProcedure; cmd。CommandText = storedProcName; cmd.Connection = conn; if (nul
45、l != parameters) foreach (SqlParameter param in parameters) cmd。Parameters.Add(param); rows = cmd。ExecuteNonQuery(); finally CloseConn(); return rows; endregion #region 執(zhí)行SQL查詢語句,返回結(jié)果集中的首行首列 / <summary / 執(zhí)行不帶參數(shù)的SQL查詢語句,返回結(jié)果集中的首行首列 / </summary / <param name=”sql”>要執(zhí)行的SQL查詢語句/param> / &
46、lt;returns返回結(jié)果集中的首行首列字段/returns> public static object ExecuteScalar(string sql) object obj = null; try OpenConn(); SqlCommand cmd = new SqlCommand(sql, conn); obj = cmd.ExecuteScalar(); finally CloseConn(); return obj; / <summary> / 執(zhí)行帶參數(shù)的SQL查詢語句,返回結(jié)果集中的首行首列 / </summary> / <param n
47、ame="sql”要執(zhí)行的SQL查詢語句/param> / <param name="parameters"參數(shù)集合</param / returns>返回結(jié)果集中的首行首列字段</returns public static object ExecuteScalar(string sql, SqlParameter parameters) object obj = null; try OpenConn(); SqlCommand cmd = new SqlCommand(sql, conn); if (null != parameters) foreach (SqlParameter param in parameters) cmd。Parameters。Add(param); obj = cmd。ExecuteScalar(); finally CloseConn()
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 班級文化在提升學(xué)習(xí)效率中的作用
- Module 5 Unit 2 That is a yellow cat(說課稿)-2024-2025學(xué)年外研版(一起)英語一年級上冊
- 2024-2025學(xué)年高中政治 第3單元 第6課 第2框 博大精深的中華文化說課稿 新人教版必修3
- 惠州2025年上半年廣東惠州市技師學(xué)院人才派遣人員招聘筆試歷年參考題庫附帶答案詳解
- 9《古詩三首》(說課稿)-2024-2025學(xué)年語文五年級下冊統(tǒng)編版
- 班組安全風(fēng)險防控策略與實踐
- 現(xiàn)代建筑中的綠色照明技術(shù)及其應(yīng)用案例分析
- 2024秋七年級數(shù)學(xué)上冊 第4章 一元一次方程4.2 解一元一次方程 4用移項法解一元一次方程說課稿(新版)蘇科版
- 未來科技先鋒現(xiàn)代智能手表設(shè)計解析
- 2024秋九年級語文上冊 第四單元 寫作 學(xué)習(xí)縮寫說課稿 新人教版
- 建筑工程施工質(zhì)量驗收規(guī)范檢驗批填寫全套表格(浙江省)
- 《病理學(xué)基礎(chǔ)》知識考核試題題庫與答案
- 人口分布 高一地理下學(xué)期人教版 必修第二冊
- 部編版六年級下冊語文第3單元習(xí)作例文+習(xí)作PPT
- 四年級上冊英語試題-Module 9 Unit 1 What happened to your head--外研社(一起)(含答案)
- 辦理工傷案件綜合應(yīng)用實務(wù)手冊
- 子宮內(nèi)膜異位癥診療指南
- 《高級計量經(jīng)濟(jì)學(xué)》-上課講義課件
- 護(hù)理診斷及護(hù)理措施128條護(hù)理診斷護(hù)理措施
- 九年級物理總復(fù)習(xí)教案
- 天然飲用山泉水項目投資規(guī)劃建設(shè)方案
評論
0/150
提交評論