畢業(yè)設(shè)計(jì)(論文)C++高校圖書(shū)管理系統(tǒng)_第1頁(yè)
畢業(yè)設(shè)計(jì)(論文)C++高校圖書(shū)管理系統(tǒng)_第2頁(yè)
畢業(yè)設(shè)計(jì)(論文)C++高校圖書(shū)管理系統(tǒng)_第3頁(yè)
畢業(yè)設(shè)計(jì)(論文)C++高校圖書(shū)管理系統(tǒng)_第4頁(yè)
畢業(yè)設(shè)計(jì)(論文)C++高校圖書(shū)管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩44頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、anyang institute of technology 本本 科科 畢畢 業(yè)業(yè) 論論 文文 高高 校校 圖圖 書(shū)書(shū) 管管 理理 系系 統(tǒng)統(tǒng) library management system 系(院)名稱: 計(jì)算機(jī)科學(xué)與信息工程系 專業(yè)班級(jí): 09 屆計(jì)算機(jī)科學(xué)與技術(shù)(專升本) 學(xué)生姓名: 指導(dǎo)教師: 指導(dǎo)教師職稱: 講 師 2009 年 5 月 目目 錄錄 引引 言言.1 第第 1 1 章章 緒論緒論.2 1.1問(wèn)題的提出.2 1.1.1 歷史背景.2 1.1.2 發(fā)展現(xiàn)狀.2 1.2系統(tǒng)的開(kāi)發(fā)模式.3 1.3系統(tǒng)開(kāi)發(fā)工具介紹.3 1.3.1 vc+ 簡(jiǎn)介.3 1.3.2 sql se

2、rver 2000 簡(jiǎn)介.4 1.3.3 mfc 簡(jiǎn)介.5 1.4小結(jié).5 第第 2 2 章章需求分析和概要設(shè)計(jì)需求分析和概要設(shè)計(jì).6 2.1圖書(shū)管理系統(tǒng)概述.6 2.2圖書(shū)管理系統(tǒng)目標(biāo).6 2.3可行性研究.6 2.3.1 技術(shù)上的可行性.6 2.3.2 經(jīng)濟(jì)上的可行性.7 2.3.3 操作可行性.7 2.4文件組成說(shuō)明.7 2.5系統(tǒng)概要設(shè)計(jì).7 2.5.1 圖書(shū)管理模塊.8 2.5.2 讀者管理模塊.8 2.5.3 圖書(shū)借閱管理模塊.9 2.5.4 數(shù)據(jù)庫(kù)管理模塊.9 2.5.5 基礎(chǔ)數(shù)據(jù)設(shè)置模塊.9 2.5.6 系統(tǒng)模塊.9 2.6小結(jié).10 第第 3 3 章章數(shù)據(jù)庫(kù)的創(chuàng)建及連接數(shù)據(jù)庫(kù)

3、的創(chuàng)建及連接.11 3.1數(shù)據(jù)庫(kù)需求分析.11 3.2數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì).12 3.3數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì).13 3.4小結(jié).15 第第 4 4 章章系統(tǒng)詳細(xì)設(shè)計(jì)系統(tǒng)詳細(xì)設(shè)計(jì).16 4.1系統(tǒng)管理.16 4.1.1 登錄系統(tǒng).16 4.1.2 注銷/重新登陸.17 4.1.3 退出系統(tǒng).17 4.2讀者管理.18 4.2.1 讀者登記.18 4.2.2 讀者查詢.20 4.2.3 讀者注銷.22 4.3圖書(shū)管理.23 4.3.1 新書(shū)入庫(kù).23 4.3.2 圖書(shū)查詢.25 4.3.3 圖書(shū)掛失.28 4.4借閱管理.29 4.4.1 借書(shū).30 4.4.2 還書(shū).32 4.4.3 借閱查詢.35

4、 4.4.4 還書(shū)查詢.35 4.5數(shù)據(jù)庫(kù)管理.35 4.5.1 數(shù)據(jù)庫(kù)備份.36 4.5.2 數(shù)據(jù)庫(kù)恢復(fù).36 4.6基礎(chǔ)信息設(shè)置.37 4.6.1 罰款設(shè)置.37 4.6.2 讀者類別設(shè)置.38 4.7小結(jié).39 第第 5 5 章章系統(tǒng)測(cè)試系統(tǒng)測(cè)試.40 5.1系統(tǒng)測(cè)試.40 5.1.1 系統(tǒng)管理.40 5.1.2 讀者管理.40 5.1.3 圖書(shū)管理.40 5.1.4 借閱管理.40 5.1.5 數(shù)據(jù)庫(kù)管理.40 5.1.6 基礎(chǔ)信息設(shè)置.40 5.2小結(jié).40 結(jié)結(jié) 論論.41 致致 謝謝.42 參考文獻(xiàn)參考文獻(xiàn).43 高高 校校 圖圖 書(shū)書(shū) 管管 理理 系系 統(tǒng)統(tǒng) 專業(yè)班級(jí):07 計(jì)

5、科 2 班(應(yīng)用專升本) 學(xué)生姓名: 指導(dǎo)老師: 職 稱: 講師 摘要摘要 隨著大學(xué)生知識(shí)層次的提高,高校圖書(shū)館成為日常生活中不可缺少的一部分。而圖 書(shū)館的存書(shū)量和業(yè)務(wù)量龐大,僅僅靠傳統(tǒng)的記賬式管理是不可行的。圖書(shū)館管理系統(tǒng)應(yīng) 運(yùn)而生,逐漸成為高校信息化建設(shè)的重要組成部分。高校圖書(shū)館不但是學(xué)校文獻(xiàn)信息中 心,也是為教學(xué)和科研服務(wù)的教育學(xué)術(shù)性機(jī)構(gòu),現(xiàn)代信息技術(shù)是影響圖書(shū)館發(fā)展最深刻 的環(huán)境因素。高密度的信息儲(chǔ)存技術(shù),高速度的信息傳遞技術(shù),高效率、高質(zhì)量的信息 查詢技術(shù),在變革了人們生產(chǎn)、收集、組織、傳遞和使用知識(shí)信息的方式的同時(shí),也使 信息服務(wù)的機(jī)制、結(jié)構(gòu)以及服務(wù)手段發(fā)生了巨大的變化。 該圖書(shū)管

6、理系統(tǒng)正是針對(duì)高校圖書(shū)館的這種工作需求,將專業(yè)知識(shí)的學(xué)習(xí)、實(shí)驗(yàn)?zāi)?力的培養(yǎng)、信息技能的提高結(jié)合起來(lái),實(shí)現(xiàn)了圖書(shū)管理信息系統(tǒng)的有機(jī)整合。本課題運(yùn) 用信息系統(tǒng)的思想并結(jié)合可視化編程技術(shù)建設(shè)高校圖書(shū)管理系統(tǒng)。通過(guò)本系統(tǒng)的運(yùn)用, 圖書(shū)館管理員可以完成讀者和圖書(shū)的信息維護(hù)、圖書(shū)借閱的記錄、日常信息查詢等各種 功能,還可以通過(guò)設(shè)置系統(tǒng)基本信息,完成對(duì)各項(xiàng)圖書(shū)借閱方面的一些設(shè)置。同時(shí),系 統(tǒng)還擁有強(qiáng)大的數(shù)據(jù)庫(kù)管理,可以完成數(shù)據(jù)庫(kù)的備份與恢復(fù),從而保護(hù)數(shù)據(jù)的安全性。 系統(tǒng)將 visual c+ 6.0 和數(shù)據(jù)庫(kù)開(kāi)發(fā)有機(jī)地結(jié)合起來(lái),以其簡(jiǎn)潔的界面,全面的功能, 提高了圖書(shū)借閱的工作效率。對(duì)減輕圖書(shū)管理員負(fù)擔(dān),提

7、高圖書(shū)館工作質(zhì)量以及改進(jìn)傳 統(tǒng)記賬式借閱方式還發(fā)揮著積極作用。 關(guān)鍵詞關(guān)鍵詞 圖書(shū)管理 vc+ sql server odbc library management system abstract with the development of the university students knowledge level enhancement, the university library becomes an essential portion of the daily life. but the library storage and the business volume are h

8、uge, depending on the traditional accounts management is merely not feasible. the library management system arises at the historic moment, gradually becomes an important component of the university informationization construction . the library management system is not only the school literature mess

9、age center, but also the education academic organization which serves for the teaching and the scientific research. the present information technology is the most profound environmental factor affecting the library development . high density information storage technology, high velocity information

10、transmission technology, high efficiency, high grade information of inquiry technology, having transformed the people on produce, collection, organization, transmission and use knowledge information way, also caused the mechanism information service , the structure as well as the service method have

11、 had the huge change. this library management system is precisely in view of this kind of work demand of the university library. it connect with the specialized knowledges study, experiment abilitys raise, information skills enhancement unifies and realized the information system of library manageme

12、nt organic conformity. this topic using information systems thought unifies the visualization programming technology construction university library management system. through this systems utilization, the librarian may complete maintenance of the reader and the information of books, borrowing recor

13、d of the books and so on, and also can through the basic information of establishment system, complete some books borrowing aspect establishments. at the same time, the system has the formidable data bank administration, may complete the backup and the restoration of the database , thus protection t

14、he data security. the system unifies visual c+ 6.0 and the database development organically, its succinct contact surface and comprehensive function enhances the working efficiency of the books borrowing. the system will reduces the librarian bear, improves the quality of library work as well as pla

15、y the positive role on the improvement the traditional borrowing type of accounts. key words book management vc+ sql server odbc 引引 言言 二十一世紀(jì)是信息的社會(huì),信息作為社會(huì)最主要的資源,將成為戰(zhàn)略資源引起人們 廣泛的關(guān)注。信息的主要來(lái)源就是書(shū)籍,特別是在高校,僅僅課本上的知識(shí)是遠(yuǎn)遠(yuǎn)不夠 的,還得靠課后的不斷學(xué)習(xí)和補(bǔ)充。高校的圖書(shū)館就是學(xué)生最主要的學(xué)習(xí)地和知識(shí)的主 要來(lái)源地。但由于高校圖書(shū)館圖書(shū)收藏量大大增加,要隨時(shí)對(duì)館內(nèi)圖書(shū)和學(xué)員進(jìn)行管理, 要隨時(shí)更新、修改各種

16、信息等等,從而使傳統(tǒng)的圖書(shū)管理員的工作日益繁重起來(lái)。隨著 計(jì)算機(jī)軟件技術(shù)的發(fā)展,高校圖書(shū)管理系統(tǒng)越來(lái)越受到人們的關(guān)注。因此,高校圖書(shū)管 理系統(tǒng)也以方便、快捷、費(fèi)用低的優(yōu)點(diǎn)正慢慢地進(jìn)入大學(xué)的生活,將傳統(tǒng)的圖書(shū)管理方 式徹底的解脫出來(lái),提高效率,減輕管理員的工作,減小出錯(cuò)的概率,讓讀者可以花更 多的時(shí)間在選擇書(shū)和看書(shū)上,使高校圖書(shū)館管理上了一個(gè)新臺(tái)階。以現(xiàn)代軟件技術(shù)為基 礎(chǔ)的信息管理主要是朝著信息化、現(xiàn)代化的目標(biāo)邁進(jìn)。作為新型的圖書(shū)館管理模式,它 具有對(duì)于教育、管理過(guò)程來(lái)說(shuō)極為寶貴的特性,可以為現(xiàn)代化圖書(shū)館管理模式的建構(gòu)提 供理想的環(huán)境。我國(guó)的圖書(shū)館自動(dòng)化管理應(yīng)用系統(tǒng)的研制工作從 70 年代末開(kāi)始

17、,目前國(guó) 內(nèi)開(kāi)發(fā)、使用的圖書(shū)館自動(dòng)化管理系統(tǒng)達(dá) 30 多種,從總體上說(shuō)國(guó)內(nèi)的圖書(shū)館自動(dòng)化管理 系統(tǒng)已進(jìn)入應(yīng)用完善階段。 有了圖書(shū)館管理系統(tǒng),我們可以對(duì)圖書(shū)進(jìn)館實(shí)行書(shū)目編排,并對(duì)其進(jìn)行數(shù)據(jù)庫(kù)備份, 以便對(duì)其進(jìn)行管理和出錯(cuò)恢復(fù);圖書(shū)借閱時(shí),可以通過(guò)查詢實(shí)現(xiàn)對(duì)用戶要求圖書(shū)的查找, 如果用戶需要借閱的圖書(shū)已被借出,可以及時(shí)反饋給用戶,避免時(shí)間的浪費(fèi);對(duì)于各類 用戶的借閱權(quán)限,可以通過(guò)系統(tǒng)進(jìn)行設(shè)定,滿足各類用戶的最大需求。 本文詳細(xì)闡述了基于 sqlserver 數(shù)據(jù)庫(kù)和 mfc 的設(shè)計(jì)與實(shí)現(xiàn)過(guò)程,包括系統(tǒng)需求分 析、系統(tǒng)功能設(shè)計(jì)以及數(shù)據(jù)庫(kù)設(shè)計(jì)。系統(tǒng)實(shí)現(xiàn)了高校圖書(shū)館管理工作等處理。系統(tǒng)設(shè)計(jì) 的工作重點(diǎn)放

18、在基于數(shù)據(jù)庫(kù)的圖書(shū)查詢、借閱查詢等信息交互上,系統(tǒng)將 mfc 編程技術(shù) 與數(shù)據(jù)庫(kù)編程技術(shù)有機(jī)結(jié)合起來(lái),以信息管理為手段,同時(shí)注重 mfc 語(yǔ)言的技術(shù)特色, 并把它應(yīng)用到圖書(shū)管理系統(tǒng)中,以此減輕圖書(shū)館管理員負(fù)擔(dān),提高工作效率,并促進(jìn)現(xiàn) 代化圖書(shū)管理方式的發(fā)展。 第第 1 1 章章 緒論緒論 當(dāng)今時(shí)代是飛速發(fā)展的信息時(shí)代。在各行各業(yè)中離不開(kāi)對(duì)信息的處理,這正是計(jì)算 機(jī)被廣泛應(yīng)用于信息管理系統(tǒng)的環(huán)境。計(jì)算機(jī)的最大好處在于利用它能夠進(jìn)行信息管理。 使用計(jì)算機(jī)進(jìn)行圖書(shū)管理,不僅提高了工作效率,而且大大的提高了數(shù)據(jù)安全性。尤其 對(duì)于復(fù)雜的高校圖書(shū)館管理,計(jì)算機(jī)能夠充分發(fā)揮它的優(yōu)越性。計(jì)算機(jī)進(jìn)行信息管理與

19、信息管理系統(tǒng)的開(kāi)發(fā)密切相關(guān),系統(tǒng)的開(kāi)發(fā)是系統(tǒng)管理的前提。本系統(tǒng)就是為了高校圖 書(shū)館管理人員方便日常工作,以提高圖書(shū)館的工作效率為最終目標(biāo),同時(shí)加強(qiáng)圖書(shū)館相 關(guān)信息的安全管理1。 1.1 問(wèn)題的提出 傳統(tǒng)的圖書(shū)管理方式都是人工來(lái)進(jìn)行的,不僅容易出錯(cuò),而且效率也不高。正是基 于這樣的情況下,同時(shí)隨著計(jì)算機(jī)的飛速發(fā)展,圖書(shū)管理系統(tǒng)才應(yīng)運(yùn)而生。 1.1.1 歷史背景 圖書(shū)館作為一種信息資源的集散地,圖書(shū)和用戶借閱資料繁多,包含很多的信息數(shù) 據(jù)的管理,現(xiàn)今,有很多的圖書(shū)館都是初步開(kāi)始使用,甚至尚未使用計(jì)算機(jī)進(jìn)行信息管 理。根據(jù)調(diào)查得知,以前對(duì)信息管理的主要方式是基于文本、表格等紙介質(zhì)的手工處理, 對(duì)于圖

20、書(shū)借閱情況(如借書(shū)天數(shù)、超過(guò)限定借書(shū)時(shí)間的天數(shù))的統(tǒng)計(jì)和核實(shí)等往往采用對(duì)借 書(shū)卡的人工檢查進(jìn)行,對(duì)借閱者的借閱權(quán)限、以及借閱天數(shù)等用人工計(jì)算、手抄進(jìn)行。 數(shù)據(jù)信息處理工作量大,容易出錯(cuò),由于數(shù)據(jù)繁多,容易丟失,且不易查找。總的來(lái)說(shuō), 缺乏系統(tǒng),規(guī)范的信息管理手段。盡管有的圖書(shū)館有計(jì)算機(jī),但是尚未用于信息管理, 沒(méi)有發(fā)揮它的效力,資源閑置比較突出,這就是管理信息系統(tǒng)的開(kāi)發(fā)的基本環(huán)境2。 數(shù)據(jù)處理手工操作,工作量大,出錯(cuò)率高,出錯(cuò)后不易更改。圖書(shū)館采取手工方式 對(duì)圖書(shū)借閱情況進(jìn)行人工管理,由于信息比較多,圖書(shū)借閱信息的管理工作混亂而又復(fù) 雜;一般借閱情況是記錄在借書(shū)證上,圖書(shū)的數(shù)目和內(nèi)容記錄在文件

21、中,圖書(shū)館的工作 人員和管理員也只是當(dāng)時(shí)對(duì)它比較清楚,時(shí)間一長(zhǎng),如再要進(jìn)行查詢,就得在眾多的資 料中翻閱、查找了,造成查詢費(fèi)時(shí)、費(fèi)力。如要對(duì)很長(zhǎng)時(shí)間以前的圖書(shū)進(jìn)行更改就更加 困難了3。 計(jì)算機(jī)信息化管理具有儲(chǔ)存量大、速度快等許多優(yōu)點(diǎn),提供信息及時(shí)快捷,因此利 用計(jì)算機(jī)提供的信息對(duì)借閱過(guò)程形成一整套動(dòng)態(tài)的管理。 1.1.2 發(fā)展現(xiàn)狀 隨著高校信息建設(shè)的逐步深入,我國(guó)的校園信息技術(shù)教育經(jīng)過(guò)了三次浪潮、三個(gè)階 段的發(fā)展,目前正面臨一個(gè)前所未有、迅猛發(fā)展的大好局面。2002 年 9 月,教育部發(fā)布 了教育管理信息化標(biāo)準(zhǔn) ,標(biāo)志著我國(guó)教育管理信息化建設(shè)開(kāi)始朝標(biāo)準(zhǔn)化、規(guī)范化的方 向發(fā)展。在校園管理信息化的

22、進(jìn)程中,除了校園辦公自動(dòng)化以外,一套完善優(yōu)秀的高校 圖書(shū)館管理系統(tǒng)已經(jīng)成為校園管理高效、實(shí)用的重要體現(xiàn)。高校希望提高圖書(shū)館管理水 平,實(shí)現(xiàn)讀者檢索圖書(shū)、圖書(shū)編目、預(yù)約、借閱、歸還等功能,實(shí)現(xiàn)圖書(shū)信息、讀者信 息的統(tǒng)計(jì)分析等各管理環(huán)節(jié)的自動(dòng)化,減輕圖書(shū)館管理員的工作量,通過(guò)使用先進(jìn)科學(xué) 的條形碼技術(shù),減少人為失誤,提高圖書(shū)信息準(zhǔn)確性和工作效率,提高學(xué)生對(duì)圖書(shū)館服 務(wù)的滿意度??傊?,傳統(tǒng)的校園圖書(shū)館管理模式使管理存在信息不暢、效率低下、操作 不規(guī)范等一系列問(wèn)題,而基于網(wǎng)絡(luò)的校園圖書(shū)館管理系統(tǒng)很大程度上緩解了這方面的問(wèn) 題和壓力,為學(xué)校實(shí)現(xiàn)了真正的信息化管理4。 1.2 系統(tǒng)的開(kāi)發(fā)模式 本設(shè)計(jì)采用

23、vc+和 sql server2000 混合數(shù)據(jù)庫(kù)編程模式來(lái)開(kāi)發(fā)一個(gè)高校圖書(shū)管理 系統(tǒng)。 1.3 系統(tǒng)開(kāi)發(fā)工具介紹 1.3.1 vc+ 簡(jiǎn)介 vc+是微軟公司開(kāi)發(fā)的一個(gè) ide(集成開(kāi)發(fā)環(huán)境),換句話說(shuō),就是使用 c+的一個(gè) 開(kāi)發(fā)平臺(tái)。但是,vc+是 windows 平臺(tái)上的 c+編程環(huán)境,學(xué)習(xí) vc+要了解很多 windows 平臺(tái)的特性并且還要掌握 mfc、atl、com 等的知識(shí),難度比較大。windows 下編程需要了解 windows 的消息機(jī)制以及回調(diào)(callback)函數(shù)的原理;mfc 是 win32api 的包裝類,需要理解文檔視圖類的結(jié)構(gòu),窗口類的結(jié)構(gòu),消息流向等等;com

24、 是代碼共 享的二進(jìn)制標(biāo)準(zhǔn),需要掌握其基本原理等等。 vc+作為一個(gè)主流的開(kāi)發(fā)平臺(tái)一直深受編程愛(ài)好者的喜愛(ài),但是很多人卻對(duì)它的入 門(mén)感到難于上青天,究其原因主要是大家對(duì)它錯(cuò)誤的認(rèn)識(shí)造成的,嚴(yán)格來(lái)說(shuō) vc+不是門(mén) 語(yǔ)言,雖然它和 c+之間有密切的關(guān)系,如果形象點(diǎn)比喻的話,可以把 c+看作為一種 “工業(yè)標(biāo)準(zhǔn)” ,而 vc+則是某種操作系統(tǒng)平臺(tái)下的“廠商標(biāo)準(zhǔn)” ,而“廠商標(biāo)準(zhǔn)”是在遵 循“工業(yè)標(biāo)準(zhǔn)”的前提下擴(kuò)展而來(lái)的。 vc+應(yīng)用程序的開(kāi)發(fā)主要有兩種模式:一種是 win api 方式,另一種則是 mfc 方 式。傳統(tǒng)的 win api 開(kāi)發(fā)方式比較繁瑣,而 mfc 則是對(duì) win api 再次封裝,

25、所以 mfc 相對(duì)于 win api 開(kāi)發(fā)更具備效率優(yōu)勢(shì)。 vc+基于 c、c+語(yǔ)言,主要是由 mfc 組成,兼有高級(jí)和低級(jí)語(yǔ)言的雙重性,功能 強(qiáng)大,靈活,執(zhí)行效率高,幾乎可說(shuō) vc+在 windows 平臺(tái)無(wú)所不能。 最大缺點(diǎn)是開(kāi)發(fā) 效率不高5。 1.3.2 sql server 2000 簡(jiǎn)介 microsoft 的 sql server 2000,是一個(gè)大型的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(dbms),具有非常 強(qiáng)大的關(guān)系數(shù)據(jù)庫(kù)創(chuàng)建、開(kāi)發(fā)、設(shè)計(jì)及管理功能。 與以前的幾個(gè)版本相比,sql server 2000 有如下幾個(gè)特點(diǎn): 1. 與 internet 的緊密結(jié)合 sql server 2000

26、的數(shù)據(jù)庫(kù)引擎集成了對(duì) xml 的支持,以可擴(kuò)展、易于使用和安全, 成為建設(shè)大型 web 站點(diǎn)最好的數(shù)據(jù)存儲(chǔ)設(shè)備之一。sql server 2000 的編程模式在很大程 度上與專用于開(kāi)發(fā) web 應(yīng)用的 windows dna 架構(gòu)相集成。同時(shí),sql server 2000 所攜 帶的諸如英語(yǔ)查詢以及 microsoft 查詢服務(wù)等為開(kāi)發(fā)的 web 應(yīng)用提供了友好強(qiáng)大的查詢界 面。 2. 可擴(kuò)展性和可用性 為了兼顧各種配置計(jì)算機(jī)的使用,sql server 2000 的數(shù)據(jù)庫(kù)引擎可以運(yùn)行在裝有 windows 98 的臺(tái)式機(jī)、筆記本電腦到安裝 windows 2000 數(shù)據(jù)中心的多處理器計(jì)算機(jī)

27、上。 sql server 2000 企業(yè)版具有聰明服務(wù)器、視圖索引以及超大規(guī)模的內(nèi)存支持等特征,完 全可以滿足最大規(guī)模的 web 站點(diǎn)的性能需求。 sql server 2000 所支持的聯(lián)盟數(shù)據(jù)庫(kù)服務(wù)器特性允許用戶在多個(gè)數(shù)據(jù)庫(kù)服務(wù)器上水 平劃分?jǐn)?shù)據(jù)表,從而使得服務(wù)器彼此合作提供相似于集群服務(wù)器所能提供的強(qiáng)大性能。 3. 簡(jiǎn)單友好的操作方式 sql server 2000 包含一整套的管理和開(kāi)發(fā)工具,這些工具都具有非常友好的用戶界 面,在提供強(qiáng)大功能的同時(shí),易于安裝、使用和發(fā)布。用戶可以把更多的精力放在自己 的業(yè)務(wù)問(wèn)題上,可以非常迅速地建立并發(fā)布強(qiáng)大而復(fù)雜的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)。 4. 數(shù)據(jù)倉(cāng)庫(kù)支

28、持 sql server 2000 為了滿足現(xiàn)代企業(yè)對(duì)大規(guī)模數(shù)據(jù)進(jìn)行有效分析和利用的要求,包含 了一系列提取、分析、總結(jié)數(shù)據(jù)的工具從而使聯(lián)機(jī)分析處理成為可能。同時(shí),sql server 2000 提供英語(yǔ)查詢工具和編程接口,使得以英語(yǔ)為基礎(chǔ)設(shè)計(jì)和管理,查詢數(shù)據(jù)庫(kù)成為可 能6。 1.3.3 mfc 簡(jiǎn)介 微軟基礎(chǔ)類(microsoft foundation classes,mfc),同 vcl 類似,是一種 application framework,隨微軟 vc+ 開(kāi)發(fā)工具發(fā)布。目前最新版本為 9.0(截止 2008 年 11 月)。該 類庫(kù)提供一組通用的可重用的類庫(kù)供開(kāi)發(fā)人員使用。大部分類均

29、從 cobject 直接或間接 派生,只有少部分類例外。此外 mfc 的部分類為 mfc/atl 通用,可以在 win32 應(yīng)用程 序中單獨(dú)包含并使用這些類。 mfc 實(shí)際上是微軟提供的,用于在 c+環(huán)境下編寫(xiě)應(yīng)用程序的一個(gè)框架和引擎, vc+是 windos 下開(kāi)發(fā)人員使用的專業(yè) c+ sdk(sdk, standard software develop kit, 專業(yè)軟件開(kāi)發(fā)平臺(tái)),mfc 就是掛在它之上的一個(gè)輔助軟件開(kāi)發(fā)包,mfc 作為與 vc+血 肉相連的部分(注意 c+和 vc+的區(qū)別:c+是一種程序設(shè)計(jì)語(yǔ)言,是一種大家都承認(rèn)的 軟件編制的通用規(guī)范,而 vc+只是一個(gè)編譯器,或者說(shuō)是

30、一種編譯器+源程序編輯器的 開(kāi)發(fā)平臺(tái)),這跟 pascal 和 delphi 的關(guān)系是一個(gè)道理,pascal 是 delphi 的語(yǔ)言基礎(chǔ),delphi 使用 pascal 規(guī)范來(lái)進(jìn)行 win 下應(yīng)用程序的開(kāi)發(fā)和編譯,卻不同于 basic 語(yǔ)言和 vb 的關(guān)系, basic 語(yǔ)言在 vb 開(kāi)發(fā)出來(lái)被應(yīng)用的年代已經(jīng)成了 basic 語(yǔ)言的新規(guī)范,vb 新加的 basic 語(yǔ)言要素,如面向?qū)ο蟪绦蛟O(shè)計(jì)的要素,是一種性質(zhì)上的飛躍,使 vb 既是一個(gè) ide,又 成長(zhǎng)成一個(gè)新的程序設(shè)計(jì)語(yǔ)言。mfc 同 vc+集成的 vcl 一樣是一個(gè)非外掛式的軟件包 類庫(kù),只不過(guò) mfc 類是微軟為 vc+專配的7。

31、 1.4 小結(jié) 當(dāng)今時(shí)代,老舊的圖書(shū)管理方法已不能滿足人們的日常需求。計(jì)算機(jī)的快速發(fā)展迫 切需要計(jì)算機(jī)管理系統(tǒng)對(duì)圖書(shū)進(jìn)行管理。 為達(dá)到圖書(shū)信息化管理的目的,鑒于 vc+、mfc 和 sql server 的特點(diǎn),本課題選 用了 vc+ + sql server 作為課題設(shè)計(jì)的圖書(shū)管理系統(tǒng)的開(kāi)發(fā)方式。 第第 2 2 章章需求分析和概要設(shè)計(jì)需求分析和概要設(shè)計(jì) 本系統(tǒng)的目標(biāo)是利用編程工具實(shí)現(xiàn)圖書(shū)管理的功能。具體而言,需要實(shí)現(xiàn)讀者信息 處理功能,圖書(shū)信息處理功能,借閱圖書(shū)以及查詢功能,基礎(chǔ)信息設(shè)置功能,數(shù)據(jù)庫(kù)備 份和恢復(fù)等各方面的管理功能,從而使工作人員能夠高效和便捷地管理圖書(shū)和讀者的信 息,統(tǒng)一管理

32、讀者的相關(guān)借閱信息,記錄日常借閱信息,并通過(guò)數(shù)據(jù)庫(kù)安全地管理這些 信息。 2.1 圖書(shū)管理系統(tǒng)概述 為了圖書(shū)館能更好地適應(yīng)讀者的借閱需求,該系統(tǒng)針對(duì)高校圖書(shū)管理的內(nèi)容復(fù)雜, 涉及各種圖書(shū)、讀者、借閱事項(xiàng)等管理,數(shù)據(jù)量龐大,是高校圖書(shū)館管理的一項(xiàng)繁重任 務(wù),從而設(shè)計(jì)該系統(tǒng)對(duì)圖書(shū)借閱進(jìn)行管理,實(shí)現(xiàn)圖書(shū)館管理的數(shù)字化。方便管理人員對(duì) 大量圖書(shū)的管理和日常借閱信息的記錄與統(tǒng)計(jì)。使得高校圖書(shū)館的工作效率大大提高。 在開(kāi)發(fā)組織資源時(shí)應(yīng)以實(shí)際情況為依據(jù),使其能夠方便、快捷、安全地處理日常圖書(shū)館 管理工作,使讀者擁有一個(gè)優(yōu)良的借閱圖書(shū)的環(huán)境8。 2.2 圖書(shū)管理系統(tǒng)目標(biāo) 圖書(shū)管理系統(tǒng)系統(tǒng)中,需要管理各個(gè)方面的

33、資源,實(shí)現(xiàn)信息的管理,具體每個(gè)實(shí)現(xiàn) 的目標(biāo)如下: (1)圖書(shū)借閱管理:借書(shū)及借書(shū)查詢;還書(shū)及還書(shū)查詢。 (2)書(shū)庫(kù)管理:錄入新書(shū)信息;圖書(shū)查詢;圖書(shū)掛失。 (3)讀者管理:錄入新讀者信息;讀者信息查詢;讀者注銷。 (4)數(shù)據(jù)庫(kù)管理:數(shù)據(jù)庫(kù)信息備份和恢復(fù)。 (5)基礎(chǔ)數(shù)據(jù)設(shè)置:罰款參數(shù)設(shè)置;圖書(shū)可借閱天數(shù)設(shè)置;讀者可借冊(cè)數(shù)設(shè)置。 2.3 可行性研究 可行性研究的目的:使用最小的代價(jià)在盡可能短的時(shí)間里確定問(wèn)題是否能解決,通 過(guò)復(fù)雜系統(tǒng)的規(guī)模與目標(biāo)的探討,在研究與此類似的系統(tǒng)后,我們具體從下面三個(gè)方面 考慮。 2.3.1 技術(shù)上的可行性 此系統(tǒng)要求用 vc+ 6.0 開(kāi)發(fā),作為一種現(xiàn)代的編程語(yǔ)言,提

34、供了完善的指令控制語(yǔ) 句、類與對(duì)象的支持及豐富的數(shù)據(jù)類型,給開(kāi)發(fā)高性能系統(tǒng)提供了保障。為開(kāi)發(fā)滿足客 戶要求的系統(tǒng),保證了代碼的模塊化要求,而代碼模塊化的提高,有利于以后對(duì)新系統(tǒng) 的擴(kuò)展與修改。 sql server2000 作為本系統(tǒng)的數(shù)據(jù)庫(kù),它是一個(gè)大型的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(dbms), 是一個(gè)支持多用戶的數(shù)據(jù)庫(kù),具有非常強(qiáng)大的關(guān)系數(shù)據(jù)庫(kù)創(chuàng)建、開(kāi)發(fā)、設(shè)計(jì)及管理功能, 適用于大中規(guī)模的數(shù)據(jù)量需求。 綜上所述,本系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)在技術(shù)上和硬件設(shè)備上的條件都是滿足的,因此在 技術(shù)上是可行的。 2.3.2 經(jīng)濟(jì)上的可行性 現(xiàn)在,計(jì)算機(jī)的價(jià)格已經(jīng)十分低廉,性能卻有了長(zhǎng)足的進(jìn)步。而本系統(tǒng)的開(kāi)發(fā),為 高校

35、圖書(shū)館的工作效率帶來(lái)了一個(gè)質(zhì)的飛躍,主要表現(xiàn)有以下幾個(gè)方面: 第一,本系統(tǒng)的運(yùn)行可以代替人工進(jìn)行許多繁雜的勞動(dòng); 第二,本系統(tǒng)的運(yùn)行可以節(jié)省許多資源; 第三,本系統(tǒng)的運(yùn)行可以大大的提高高校圖書(shū)館的工作效率; 第四,本系統(tǒng)可以數(shù)據(jù)庫(kù)文檔更加安全,等等。 最后,本人在開(kāi)發(fā)前,系統(tǒng)學(xué)習(xí)了 vc+和 sql server2000 的相關(guān)內(nèi)容,所以從人 力、物力、財(cái)力方面都是可行的。 2.3.3 操作可行性 本系統(tǒng)為一個(gè)小型的高校圖書(shū)管理系統(tǒng),所耗費(fèi)的資源非常小,高校的電腦無(wú)論是 硬件還是軟件都能夠滿足條件。系統(tǒng)的交互界面完全是 windows 可視化操作環(huán)境,工作 人員稍加培訓(xùn)即可使用。因此本系統(tǒng)在運(yùn)

36、行上是可行的。 2.4 文件組成說(shuō)明 debug:存放系統(tǒng)編譯與連接需要的相關(guān)文件。 res:存放在設(shè)計(jì)該系統(tǒng)界面時(shí)用到的圖片。 database:存放 sql server 數(shù)據(jù)庫(kù)備份文件。 2.5 系統(tǒng)概要設(shè)計(jì) 本系統(tǒng)共分為讀者管理模塊、圖書(shū)管理模塊、借閱管理模塊、數(shù)據(jù)庫(kù)管理模塊、基 礎(chǔ)設(shè)置模塊和系統(tǒng)模塊六部分,其中系統(tǒng)模塊是關(guān)于用戶登陸和退出系統(tǒng)的,如圖 2-1 所 示: 用戶登錄用戶登錄 書(shū)庫(kù)管理書(shū)庫(kù)管理 模塊模塊 借閱管理借閱管理 模塊模塊 讀者管理讀者管理 模塊模塊 基礎(chǔ)數(shù)據(jù)基礎(chǔ)數(shù)據(jù) 設(shè)置模塊設(shè)置模塊 數(shù)據(jù)庫(kù)管理數(shù)據(jù)庫(kù)管理 模塊模塊 借書(shū)和還書(shū)借書(shū)和還書(shū) 借書(shū)和還書(shū)記錄查詢借書(shū)和還

37、書(shū)記錄查詢 圖書(shū)查詢圖書(shū)查詢 圖書(shū)掛失圖書(shū)掛失 數(shù)據(jù)庫(kù)信息備份數(shù)據(jù)庫(kù)信息備份 數(shù)據(jù)庫(kù)信息數(shù)據(jù)庫(kù)信息恢復(fù)恢復(fù) 錄入新書(shū)信息錄入新書(shū)信息 讀者信息查詢讀者信息查詢 讀者注銷讀者注銷 錄入新讀者信息錄入新讀者信息 讀者可借冊(cè)數(shù)設(shè)置讀者可借冊(cè)數(shù)設(shè)置 罰款參數(shù)設(shè)置罰款參數(shù)設(shè)置 數(shù) 據(jù) 庫(kù) 圖 2-1 高校圖書(shū)管理系統(tǒng)功能模塊圖 2.5.1 圖書(shū)管理模塊 該模塊提供圖書(shū)入庫(kù)、圖書(shū)查詢、圖書(shū)掛失的功能。 圖書(shū)入庫(kù)完成功能:將新進(jìn)的圖書(shū)的書(shū)名,作者,出版社,價(jià)格,數(shù)量等信息添加 到數(shù)據(jù)庫(kù)的圖書(shū)表中,并由編號(hào)自動(dòng)排列,以供讀者借閱。 圖書(shū)查詢完成功能:按照?qǐng)D書(shū)編號(hào)、圖書(shū)名、作者或出版社來(lái)查詢相關(guān)圖書(shū)信息, 并以

38、列表的形式全部顯示出來(lái)。 圖書(shū)掛失完成功能:首先查詢借閱表里面是否有該讀者的借閱記錄,如果沒(méi)有借閱 記錄,給出相關(guān)提示;如果有將該書(shū)先還書(shū),然后再刪除這本書(shū)相關(guān)信息。 2.5.2 讀者管理模塊 該模塊提供新讀者登記、讀者信息查詢、讀者注銷功能。 讀者登記完成功能:將新讀者的姓名,性別,讀者類型,所屬部門(mén),電話,地址等 信息添加到數(shù)據(jù)庫(kù)的讀者表中,并由編號(hào)自動(dòng)排列,以供以后借閱圖書(shū)是使用。 讀者查詢完成功能:按照讀者編號(hào)、姓名、所屬部門(mén)或讀者類型來(lái)查詢相關(guān)的讀者 信息,并以列表的形式全部顯示出來(lái)。 讀者注銷完成功能:對(duì)已經(jīng)將書(shū)全部歸還的讀者刪除。 2.5.3 圖書(shū)借閱管理模塊 該模塊是日常工作中

39、最常用的部分,它提供借書(shū)及借書(shū)查詢、還書(shū)及還書(shū)查詢功能。 借書(shū)完成功能:根據(jù)讀者編號(hào)和圖書(shū)編號(hào)查詢?cè)搱D書(shū)是否還有庫(kù)存。如果沒(méi)有庫(kù)存, 則給出相關(guān)提示信息;如果還有庫(kù)存則在借閱列表里面插入一條借閱記錄,系統(tǒng)并自動(dòng) 添加借閱時(shí)間和操作員用戶名,并將該借閱圖書(shū)的藏書(shū)數(shù)量減一。 還書(shū)完成功能:根據(jù)讀者編號(hào)和圖書(shū)編號(hào)查詢借閱表里的記錄。系統(tǒng)自動(dòng)檢查該書(shū) 是否超過(guò)借閱期限,如果超過(guò)借閱期限則根據(jù)天數(shù)和相關(guān)罰款設(shè)置計(jì)算罰金,并將該記 錄添加到數(shù)據(jù)庫(kù)的還書(shū)表中,在借閱表中刪除該記錄。 借書(shū)查詢完成功能:按照讀者編號(hào)、圖書(shū)編號(hào)或操作員來(lái)查詢相關(guān)的借書(shū)信息,并 以列表的形式全部顯示出來(lái)。 還書(shū)查詢完成功能:按照讀

40、者編號(hào)或圖書(shū)編號(hào)來(lái)查詢相關(guān)的還書(shū)信息,并以列表的 形式全部顯示出來(lái)。 2.5.4 數(shù)據(jù)庫(kù)管理模塊 該模塊提供數(shù)據(jù)庫(kù)信息備份和恢復(fù)功能,以保障數(shù)據(jù)的安全性。 數(shù)據(jù)庫(kù)備份完成功能:將數(shù)據(jù)庫(kù)備份到指定的地方。 數(shù)據(jù)庫(kù)恢復(fù)完成功能:從指定的地方將數(shù)據(jù)庫(kù)恢復(fù)。 2.5.5 基礎(chǔ)數(shù)據(jù)設(shè)置模塊 該模塊提供罰款參數(shù)設(shè)置、讀者可借冊(cè)數(shù)設(shè)置。 罰款參數(shù)設(shè)置完成功能:可以設(shè)置如果超過(guò)借閱期限,每天處罰的金額數(shù)目。 讀者可借冊(cè)書(shū)設(shè)置完成功能:可以根據(jù)讀者類型設(shè)置可借閱的數(shù)目。 2.5.6 系統(tǒng)模塊 該模塊提供用戶管理、注銷/重新登陸系統(tǒng)、退出系統(tǒng)的功能。 用戶管理完成功能:對(duì)用戶的用戶名的增加、刪除、修改。 注銷/重

41、新登陸系統(tǒng)完成功能:注銷當(dāng)前用戶,進(jìn)入登錄窗口等待重新登陸。 退出系統(tǒng)的完成功能:退出并關(guān)閉所有系統(tǒng)資源。 2.6 小結(jié) 本章簡(jiǎn)要闡述了高校圖書(shū)管理系統(tǒng)開(kāi)發(fā)的需求分析和概要設(shè)計(jì),進(jìn)行了系統(tǒng)的可行 性研究,同時(shí)給出了圖書(shū)管理系統(tǒng)功能模塊圖,為后續(xù)的開(kāi)發(fā)工作做好準(zhǔn)備。 第第 3 3 章章數(shù)據(jù)庫(kù)的創(chuàng)建及連接數(shù)據(jù)庫(kù)的創(chuàng)建及連接 數(shù)據(jù)庫(kù)設(shè)計(jì)(database design)是指根據(jù)用戶的需求,在某一具體的數(shù)據(jù)庫(kù)管理系統(tǒng)上, 設(shè)計(jì)數(shù)據(jù)庫(kù)的結(jié)構(gòu)和建立數(shù)據(jù)庫(kù)的過(guò)程。 3.1 數(shù)據(jù)庫(kù)需求分析 用戶的需求具體體現(xiàn)在各種信息的提供、保存、更新和查詢方面,這就要求數(shù)據(jù)庫(kù) 結(jié)構(gòu)能滿足各種信息的輸入和輸出。收集基本數(shù)據(jù)、

42、數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)處理的流程,組成 一份詳盡的數(shù)據(jù)字典,為后面的具體設(shè)計(jì)打下基礎(chǔ)。 通過(guò)高校圖書(shū)管理系統(tǒng)功能的分析,針對(duì)一般圖書(shū)管理系統(tǒng),總結(jié)出系統(tǒng)數(shù)據(jù)流模 型如圖 3-1 所示: 管理員 數(shù)據(jù)庫(kù) 管理系統(tǒng) 訪問(wèn)訪問(wèn) 響應(yīng)響應(yīng) 圖 3-1 頂層數(shù)據(jù)流圖 該管理系統(tǒng)中,共有兩個(gè)實(shí)體:讀者和圖書(shū)。 系統(tǒng)的對(duì)應(yīng)實(shí)體-關(guān)系圖(e-r 圖)如圖 3-2 所示: 讀者 圖書(shū) 借閱圖書(shū)還書(shū) n m m n 讀者編號(hào) 讀者姓名性別讀者類別 當(dāng)前借閱量 圖書(shū)編號(hào) 書(shū)名 作者 價(jià)格 圖書(shū)總量 當(dāng)前庫(kù)存量 借閱時(shí)間 操作員 操作員 還書(shū)時(shí)間 罰金 圖 3-2系統(tǒng) e-r 圖 通過(guò)上述數(shù)據(jù)流圖和 e-r 圖的分析和需求總

43、結(jié),設(shè)計(jì)如下的相關(guān)數(shù)據(jù)內(nèi)容和數(shù)據(jù)項(xiàng)。 讀者信息,包括數(shù)據(jù)項(xiàng):讀者編號(hào)、姓名、性別、登記日期、讀者類型、當(dāng)前借閱 量、所屬部門(mén)、電話、地址、備注; 圖書(shū)信息,包括數(shù)據(jù)項(xiàng):圖書(shū)編號(hào)、書(shū)名、作者、出版社、價(jià)格、入庫(kù)時(shí)間、圖書(shū) 總量、當(dāng)前庫(kù)存量、備注; 借閱信息,包括數(shù)據(jù)項(xiàng):讀者編號(hào)、圖書(shū)編號(hào)、借書(shū)時(shí)間、操作員; 還書(shū)信息,包括數(shù)據(jù)項(xiàng):讀者編號(hào)、圖書(shū)編號(hào)、借書(shū)時(shí)間、還書(shū)時(shí)間、操作員、罰 金; 管理員信息,包括數(shù)據(jù)項(xiàng):用戶名、密碼; 讀者類型信息,包括數(shù)據(jù)項(xiàng):讀者類型、可借冊(cè)數(shù)。 3.2 數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì) 在上述的數(shù)據(jù)內(nèi)容和數(shù)據(jù)項(xiàng)基礎(chǔ)上,就可以設(shè)計(jì)出能夠滿足用戶需求的各種實(shí)體及 其關(guān)系,為后面的邏輯結(jié)

44、構(gòu)設(shè)計(jì)打下基礎(chǔ)。這些實(shí)體包含各種具體信息,通過(guò)相互之間 的作用形成數(shù)據(jù)的流動(dòng)。 3.3 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì) 數(shù)據(jù)庫(kù)概念結(jié)構(gòu)設(shè)計(jì)完畢后,需要將上面的數(shù)據(jù)庫(kù)概念結(jié)構(gòu)轉(zhuǎn)化為某種數(shù)據(jù)庫(kù)系統(tǒng) 所支持的實(shí)際數(shù)據(jù)模型,也就是數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)。 這里所使用的是 sql server2000 數(shù)據(jù)庫(kù),高校圖書(shū)管理系統(tǒng)中相關(guān)表的設(shè)計(jì)結(jié)果如 下。每個(gè)表格表示數(shù)據(jù)庫(kù)中的一個(gè)表。 表 3-1 為讀者信息表,存儲(chǔ)系統(tǒng)中讀者信息包括十個(gè)主要字段,分別是讀者編號(hào)、姓 名、性別、登記日期、讀者類型、當(dāng)前借閱量、所屬部門(mén)、電話、地址和備注,其中讀 者編號(hào)是主鍵,唯一標(biāo)識(shí)一位讀者9。 表 3-1 讀者信息表(reader) 列名列

45、名數(shù)據(jù)類型數(shù)據(jù)類型字段大小字段大小默認(rèn)值默認(rèn)值說(shuō)明說(shuō)明 readernovarchar20無(wú)讀者編號(hào) namevarchar50無(wú)讀者姓名 passwordvarchar10000000讀者密碼 sex varchar 2無(wú)性別 registerdatetime8無(wú)登記日期 typevarchar12無(wú)讀者類型 departmentvarchar50無(wú)所屬部門(mén) nowborrowint4無(wú)當(dāng)前借閱量 telvarchar50無(wú)電話 adressvarchar50無(wú)地址 othervarchar100無(wú)備注 表 3-2 為圖書(shū)信息表,存儲(chǔ)圖書(shū)相關(guān)信息,包括九個(gè)主要字段,分別是圖書(shū)編號(hào)、書(shū) 名、作

46、者、出版社、價(jià)格、入庫(kù)時(shí)間、圖書(shū)總量、當(dāng)前庫(kù)存量和備注,其中圖書(shū)編號(hào)是 主鍵,唯一標(biāo)識(shí)一種圖書(shū)。 表 3-2 圖書(shū)信息表(book) 列名列名數(shù)據(jù)類型數(shù)據(jù)類型字段大小字段大小默認(rèn)值默認(rèn)值說(shuō)明說(shuō)明 booknovarchar20無(wú)圖書(shū)編號(hào) booknamevarchar50無(wú)書(shū)名 booktypevarchar20無(wú)圖書(shū)類型 writervarchar50無(wú)作者 pressvarchar50無(wú)出版社 pricefloat8無(wú)價(jià)格 inlibrarydatetime8無(wú)入庫(kù)時(shí)間 totalamountint4無(wú)圖書(shū)總量 nowamountint4無(wú)當(dāng)前庫(kù)存 量 othervarchar100無(wú)備注

47、 表 3-3 為借閱信息表,存儲(chǔ)借閱信息,包括四個(gè)字段:讀者編號(hào)、圖書(shū)編號(hào)、借書(shū)時(shí) 間、操作員。其中讀者編號(hào)、圖書(shū)編號(hào)和借書(shū)時(shí)間共同作為主鍵,唯一標(biāo)識(shí)一條借閱記 錄。 表 3-3 借閱表(borrow) 列名列名數(shù)據(jù)類型數(shù)據(jù)類型字段大小字段大小默認(rèn)值默認(rèn)值說(shuō)明說(shuō)明 readernovarchar20無(wú)讀者編號(hào) booknovarchar20無(wú)圖書(shū)編號(hào) borrowtimedatetime8無(wú)借書(shū)時(shí)間 usernamevarchar20無(wú)操作員 表 3-4 為還書(shū)信息表,存儲(chǔ)還書(shū)的信息,包括六個(gè)字段,分別是讀者編號(hào)、圖書(shū)編號(hào)、 借書(shū)時(shí)間、還書(shū)時(shí)間、操作員和罰金。其中還書(shū)時(shí)間作為主鍵,唯一標(biāo)識(shí)一條

48、還書(shū)記錄。 表 3-4 還書(shū)表(return) 列名列名數(shù)據(jù)類型數(shù)據(jù)類型字段大小字段大小默認(rèn)值默認(rèn)值說(shuō)明說(shuō)明 readernovarchar20無(wú)讀者編號(hào) booknovarchar20無(wú)圖書(shū)編號(hào) returntimedatetime8無(wú)還書(shū)時(shí)間 borrowtimedatetime8無(wú)借書(shū)時(shí)間 usernamevarchar20無(wú)操作員 punishfloat8無(wú)罰金 表 3-5 為管理員信息表,存儲(chǔ)管理員的信息,包括兩個(gè)字段,分別是用戶名和密碼。 其中用戶名作為主鍵,唯一標(biāo)識(shí)一個(gè)管理員。 表 3-5 管理員信息表(manager) 列名列名數(shù)據(jù)類型數(shù)據(jù)類型字段大小字段大小默認(rèn)值默認(rèn)值說(shuō)明說(shuō)

49、明 usernamevarchar20無(wú)用戶名 passwordvarchar16無(wú)密碼 表 3-6 為讀者類型信息表,存儲(chǔ)讀者類型可借冊(cè)數(shù)的信息,包括兩個(gè)字段,分別是讀 者類型和可借冊(cè)數(shù)。其中讀者類型作為主鍵,唯一標(biāo)識(shí)一個(gè)讀者類型。 表 3-6 讀者類型信息表(typeset) 列名列名數(shù)據(jù)類型數(shù)據(jù)類型字段大小字段大小默認(rèn)值默認(rèn)值說(shuō)明說(shuō)明 typevarchar12無(wú)讀者類型 borrowtotalint4無(wú)可借冊(cè)數(shù) borrowdaysint無(wú)可借天數(shù) 3.4 小結(jié) 本章簡(jiǎn)要介紹了系統(tǒng)開(kāi)發(fā)的數(shù)據(jù)庫(kù)設(shè)計(jì)工作,并且給出頂層數(shù)據(jù)流圖、e-r 圖和關(guān)鍵 表,為后續(xù)開(kāi)發(fā)工作奠定了基礎(chǔ)。 第第 4 4

50、 章章系統(tǒng)詳細(xì)設(shè)計(jì)系統(tǒng)詳細(xì)設(shè)計(jì) 根據(jù)概要設(shè)計(jì),系統(tǒng)分為六個(gè)部分:讀者管理模塊、圖書(shū)管理模塊、借閱管理模塊、 數(shù)據(jù)庫(kù)管理模塊、基礎(chǔ)設(shè)置模塊和系統(tǒng)模塊 4.1 系統(tǒng)管理 4.1.1 登錄系統(tǒng) 登陸界面如圖 4-1 所示: 圖 4-1 系統(tǒng)登錄界面 當(dāng)用戶點(diǎn)擊了登錄按鈕時(shí),系統(tǒng)就要檢查輸入信息的正確性:如果用戶沒(méi)有輸入用 戶名,則會(huì)彈出對(duì)話框“請(qǐng)輸入用戶名!” ,并把焦點(diǎn)設(shè)置在用戶名編輯框內(nèi);如果用戶 沒(méi)有輸入密碼,則會(huì)彈出對(duì)話框“請(qǐng)輸入密碼!” ,并把焦點(diǎn)設(shè)置在密碼編輯框內(nèi);如果 都輸入了,那么根據(jù)單選按鈕的選擇方式,打開(kāi)數(shù)據(jù)庫(kù)的 manager 表或 reader 表,查找 是否有對(duì)應(yīng)的賬戶記錄

51、。如果用戶名或密碼錯(cuò)誤則會(huì)彈出對(duì)話框“用戶名或密碼錯(cuò)誤!” 。 當(dāng)用戶輸入正確的用戶名和密碼后就可以登錄系統(tǒng)了。管理員和讀者登錄系統(tǒng)所擁有的 權(quán)限是不一樣的,讀者只有查詢信息的權(quán)限,可以通過(guò)設(shè)置標(biāo)志變量來(lái)區(qū)別普通讀者和 管理員。這里讀者登錄代碼與管理員登錄代碼類似,故只寫(xiě)出管理員登錄。主要代碼如 下: strsql.format(select * from manager where username=%s and password =%s,m_strusername,m_strpassword); if(!m_record.open(afx_db_use_default_type,strsq

52、l) /打開(kāi)數(shù)據(jù)庫(kù)并查詢?cè)撚?戶名和密碼 messagebox(打開(kāi)數(shù)據(jù)庫(kù)失敗!,數(shù)據(jù)庫(kù)錯(cuò)誤,mb_ok|mb_iconexclamation); return ; if(m_record.getrecordcount()=0)/是否查詢不到指定記錄 m_record.close(); messagebox(用戶名或密碼錯(cuò)誤,請(qǐng)重新輸入!,錯(cuò)誤 ,mb_ok|mb_iconexclamation); m_strpassword.empty(); m_strusername.empty(); m_ctrusername.setfocus(); updatedata(false); return

53、; else ptheapp-m_strusername = m_record.m_username;/用戶名和密碼正確,將用戶 名傳遞給主窗口 ptheapp-isuser=true;/判斷是普通讀者還是管理員的標(biāo)識(shí)變量 m_record.close(); cdialog:onok(); 4.1.2 注銷/重新登陸 當(dāng)用戶想要更換操作員來(lái)管理時(shí),就會(huì)重新彈出登陸對(duì)話框。此時(shí),如果輸入正確的 用戶名和密碼則和普通登錄一樣。不輸入或輸入不正確則不能再進(jìn)入系統(tǒng)。代碼實(shí)現(xiàn)很 簡(jiǎn)單: clogindlg dlg; dlg.domodal();10 就可以完成用戶的注銷。 4.1.3 退出系統(tǒng) 當(dāng)用戶想

54、要退出系統(tǒng)的時(shí)候,則系統(tǒng)即可。因?yàn)閿?shù)據(jù)庫(kù)只有在使用的時(shí)候才打開(kāi)。 使用完畢就立刻關(guān)閉了。這里不需要再次關(guān)閉數(shù)據(jù)庫(kù)。主要代碼實(shí)現(xiàn)如下: if(messagebox(您確認(rèn)退出系統(tǒng)嗎?,提示,mb_okcancel |mb_iconexclamation)=1) cframewnd:onclose(); 這樣退出的時(shí)候系統(tǒng)就會(huì)再次詢問(wèn)用戶用戶是否確定退出系統(tǒng),以免出現(xiàn)誤操作。 4.2 讀者管理 4.2.1 讀者登記 在該部分中,將讀者的各個(gè)信息錄入數(shù)據(jù)庫(kù)并提示登記是否成功。如果在登記的信 息內(nèi)沒(méi)有輸入讀者編號(hào)、姓名或所示部門(mén)這些重要信息,則給出提示,要求輸入。如果 該讀者的編號(hào)已經(jīng)存在則提示“該讀

55、者已存在”并把焦點(diǎn)設(shè)置為讀者編號(hào)的編輯框。界 面如圖 4-2 所示: 圖 4-2 讀者登記 主要代碼實(shí)現(xiàn)如下: void creaderregdlg:onbuttonadd()/讀者登記 if(m_strreaderno.isempty()/判斷讀者重要信息是否為空 messagebox(請(qǐng)輸入讀者編號(hào)!,提示,mb_ok|mb_iconexclamation); m_ctrreaderno.setfocus(); return; if(m_strreadername.isempty() messagebox(請(qǐng)輸入讀者姓名!,提示,mb_ok|mb_iconexclamation); m_c

56、trreadername.setfocus(); return; if(m_strdepartment.isempty() messagebox(請(qǐng)輸入讀者所在部門(mén)!,提示 ,mb_ok|mb_iconexclamation); m_ctrdepartment.setfocus(); return; if(m_readerrecord.getrecordcount()!=0)/判斷讀者是否已存在 m_readerrecord.close(); messagebox(該讀者編號(hào)已經(jīng)存在,請(qǐng)重新輸入!,錯(cuò)誤 ,mb_ok|mb_iconexclamation); m_ctrreaderno.set

57、focus(); return; m_readerrecord.addnew();/添加新的讀者記錄 m_readerrecord.m_readerno=m_strreaderno; m_readerrecord.m_name=m_strreadername; m_readerrecord.update(); m_readerrecord.close();11 messagebox(添加成功!,恭喜,mb_ok|mb_iconexclamation); creaderregdlg:onbuttonclear(); 從而完成讀者登記功能。 4.2.2 讀者查詢 該部分按照讀者編號(hào)、姓名、密碼、部

58、門(mén)或讀者類型來(lái)查詢相關(guān)的讀者信息,并用 列表控件 control list 來(lái)顯示出來(lái)讀者的每一條屬性信息。如果用戶查詢的內(nèi)容為空,則 進(jìn)行相關(guān)提示。由于該列表控件有很強(qiáng)的顯示功能,無(wú)需人為過(guò)多參與。其界面如圖 4-3 所示: 圖 4-3 讀者查詢 主要代碼實(shí)現(xiàn)如下: select=getcheckedradiobutton(idc_radio_no,idc_radio_type);/判斷用戶的查 詢方式 if(select=idc_radio_no)/如果是通過(guò)編號(hào)查詢 if(m_strno.isempty() messagebox(編號(hào)不能為空!,錯(cuò)誤,mb_ok|mb_iconexcla

59、mation); m_ctrno.setfocus(); return ; strsql.format( select * from reader where readerno = %s,m_strno); else if(select=idc_radio_name)/通過(guò)姓名查詢 if(m_strname.isempty() messagebox(姓名不能為空!,錯(cuò)誤 ,mb_ok|mb_iconexclamation); m_ctrname.setfocus(); return ; strsql.format( select * from reader where name = %s,m_

60、strname); else if(select=idc_radio_department)/通過(guò)部門(mén)查詢 if(m_strdepartment) messagebox(部門(mén)不能為空!,錯(cuò)誤 ,mb_ok|mb_iconexclamation); m_ctrdepartment.setfocus(); return ; strsql.format( select * from reader where department = %s,m_strdepartment); else/通過(guò)讀者類型查詢 cstring temp; m_ctrtype.getlbtext(m_ctrtype.getcu

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論