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

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(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è) 論論 文文 高高 校校 圖圖 書書 管管 理理 系系 統(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問題的提出.2 1.1.1 歷史背景.2 1.1.2 發(fā)展現(xiàn)狀.2 1.2系統(tǒng)的開發(fā)模式.3 1.3系統(tǒng)開發(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圖書管理系統(tǒng)概述.6 2.2圖書管理系統(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文件組成說明.7 2.5系統(tǒng)概要設(shè)計(jì).7 2.5.1 圖書管理模塊.8 2.5.2 讀者管理模塊.8 2.5.3 圖書借閱管理模塊.9 2.5.4 數(shù)據(jù)庫管理模塊.9 2.5.5 基礎(chǔ)數(shù)據(jù)設(shè)置模塊.9 2.5.6 系統(tǒng)模塊.9 2.6小結(jié).10 第第 3 3 章章數(shù)據(jù)庫的創(chuàng)建及連接數(shù)據(jù)庫

3、的創(chuàng)建及連接.11 3.1數(shù)據(jù)庫需求分析.11 3.2數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì).12 3.3數(shù)據(jù)庫邏輯結(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圖書管理.23 4.3.1 新書入庫.23 4.3.2 圖書查詢.25 4.3.3 圖書掛失.28 4.4借閱管理.29 4.4.1 借書.30 4.4.2 還書.32 4.4.3 借閱查詢.35

4、 4.4.4 還書查詢.35 4.5數(shù)據(jù)庫管理.35 4.5.1 數(shù)據(jù)庫備份.36 4.5.2 數(shù)據(jù)庫恢復(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 圖書管理.40 5.1.4 借閱管理.40 5.1.5 數(shù)據(jù)庫管理.40 5.1.6 基礎(chǔ)信息設(shè)置.40 5.2小結(jié).40 結(jié)結(jié) 論論.41 致致 謝謝.42 參考文獻(xiàn)參考文獻(xiàn).43 高高 校校 圖圖 書書 管管 理理 系系 統(tǒng)統(tǒng) 專業(yè)班級(jí):07 計(jì)

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

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

7、高圖書館工作質(zhì)量以及改進(jìn)傳 統(tǒng)記賬式借閱方式還發(fā)揮著積極作用。 關(guān)鍵詞關(guān)鍵詞 圖書管理 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)注。信息的主要來源就是書籍,特別是在高校,僅僅課本上的知識(shí)是遠(yuǎn)遠(yuǎn)不夠 的,還得靠課后的不斷學(xué)習(xí)和補(bǔ)充。高校的圖書館就是學(xué)生最主要的學(xué)習(xí)地和知識(shí)的主 要來源地。但由于高校圖書館圖書收藏量大大增加,要隨時(shí)對(duì)館內(nèi)圖書和學(xué)員進(jìn)行管理, 要隨時(shí)更新、修改各種

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

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

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

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

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

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

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

23、vc+和 sql server2000 混合數(shù)據(jù)庫編程模式來開發(fā)一個(gè)高校圖書管理 系統(tǒng)。 1.3 系統(tǒng)開發(fā)工具介紹 1.3.1 vc+ 簡(jiǎn)介 vc+是微軟公司開發(fā)的一個(gè) ide(集成開發(fā)環(huán)境),換句話說,就是使用 c+的一個(gè) 開發(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è)主流的開發(fā)平臺(tái)一直深受編程愛好者的喜愛,但是很多人卻對(duì)它的入 門感到難于上青天,究其原因主要是大家對(duì)它錯(cuò)誤的認(rèn)識(shí)造成的,嚴(yán)格來說 vc+不是門 語言,雖然它和 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ò)展而來的。 vc+應(yīng)用程序的開發(fā)主要有兩種模式:一種是 win api 方式,另一種則是 mfc 方 式。傳統(tǒng)的 win api 開發(fā)方式比較繁瑣,而 mfc 則是對(duì) win api 再次封裝,

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

26、的數(shù)據(jù)庫引擎集成了對(duì) xml 的支持,以可擴(kuò)展、易于使用和安全, 成為建設(shè)大型 web 站點(diǎn)最好的數(shù)據(jù)存儲(chǔ)設(shè)備之一。sql server 2000 的編程模式在很大程 度上與專用于開發(fā) web 應(yīng)用的 windows dna 架構(gòu)相集成。同時(shí),sql server 2000 所攜 帶的諸如英語查詢以及 microsoft 查詢服務(wù)等為開發(fā)的 web 應(yīng)用提供了友好強(qiáng)大的查詢界 面。 2. 可擴(kuò)展性和可用性 為了兼顧各種配置計(jì)算機(jī)的使用,sql server 2000 的數(shù)據(jù)庫引擎可以運(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ù)庫服務(wù)器特性允許用戶在多個(gè)數(shù)據(jù)庫服務(wù)器上水 平劃分?jǐn)?shù)據(jù)表,從而使得服務(wù)器彼此合作提供相似于集群服務(wù)器所能提供的強(qiáng)大性能。 3. 簡(jiǎn)單友好的操作方式 sql server 2000 包含一整套的管理和開發(fā)工具,這些工具都具有非常友好的用戶界 面,在提供強(qiáng)大功能的同時(shí),易于安裝、使用和發(fā)布。用戶可以把更多的精力放在自己 的業(yè)務(wù)問題上,可以非常迅速地建立并發(fā)布強(qiáng)大而復(fù)雜的數(shù)據(jù)庫應(yīng)用系統(tǒng)。 4. 數(shù)據(jù)倉庫支

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

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

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

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

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

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

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

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

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

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

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

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

40、者編號(hào)或圖書編號(hào)來查詢相關(guān)的還書信息,并以列表的 形式全部顯示出來。 2.5.4 數(shù)據(jù)庫管理模塊 該模塊提供數(shù)據(jù)庫信息備份和恢復(fù)功能,以保障數(shù)據(jù)的安全性。 數(shù)據(jù)庫備份完成功能:將數(shù)據(jù)庫備份到指定的地方。 數(shù)據(jù)庫恢復(fù)完成功能:從指定的地方將數(shù)據(jù)庫恢復(fù)。 2.5.5 基礎(chǔ)數(shù)據(jù)設(shè)置模塊 該模塊提供罰款參數(shù)設(shè)置、讀者可借冊(cè)數(shù)設(shè)置。 罰款參數(shù)設(shè)置完成功能:可以設(shè)置如果超過借閱期限,每天處罰的金額數(shù)目。 讀者可借冊(cè)書設(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)要闡述了高校圖書管理系統(tǒng)開發(fā)的需求分析和概要設(shè)計(jì),進(jìn)行了系統(tǒng)的可行 性研究,同時(shí)給出了圖書管理系統(tǒng)功能模塊圖,為后續(xù)的開發(fā)工作做好準(zhǔn)備。 第第 3 3 章章數(shù)據(jù)庫的創(chuàng)建及連接數(shù)據(jù)庫的創(chuàng)建及連接 數(shù)據(jù)庫設(shè)計(jì)(database design)是指根據(jù)用戶的需求,在某一具體的數(shù)據(jù)庫管理系統(tǒng)上, 設(shè)計(jì)數(shù)據(jù)庫的結(jié)構(gòu)和建立數(shù)據(jù)庫的過程。 3.1 數(shù)據(jù)庫需求分析 用戶的需求具體體現(xiàn)在各種信息的提供、保存、更新和查詢方面,這就要求數(shù)據(jù)庫 結(jié)構(gòu)能滿足各種信息的輸入和輸出。收集基本數(shù)據(jù)、

42、數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)處理的流程,組成 一份詳盡的數(shù)據(jù)字典,為后面的具體設(shè)計(jì)打下基礎(chǔ)。 通過高校圖書管理系統(tǒng)功能的分析,針對(duì)一般圖書管理系統(tǒng),總結(jié)出系統(tǒng)數(shù)據(jù)流模 型如圖 3-1 所示: 管理員 數(shù)據(jù)庫 管理系統(tǒng) 訪問訪問 響應(yīng)響應(yīng) 圖 3-1 頂層數(shù)據(jù)流圖 該管理系統(tǒng)中,共有兩個(gè)實(shí)體:讀者和圖書。 系統(tǒng)的對(duì)應(yīng)實(shí)體-關(guān)系圖(e-r 圖)如圖 3-2 所示: 讀者 圖書 借閱圖書還書 n m m n 讀者編號(hào) 讀者姓名性別讀者類別 當(dāng)前借閱量 圖書編號(hào) 書名 作者 價(jià)格 圖書總量 當(dāng)前庫存量 借閱時(shí)間 操作員 操作員 還書時(shí)間 罰金 圖 3-2系統(tǒng) e-r 圖 通過上述數(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)前借閱 量、所屬部門、電話、地址、備注; 圖書信息,包括數(shù)據(jù)項(xiàng):圖書編號(hào)、書名、作者、出版社、價(jià)格、入庫時(shí)間、圖書 總量、當(dāng)前庫存量、備注; 借閱信息,包括數(shù)據(jù)項(xiàng):讀者編號(hào)、圖書編號(hào)、借書時(shí)間、操作員; 還書信息,包括數(shù)據(jù)項(xiàng):讀者編號(hào)、圖書編號(hào)、借書時(shí)間、還書時(shí)間、操作員、罰 金; 管理員信息,包括數(shù)據(jù)項(xiàng):用戶名、密碼; 讀者類型信息,包括數(shù)據(jù)項(xiàng):讀者類型、可借冊(cè)數(shù)。 3.2 數(shù)據(jù)庫概念結(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í)體包含各種具體信息,通過相互之間 的作用形成數(shù)據(jù)的流動(dòng)。 3.3 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì) 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)完畢后,需要將上面的數(shù)據(jù)庫概念結(jié)構(gòu)轉(zhuǎn)化為某種數(shù)據(jù)庫系統(tǒng) 所支持的實(shí)際數(shù)據(jù)模型,也就是數(shù)據(jù)庫的邏輯結(jié)構(gòu)。 這里所使用的是 sql server2000 數(shù)據(jù)庫,高校圖書管理系統(tǒng)中相關(guān)表的設(shè)計(jì)結(jié)果如 下。每個(gè)表格表示數(shù)據(jù)庫中的一個(gè)表。 表 3-1 為讀者信息表,存儲(chǔ)系統(tǒng)中讀者信息包括十個(gè)主要字段,分別是讀者編號(hào)、姓 名、性別、登記日期、讀者類型、當(dāng)前借閱量、所屬部門、電話、地址和備注,其中讀 者編號(hào)是主鍵,唯一標(biāo)識(shí)一位讀者9。 表 3-1 讀者信息表(reader) 列名列

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

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

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

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

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

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

51、。如果用戶名或密碼錯(cuò)誤則會(huì)彈出對(duì)話框“用戶名或密碼錯(cuò)誤!” 。 當(dāng)用戶輸入正確的用戶名和密碼后就可以登錄系統(tǒng)了。管理員和讀者登錄系統(tǒng)所擁有的 權(quán)限是不一樣的,讀者只有查詢信息的權(quán)限,可以通過設(shè)置標(biāo)志變量來區(qū)別普通讀者和 管理員。這里讀者登錄代碼與管理員登錄代碼類似,故只寫出管理員登錄。主要代碼如 下: 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) /打開數(shù)據(jù)庫并查詢?cè)撚?戶名和密碼 messagebox(打開數(shù)據(jù)庫失敗!,數(shù)據(jù)庫錯(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)用戶想要更換操作員來管理時(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ù)庫只有在使用的時(shí)候才打開。 使用完畢就立刻關(guān)閉了。這里不需要再次關(guān)閉數(shù)據(jù)庫。主要代碼實(shí)現(xiàn)如下: if(messagebox(您確認(rèn)退出系統(tǒng)嗎?,提示,mb_okcancel |mb_iconexclamation)=1) cframewnd:onclose(); 這樣退出的時(shí)候系統(tǒng)就會(huì)再次詢問用戶用戶是否確定退出系統(tǒng),以免出現(xiàn)誤操作。 4.2 讀者管理 4.2.1 讀者登記 在該部分中,將讀者的各個(gè)信息錄入數(shù)據(jù)庫并提示登記是否成功。如果在登記的信 息內(nèi)沒有輸入讀者編號(hào)、姓名或所示部門這些重要信息,則給出提示,要求輸入。如果 該讀者的編號(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)輸入讀者所在部門!,提示 ,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、門或讀者類型來查詢相關(guān)的讀者信息,并用 列表控件 control list 來顯示出來讀者的每一條屬性信息。如果用戶查詢的內(nèi)容為空,則 進(jìn)行相關(guān)提示。由于該列表控件有很強(qiáng)的顯示功能,無需人為過多參與。其界面如圖 4-3 所示: 圖 4-3 讀者查詢 主要代碼實(shí)現(xiàn)如下: select=getcheckedradiobutton(idc_radio_no,idc_radio_type);/判斷用戶的查 詢方式 if(select=idc_radio_no)/如果是通過編號(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)/通過姓名查詢 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)/通過部門查詢 if(m_strdepartment) messagebox(部門不能為空!,錯(cuò)誤 ,mb_ok|mb_iconexclamation); m_ctrdepartment.setfocus(); return ; strsql.format( select * from reader where department = %s,m_strdepartment); else/通過讀者類型查詢 cstring temp; m_ctrtype.getlbtext(m_ctrtype.getcu

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論