圖書管理系統(tǒng)畢業(yè)論文_第1頁
圖書管理系統(tǒng)畢業(yè)論文_第2頁
圖書管理系統(tǒng)畢業(yè)論文_第3頁
圖書管理系統(tǒng)畢業(yè)論文_第4頁
圖書管理系統(tǒng)畢業(yè)論文_第5頁
已閱讀5頁,還剩43頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、畢 業(yè) 設(shè) 計(jì) (論 文 中 文 摘 要圖書管理系統(tǒng)作 者:指導(dǎo)老師:摘要 :圖書管理系統(tǒng)是典型的計(jì)算機(jī)信息管理系統(tǒng) (MIS,其開發(fā)主要包括后臺(tái) 數(shù)據(jù)庫的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個(gè)方面。 對(duì)于前者要求建立起數(shù) 據(jù)一致性和完整性強(qiáng)、 數(shù)據(jù)安全性好的庫。 而對(duì)于后者則要求應(yīng)用程序功能完備 , 易使用等特點(diǎn)。本管理系統(tǒng)包括了系統(tǒng)登錄、讀者管理、書籍管理、借閱信息管 理四個(gè)總的功能塊。 在各個(gè)功能塊中又具體包括了讀者種類信息管理、 讀者信息 管理、書籍類別管理、書籍信息管理、借書信息管理、還書信息管理功能。使用 戶方便的對(duì)圖書館的信息進(jìn)行管理,為讀者借閱還書的節(jié)省了大量的時(shí)間。 經(jīng)過分析

2、, 我使用 MICROSOFT公司的 VISUAL BASIC開發(fā)工具 , 利用其提供的 各種面向?qū)ο蟮拈_發(fā)工具 , 尤其是數(shù)據(jù)窗口這一功能方便而簡潔操縱數(shù)據(jù)庫的智 能化對(duì)象 , 首先在短時(shí)間內(nèi)建立系統(tǒng)應(yīng)用原型 , 然后 , 對(duì)初始原型系統(tǒng)進(jìn)行需求迭 代 , 不斷修正和改進(jìn) , 直到形成用戶滿意的可行系統(tǒng)。關(guān)鍵字:圖書管理系統(tǒng)、數(shù)據(jù)庫、 VISUAL BASIC、窗體、 SOL2000。AbstractAbstract:Books management system is the typical computer information management system (MIS, its

3、development mainly includes the backstage database the establishment and the maintenance as well as front end the application procedure development two aspects. Establishes the data uniformity and the integrity regarding former request is strong, the data security good storehouse. But requests the a

4、pplication procedure function regarding latter completely, is easy to use and so on the characteristic. This management system management system included the system to register, the reader manages, the books management, borrows the information management four always functions blocks. Specifically in

5、cluded the reader type information management, the reader information management, the books category management, the books information management in each function block, has borrowed the book information management, also the book information management function. Causes the user convenience to carry

6、on the management to the library information, borrowed also the book for the reader to save the massive time.After the analysis, I use MICROSOFT Corporation VISUAL the BASIC development kit, uses each kind of object-oriented development kit which it provides, the data window this function convenienc

7、e but succinctly operates the database in particular the intellectualized object, first establishes the system application prototype in the short time, then, carries on the demand iteration to the initial prototype system, unceasingly revises and the improvement, until forms user satisfaction the fe

8、asible system.Key words :books management system management system, database, VISUAL BASIC, Window, SOL2000目錄前 言隨著人類社會(huì)的發(fā)展, 人類知識(shí)不斷地增長、 擴(kuò)大。 書籍就漸漸地成為人們 獲取、 增長知識(shí)的主要途徑, 而圖書館就自然而然地在人們的生活中占據(jù)了一定 的位置。在圖書館方面,就必然面臨著一個(gè)問題:怎樣才能科學(xué)、有效的把圖書 館里圖書管理好?又如何知道被借圖書為何人所借?所借圖書什么時(shí)候歸還? 又如何從借書者那里得到圖書的信息。這些問題直接關(guān)系到讀者求知的方便程 度,也關(guān)系到圖

9、書館的發(fā)展。本系統(tǒng)以以上問題為依據(jù), 對(duì)所提問題給予一一的 解決。 在現(xiàn)代社會(huì)中,計(jì)算機(jī)已經(jīng)在各行各業(yè)發(fā)揮著重要的作用,用計(jì)算機(jī)來管 理已經(jīng)成為必然的結(jié)果。圖書館也不例外,在圖書館的管理過程中, 同樣也必需 使用計(jì)算機(jī)來輔助管理。 有了計(jì)算機(jī)的輔助管理, 必然要有一套較完善的計(jì)算機(jī) 處理系統(tǒng)(圖書管理系統(tǒng)來管理圖書,這樣才能科學(xué)、有效的對(duì)圖書進(jìn)行管理 利用圖書管理系統(tǒng)進(jìn)行管理, 能更有效的對(duì)圖書進(jìn)行系統(tǒng)管理, 方便讀者對(duì) 各類圖書的查詢, 同時(shí)也大大提高了辦理借書、 還書手續(xù)方面的工作效率和提高 圖書館的服務(wù)效率,為讀者提供方便。 針對(duì)上述情況, 本人開發(fā)了一套圖書管理 專業(yè)軟件 -圖書管理系

10、統(tǒng),該系統(tǒng)并不針對(duì)某一個(gè)圖書館而開發(fā),所以在小型方 面相對(duì)較廣些。 相對(duì)于同類軟件來說, 該系統(tǒng)功能較齊全, 集合了圖書館從進(jìn)書、 查詢、借書、還書、罰金等多種功能,同時(shí)讀者可以對(duì)圖書的情況有個(gè)具體的了 解, 圖書管理員也可以對(duì)某一圖書的具體情況有個(gè)充分的了解, 對(duì)其圖書管理有 很好的掌握。在操作方面也比較方便,界面也較友好。在數(shù)據(jù)庫方面,該系統(tǒng)采 用 SQL Server2000數(shù)據(jù)庫系統(tǒng),在安全性方面也有了較大的提高。與傳統(tǒng)的手 工作業(yè)相比,它大大提高了工作效率,而且系統(tǒng)采用人機(jī)對(duì)話方式,菜單提示, 界面友好、操作簡單,實(shí)現(xiàn)開架借。第一章 圖書管理信息系統(tǒng)的問題1.1 圖書管理系統(tǒng)的簡介圖

11、書管理系統(tǒng)是針對(duì)圖書館的大量業(yè)務(wù)處理工作而開發(fā)的管理軟件。根據(jù) 用戶的要求,實(shí)現(xiàn)借閱管理、讀者管理、和圖書管理,等幾個(gè)方面的功能。本軟件是為了規(guī)范單位的圖書館日常運(yùn)作,加強(qiáng)圖書借閱的信息管理而開 發(fā)設(shè)計(jì)的。時(shí)間比較倉促,肯定存在許多問題,同時(shí)將邊運(yùn)行邊修改與完善,使 其更好的服務(wù)于圖書館的日常管理,滿足圖書館管理方面的各種需要。本軟件界面友好,操作簡單,小巧實(shí)用,運(yùn)行穩(wěn)定,自動(dòng)化程度較高,具 備多種功能,能滿足一般小型圖書室的日常管理需要??蛇M(jìn)行書籍、讀者、借書 和還書等信息的錄入、修改與刪除,同時(shí)提供靈活豐富的查詢, 更好是對(duì)圖書的 具體行蹤能提供跟準(zhǔn)確的位置等功能, 方便統(tǒng)計(jì)匯總。 對(duì)借書

12、者所借書是否被借, 被何人所借,借書者的姓名、地址、聯(lián)系方式,何時(shí)歸還等等經(jīng)查詢即可知曉。 本系統(tǒng)以此為目的,開發(fā)了相應(yīng)的數(shù)據(jù)庫與工作界面,以完成以上功能。1.2 圖書理理系統(tǒng)的用戶需求圖書管理系統(tǒng)是針對(duì)圖書館的大量業(yè)務(wù)處理工作用計(jì)算機(jī)進(jìn)行全面現(xiàn)代化 管理 . 主要包括讀者管理、書籍管理、和借閱信息管理, 等幾個(gè)方面的功能 , 以 實(shí)現(xiàn)用戶方便的借書 . 還書 . 查詢所需書籍等需求。具體系統(tǒng)功能需求描述(1讀者管理讀者管理可分為讀者種類管理和讀者信息管理,可完成對(duì)讀者種類 的添加 . 修改 . 刪除功能;以及完成對(duì)讀者信息的添加 . 修改 . 刪除 . 查詢功 能 。(2 書籍管理書籍管理包

13、括書籍類別管理和書籍信息管理,可完成對(duì)書籍類別的 添加 . 修改 . 刪除功能;以及完成對(duì)書籍信息的添加 . 修改 . 刪除 . 查詢功 能。(3 借閱信息管理借閱信息管理包括借書信息管理和還書信息管理,借書信息管理要完 成對(duì)所借書籍的添加 . 修改 . 刪除 . 查詢功能;還書信息管理要完成對(duì)所還書籍的 添加 . 修改 . 刪除功能。(4 數(shù)據(jù)備份管理管理員能對(duì)數(shù)據(jù)進(jìn)行數(shù)據(jù)備份與數(shù)據(jù)恢復(fù)功能。1.3 圖書管理信息系統(tǒng)功能分析系統(tǒng)開發(fā)的總?cè)蝿?wù)是實(shí)現(xiàn) 圖書館管理信息關(guān)系的系統(tǒng)化、規(guī)范化和自 動(dòng)化。 系統(tǒng)功能分析是在系統(tǒng)開發(fā)的總體任務(wù)的基礎(chǔ)上完成的, 本系統(tǒng)的需要完 成功能主要有:有關(guān)讀者種類標(biāo)準(zhǔn)

14、的制定、 種類信息的輸入, 包括種類編號(hào)、 種類名稱、 借書數(shù)量、借書期限、有效期限等。讀者種類信息的修改,包括類別名稱,借書數(shù)量,借書期限,有效期限 等。讀者基本信息的輸入, 包括讀者編號(hào)、 讀者姓名、 讀者種類、 讀者性別、 工作單位、家庭住址、電話號(hào)碼、辦證日期等。書籍類別標(biāo)準(zhǔn)的制定、類別信息的輸入,包括類別編號(hào)、類別名稱。 書籍類別的修改,包括類別編號(hào)、類別名稱。書籍信息的輸入,包括書籍編號(hào)、書籍名稱、書籍類別、作者姓名、出 版社名稱、出版日期、書籍價(jià)格、登記日期、是否借出等。書籍信息的查詢,包括書籍編號(hào)、書籍名稱、書籍類別、作者姓名、出 版社名稱、出版日期、書籍價(jià)格、登記日期等。書籍

15、信息的修改, 包括借書信息編號(hào)、 讀者編號(hào)、 讀者姓名、 書籍編號(hào)、 書籍名稱、借書日期、是否借出等。借書信息的查詢、修改,包括借書信息編號(hào)、讀者編號(hào)、讀者姓名、書 籍編號(hào)、書籍名稱、借書日期等。還書信息的輸入, 包括還書信息編號(hào)、 讀者編號(hào)、 讀者姓名、 書籍編號(hào)、 書籍名稱、借書日期、還書日期等。書籍罰金信息的輸入, 包括丟失書籍罰金。 丟失書籍罰金包括書籍編號(hào)、 書籍名稱、書籍價(jià)格和賠償圖書的金額。1.4 圖書管理信息系統(tǒng)功能模塊設(shè)計(jì)對(duì)上述各項(xiàng)功能進(jìn)行集中、 分塊,按照結(jié)構(gòu)化程序設(shè)計(jì)的要求,得到下圖所 示的系統(tǒng)功能模塊圖: 系統(tǒng)功能模塊圖(圖 1-1第二章 圖書管理信息系統(tǒng)數(shù)據(jù)庫的設(shè)計(jì)數(shù)

16、據(jù)庫在信息管理系統(tǒng)中有著很重要的地位, 合理的數(shù)據(jù)庫結(jié)構(gòu)設(shè)計(jì)可以提 高數(shù)據(jù)儲(chǔ)存的效率,保證數(shù)據(jù)的完整和一致, 有利于程序的實(shí)現(xiàn)。 設(shè)計(jì)數(shù)據(jù)庫系 統(tǒng)時(shí)應(yīng)該首先充分了解用戶各個(gè)方面的要求, 包括現(xiàn)有的以及將來可能增加的需 求。數(shù)據(jù)庫設(shè)計(jì)一般包括如下幾個(gè)步驟:數(shù)據(jù)庫需要分析。數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)。數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)。2.1 數(shù)據(jù)庫的需求分析用戶的需求具體體現(xiàn)在各種信息的提供、保存、更新和查詢, 這就要求數(shù)據(jù) 庫結(jié)構(gòu)能充分滿足各種信息的輸出和輸入。 收集基本數(shù)據(jù)、 數(shù)據(jù)結(jié)構(gòu)以及數(shù)據(jù)處 理的流程,組成一份詳盡的數(shù)據(jù)字典,為后面的具體設(shè)計(jì)打下基礎(chǔ)。仔細(xì)分析調(diào)查有關(guān)圖書館管理信息需求的基礎(chǔ)上, 得到下圖所示的

17、本系統(tǒng)所 處理的數(shù)據(jù)流程: 圖書管理信息系統(tǒng)數(shù)據(jù)流程圖(圖 2-1針對(duì)一般的圖書管理信息系統(tǒng)的要求, 通過對(duì)圖書管理工作過程的內(nèi)容和數(shù) 據(jù)流程分析,設(shè)計(jì)如下面所示的數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu):讀者種類信息,包括的數(shù)據(jù)項(xiàng)有:種類編號(hào)、種類名稱、借書數(shù)量、借書期 限、有效期限等。讀者信息,包括的數(shù)據(jù)項(xiàng)有:讀者編號(hào)、讀者姓名、讀者種類、讀者性別、 工作單位、家庭住址、電話號(hào)碼、辦證日期等。書籍類別信息,包括的數(shù)據(jù)項(xiàng)有:類別編號(hào)、類別名稱、關(guān)鍵詞、備注信息 等。書籍信息,包括的數(shù)據(jù)項(xiàng)有:書籍編號(hào)、書籍名稱、書籍類別、作者姓名、 出版社名稱、出版日期、書籍頁數(shù)、關(guān)鍵詞、登記日期等。借閱信息,包括的數(shù)據(jù)項(xiàng)有:借閱信

18、息編號(hào)、讀者編號(hào)、讀者姓名、書籍編 號(hào)、書籍名稱、借書日期、還書日期等。2.2 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)采用 SQL Sever 2000來完成圖書管理信息系統(tǒng)的數(shù)據(jù)庫, 需將上面的數(shù) 據(jù)庫的概念結(jié)構(gòu)轉(zhuǎn)化為 SQL 的數(shù)據(jù)庫所支持的實(shí)際數(shù)據(jù)模型,這也就是數(shù)據(jù)庫 的邏輯結(jié)構(gòu)。圖書管理信息管理系統(tǒng)數(shù)據(jù)庫中的表格的設(shè)計(jì)結(jié)果有以下的表格所表示, 這 些表格表示在數(shù)據(jù)庫中的一個(gè)表:readertypetable 讀者種類信息表表中內(nèi)容有:讀者種類編號(hào)、讀者種類名稱、借書數(shù)量、借書期限、有效期 限。readertable 讀者信息表格表中內(nèi)容有:readertype 中的所有內(nèi)容、讀者編號(hào)、讀者姓名、讀者性別、

19、 電話號(hào)碼、辦證日期、工作單位、家庭住址。booktypetable 書籍類別信息表表中內(nèi)容有:書籍類別編號(hào)、書籍類別名稱、關(guān)鍵詞、 。booktable 書籍信息表表中內(nèi)容有:書籍名稱、書籍類別、作者姓名、出版社名稱、出版日期、書 籍頁數(shù)、登記日期。lendbooktable 借閱信息表表中內(nèi)容有:包括 booktable 表中的書籍名稱、書籍類別、作者姓名、出版 社、書籍備注信息,以及讀者信息中的讀者編號(hào)、讀者姓名、讀者種類、借 書日期。2.3 數(shù)據(jù)庫邏輯結(jié)構(gòu)的實(shí)現(xiàn)數(shù)據(jù)庫設(shè)計(jì)主要是進(jìn)行數(shù)據(jù)庫的邏輯設(shè)計(jì), 即將數(shù)據(jù)按一定的分類、 分組系統(tǒng)和 邏輯層次組織起來, 是面向用戶的。 數(shù)據(jù)庫設(shè)計(jì)時(shí)需

20、要綜合企業(yè)各個(gè)部門的存檔 數(shù)據(jù)和數(shù)據(jù)需求,分析各個(gè)數(shù)據(jù)之間的關(guān)系,按照 DBMS 提供的功能和描述工 具,設(shè)計(jì)出規(guī)模適當(dāng)、正確反映數(shù)據(jù)關(guān)系、數(shù)據(jù)冗余少、存取效率高、能滿足多 種查詢要求的數(shù)據(jù)模型。數(shù)據(jù)庫設(shè)計(jì)的步驟是:(1 數(shù)據(jù)庫結(jié)構(gòu)定義:目前的數(shù)據(jù)庫管理系統(tǒng)(DBMS 有的是支持聯(lián)機(jī)事務(wù) 處理 CLTP (負(fù)責(zé)對(duì)事務(wù)數(shù)據(jù)進(jìn)行采集、處理、存儲(chǔ)的操作型 DBMS ,有的可 支持?jǐn)?shù)據(jù)倉庫、有聯(lián)機(jī)分析處理 CLAP (指為支持決策的制定對(duì)數(shù)據(jù)的一種加工 操作 功能的大型 DBMS , 有的數(shù)據(jù)庫是關(guān)系型的、 有的可支持面向?qū)ο髷?shù)據(jù)庫。 針對(duì)選擇的 DBMS ,進(jìn)行數(shù)據(jù)庫結(jié)構(gòu)定義。(2 數(shù)據(jù)表定義:數(shù)據(jù)

21、表定義指定義數(shù)據(jù)庫中數(shù)據(jù)表的結(jié)構(gòu),數(shù)據(jù)表的邏輯結(jié) 構(gòu)包括:屬性名稱、類型、表示形式、缺省值、校驗(yàn)規(guī)則、是否關(guān)鍵字、可否為 空等。關(guān)系型數(shù)據(jù)庫要盡量按關(guān)系規(guī)范化要求進(jìn)行數(shù)據(jù)庫設(shè)計(jì),但為使效率高, 規(guī)范化程度應(yīng)根據(jù)應(yīng)用環(huán)境和條件來決定。 數(shù)據(jù)表設(shè)計(jì)不僅要滿足數(shù)據(jù)存儲(chǔ)的要 求,還要增加一些如反映有關(guān)信息、操作責(zé)任、中間數(shù)據(jù)的字段或臨時(shí)數(shù)據(jù)表。 (3 存儲(chǔ)設(shè)備和存儲(chǔ)空間組織:確定數(shù)據(jù)的存放地點(diǎn)、 存儲(chǔ)路徑、 存儲(chǔ)設(shè)備等, 備份方案,對(duì)多版本如何保證一致性和數(shù)據(jù)的完整性。(4 數(shù)據(jù)使用權(quán)限設(shè)置:針對(duì)用戶的不同使用要求, 確定數(shù)據(jù)的用戶使用權(quán)限, 確保數(shù)據(jù)安全。(5 數(shù)據(jù)字典設(shè)計(jì):用數(shù)據(jù)字典描述數(shù)據(jù)庫的設(shè)

22、計(jì),便于維護(hù)和修改。第一范式 (first normal form, 簡稱 1st NF就是指在同一表中沒有重復(fù)項(xiàng)出現(xiàn), 如果有則應(yīng)將重復(fù)項(xiàng)去掉。 這個(gè)去掉重復(fù)項(xiàng)的過程就稱之為規(guī)范化處理。 在本文 所討論的開發(fā)方法里, 1st NF實(shí)際上是沒有什么意義的。 因?yàn)槲覀儼匆?guī)范化建立 的指標(biāo)體系和表的過程都自動(dòng)保證了所有表都滿足 1st NF。第二范式 (second normal form,簡稱 2nd NF是指每個(gè)表必須有一個(gè) (而且僅 一個(gè) 數(shù)據(jù)元素為主關(guān)鍵字 (primary key,其它數(shù)據(jù)元素與主關(guān)鍵字一一對(duì)應(yīng)。例 如,在圖 l9.7中如果我們將讀者姓名定義為主關(guān)鍵字 (其它數(shù)據(jù)元素中的

23、記錄數(shù)據(jù)都有可能重名,故不能作為主關(guān)鍵字 ,故只要知道了讀者一個(gè)記錄就知道一 個(gè)圖書的記錄或者是借書的記錄, 就可以唯一地在同一行中找到該姓名的任何一 項(xiàng)具體信息。通常我們稱這種關(guān)系為函數(shù)依賴 (functional depEndence關(guān)系。即表 中其它數(shù)據(jù)元素都依賴于主關(guān)鍵字,或稱該數(shù)據(jù)元素唯一地被主關(guān)鍵字所標(biāo)識(shí)。 本系統(tǒng)的查詢功能等性能都運(yùn)用了第二范式。第三范式 (third normal form ,簡稱 3rd NF 就是指表中的所有數(shù)據(jù)元素不但 要能夠唯一地被主關(guān)鍵字所標(biāo)識(shí), 而且它們之間還必須相互獨(dú)立, 不存在其它的 函數(shù)關(guān)系。也就是說對(duì)于一個(gè)滿足了 2nd NF的數(shù)據(jù)結(jié)構(gòu)來說,

24、表中有可能存在 某些數(shù)據(jù)元素依賴于其它非關(guān)鍵宇數(shù)據(jù)元素的現(xiàn)象,必須加以消除。為防止數(shù)據(jù)庫出現(xiàn)更新異常、插入異常、刪除異常、數(shù)據(jù)冗余太大等現(xiàn)象, 關(guān)系型數(shù)據(jù)庫要盡量按關(guān)系規(guī)范化要求進(jìn)行數(shù)據(jù)庫設(shè)計(jì)。經(jīng)過前面的需求分析和概念結(jié)構(gòu)設(shè)計(jì)以后, 得到數(shù)據(jù)庫的邏輯結(jié)構(gòu)。 然 后用 SQL server 2000 數(shù)據(jù)庫系統(tǒng)中的 SQL 企業(yè)管理器實(shí)現(xiàn)該邏輯結(jié)構(gòu)。 下面是 就用戶表格、讀者種類信息表格、讀者信息表格、書籍類別信息表格的 SQL 語 句舉例如下: readertypetable 讀者種類信息表(圖 2-3 readertable 讀者信息表格(圖 2-4 booktypetable 書籍類別信息

25、表(圖 2-5 bookstable 書籍信息表(圖 2-6 lendbooktable 借閱信息表 (圖 2-7在圖 2-7中如果我們將讀者姓名定義為主關(guān)鍵字 (其它數(shù)據(jù)元素中的記錄數(shù) 據(jù)都有可能重名,故不能作為主關(guān)鍵字 ,故只要知道了讀者一個(gè)記錄就知道一 個(gè)圖書的記錄或者是借書的記錄, 就可以唯一地在同一行中找到該姓名的任何一 項(xiàng)具體信息, 依賴讀者姓名即可聯(lián)系表與表的連接。 本系統(tǒng)性能都運(yùn)用了第二范 式。得到上面的各項(xiàng)數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)以后, 就可以設(shè)計(jì)出能夠滿足用戶需求的 各種實(shí)體,以及他們之間的關(guān)系,為以后的邏輯結(jié)構(gòu)設(shè)計(jì)打下基礎(chǔ)。根據(jù)上面的設(shè)計(jì)規(guī)劃出的實(shí)體有:讀者類別信息實(shí)體、讀者信息

26、實(shí)體、書籍 類別信息實(shí)體、書籍信息實(shí)體、 借閱信息實(shí)體。 由于上面已經(jīng)介紹了各個(gè)實(shí)體的 包含內(nèi)容, 這里就不在對(duì)每個(gè)實(shí)體的 E-R 圖做介紹。 現(xiàn)介紹各個(gè)實(shí)體之間的相互 關(guān)系 E-R 圖如下: 圖 2-2第三章 圖書管理信息系統(tǒng)的開發(fā)環(huán)境3.1 圖書理信息系統(tǒng)的開發(fā)語言簡介3. 1. 1 開發(fā)環(huán)境的選擇Microsoft 公司推出 Windows 以后,立即以其新穎的圖形用戶界面、卓越的 多任務(wù)操作系統(tǒng)性能、 高層次的軟件開發(fā)平臺(tái)而風(fēng)靡全球。 尤其是 Office 使用軟 件的方便使用使許多應(yīng)用人員想到手動(dòng)的設(shè)計(jì) Windows 用戶界面。然而由于對(duì) 于程序員來說,工作的難度很大。為了適應(yīng) W

27、indows 下運(yùn)行程序,就必須建立 相應(yīng)的窗口、菜單、對(duì)話框等各種控件,面對(duì)這種情況, 1990年 Microsoft 公司 推出了 Windows 應(yīng)用程序開發(fā)工具 VB, 從而達(dá)到了可視化的結(jié)果。在 visual basic 中,既繼承了 basic 語言簡單易用的特點(diǎn),又采用了面向?qū)ο?、事件?qū)動(dòng)的 編程機(jī)制, 用一種巧妙的方法把 windows 編程復(fù)雜性封裝起來, 提供了可見即所 得的可視界面設(shè)計(jì)方法。Vb 已經(jīng)經(jīng)歷了幾個(gè)版本, Vb6.0在功能上進(jìn)一步得到完善和擴(kuò)充, 尤其在數(shù) 據(jù)庫管理與網(wǎng)絡(luò)應(yīng)用方面更勝一籌。 Vb6.0包括三個(gè)版本:學(xué)習(xí)版,專業(yè)版,企 業(yè)版。我們所用的是企業(yè)版(

28、中文。Vb6.0的功能特點(diǎn):具有面向?qū)ο蟮目梢曉O(shè)計(jì)工具,事件驅(qū)動(dòng)的編程機(jī)制, 易學(xué)易用的應(yīng)用程序集成開發(fā)環(huán)境, 結(jié)構(gòu)化的程序設(shè)計(jì)語言, 支持多種數(shù)據(jù)庫的 訪問, ole 技術(shù), active 技術(shù),完備的 help 聯(lián)機(jī)幫助功能。Vb6.0的運(yùn)行環(huán)境:Vb6.0是 windows95/98或 windows NT下的一個(gè)應(yīng)用程 序,本身對(duì)軟硬件沒有特殊的要求。跟 windows95/98或 windows NT 要求是一致 的。硬件要求:一般在 586以上的處理器、 16MB 以上的內(nèi)存、 100MB 以上的硬盤等。 軟件要求:windows95/98或 windows NT3.51以上版本。

29、3.2 數(shù)據(jù)庫環(huán)境的選擇SQL Server 2000是關(guān)系數(shù)據(jù)庫開發(fā)工具,數(shù)據(jù)庫能匯集各種信息以供查 詢、存儲(chǔ)和檢索。 SQL Server 2000能作為一個(gè)功能強(qiáng)大的數(shù)據(jù)庫服務(wù)器有效 地工作,而且數(shù)據(jù)庫引擎也應(yīng)用于客戶端本地存儲(chǔ)獨(dú)立數(shù)據(jù)庫的應(yīng)用程序中。 SQL Server 2000可以動(dòng)態(tài)的配置成能有效的使用客戶端桌面的可用資源,而不 需要為每個(gè)客戶端專設(shè)一個(gè)數(shù)據(jù)庫管理員。 SQL Server 2000能提高超大型系統(tǒng) 所學(xué)要的數(shù)據(jù)庫服務(wù)。 SQL Server 2000提供了很多的編程組件和工具。3.3 VB語言和函數(shù)Microsoft 公司的 Visual Basic6.0是開發(fā)

30、 Windows 應(yīng)用程序 , 尤其是數(shù)據(jù) 庫應(yīng)用程序的快捷有效的工具 , 和以前各版本相比 , 功能更加強(qiáng)大 , 使用起來更 加方便。另外,在 Visual Basic6.0中可以用公用模塊來存放整個(gè)工程項(xiàng)目公用 函數(shù)、 過程和全局變量等。 這樣可以極大的提高代碼的效率。 在項(xiàng)目資源管理器 中為項(xiàng)目添加一個(gè) Module , 保存為 Module.bas 。 往下就可以寫入需要的代碼了。由于系統(tǒng)中各個(gè)功能模塊都將頻繁使用數(shù)據(jù)庫中的各種資源, 因此需要一個(gè) 公共的數(shù)據(jù)操作函數(shù),用來執(zhí)行各種 SQL 語句。這就需要添加函數(shù) ExecuteSQL 了。 ExecuteSQL 函數(shù)的參數(shù)是 SQL

31、,它用來存放需要執(zhí)行的 SQL 語句。函數(shù)執(zhí) 行時(shí),首先判斷 SQL 語句中包含的內(nèi)容;當(dāng)執(zhí)行查詢操作時(shí), ExecuteSQL 函數(shù) 將返回一個(gè)與函數(shù)同名的記錄集對(duì)象(Recordset ,所有滿足條件的記錄包含在 對(duì)象中;當(dāng)執(zhí)行如刪除、添加等操作時(shí),不返回記錄集對(duì)象。在 ExecuteSQL 函數(shù)中使用了 Connect String函數(shù), 這個(gè)函數(shù)用來連接數(shù)據(jù)庫, 代碼如下:Public Function ConnectString( As String 返回一個(gè)數(shù)據(jù)庫連接ConnectString=”FileDSN=tushuguanlixitong .dsn;UID=sa;PWD=”

32、End Function由于在后面的程序中, 需要頻繁的檢查各種文本框的內(nèi)容是否為空, 這也定 義了 Testtxt 函數(shù),代碼為:Public Function Testtxt(txt As String As Boolean 判斷輸入內(nèi)容是否為空If Trim(txt=” ThenTesttxt=FalseElseTesttxt=TrueEnd IfEnd Function.如果文本框內(nèi)容為空時(shí),函數(shù)將返回 True, 否則將返回 False 。3.4 Active數(shù)據(jù)對(duì)象 ADO從簡單的文本文件到各種復(fù)雜的關(guān)系型數(shù)據(jù)庫, 數(shù)據(jù)庫應(yīng)用程序都需要面對(duì) 各種各樣的數(shù)據(jù)源。 Visual bas

33、ic6.0提供 ADO (Active Data Objects 作為應(yīng) 用程序和 OLE-DB 連接的橋梁。盡管用戶對(duì)數(shù)據(jù)的要求種類繁多,但典型的數(shù)據(jù) 源都是支持 ODBC 和 SQL 的。ADO ,即 Active 數(shù)據(jù)對(duì)象:實(shí)際是一種提供訪問各種數(shù)據(jù)類型的連接機(jī)制。 ADO 設(shè)計(jì)為一種極簡單的格式,通過 ODBC 的方法同數(shù)據(jù)庫接口相連。用戶可以 使用任何一種 ODBC 數(shù)據(jù)源,即不僅適合于 SQL sever、 Oracle 、 Access 等數(shù)據(jù) 庫應(yīng)用程序,也適合 excel 表格、文本文件、圖形文件和無格式數(shù)據(jù)文件。 ADO 是基于 OLE-DB 之上的技術(shù),因此 ADO 通過

34、其內(nèi)部的屬性和方法提供統(tǒng)一的數(shù)據(jù) 訪問接口方法。Microsoft 在 Visual Basic6.0以后的版本都集成了 ADO 。它與以前的 DAO 、 RDO 相比有了很大的提高。 DAO(Data Access Objects即數(shù)據(jù)訪問對(duì)象,是一種 面向?qū)ο蟮慕缑娼涌?。通過 DAO/Jet功能可以訪問 ISAM 數(shù)據(jù)庫,使用 DAO/ODBC Direct 功能可以實(shí)現(xiàn)遠(yuǎn)程 RDO 功能。 RDO(Remote Data Objects即遠(yuǎn)程數(shù)據(jù)對(duì) 象,為使用代碼來創(chuàng)建和操作一個(gè)遠(yuǎn)程 ODBC 數(shù)據(jù)庫系統(tǒng)的各個(gè)部件提供了一個(gè) 框架。 RDO 是 ODBC API的一個(gè)淺層界面接口,是專為

35、訪問遠(yuǎn)程的 ODBC 關(guān)系數(shù)據(jù) 源而設(shè)計(jì)的。ADO 集中了 DAO 和 RDO 的優(yōu)點(diǎn),可以通過簡單的編程實(shí)現(xiàn)和各種數(shù)據(jù)結(jié)構(gòu)進(jìn) 行連接??梢酝ㄟ^以下幾步來完成對(duì)數(shù)據(jù)庫的操作:創(chuàng)建一個(gè)到數(shù)據(jù)源的連接 (connection,連接到數(shù)據(jù)庫;或者開始一個(gè)事物 (Transction。創(chuàng)建一個(gè)代表 SQL 命令行(包括變量、參數(shù)、可選項(xiàng)等的對(duì)象。執(zhí)行命令行。如果返回以表格的形式組織的數(shù)據(jù),則將他們保存到緩存中,產(chǎn)生相應(yīng)的數(shù)據(jù)集對(duì)象 (Recordset。通過對(duì)數(shù)據(jù)集對(duì)象進(jìn)行各種操作 , 包括修改、增加、刪除等。更新數(shù)據(jù)源,如果使用事務(wù),確認(rèn)是否接受事務(wù)期間發(fā)生的數(shù)據(jù)變化。結(jié)束連接或事務(wù)使用 ADO 的

36、目的是進(jìn)入數(shù)據(jù)源,使得修改、更新數(shù)據(jù)成為可能。 ADO 提供一系列的類象來完成各種操作。1. 連接對(duì)象 Connection 一個(gè)連接 (Connection對(duì)象代表一個(gè)到指定數(shù)據(jù)源的成功連接。 應(yīng)用程序通過一個(gè)連接(包括實(shí)現(xiàn)數(shù)據(jù)交換的環(huán)境設(shè)置訪問數(shù)據(jù)源,也可以直接訪問數(shù)據(jù)源(在兩層數(shù)據(jù)結(jié)構(gòu)的系統(tǒng)中比較常見,或者通過類似Microsoft Internet Information Server 的中間層間接訪問訪問數(shù)據(jù)源(這就是通常說的三層結(jié)構(gòu) 。 連接成功, Connection 以對(duì)象的形式存在。連接對(duì)象在 ADO 對(duì)象模型中的地位就是在 Connection 里包括(Error 、Com

37、mand 、 Recordset 。因此使用連接對(duì)象的操作如下 :·在打開連接前需要設(shè)置 ConnectionString 、 ConnectionTimeout 和 Mode屬性。·設(shè)置 CursorLocation 屬性,可以設(shè)置或者返回指針位置。·設(shè)置 DefaultDatabase 屬性可以連接指定的一個(gè)默認(rèn)的數(shù)據(jù)庫。·設(shè)置 IsolationLevel 屬性可以確定事務(wù) (Transation在連接的隔離等級(jí)。·設(shè)置 Provider 可以連接指定的一個(gè) OLE-DB 寄主。·設(shè)置 Open 與 Close 方法來建立和中斷

38、一個(gè)連接。·使用 Execute 方法在連接上建立執(zhí)行命令,設(shè)置 CommandTimeout 屬性來指定或者返回命令執(zhí)行時(shí)間。·使用 BeginTrans 、 CommitTrans 和 RollbackTrans 方法以及 Attributes 屬性來管理事物。·通過檢察 Error 對(duì)象可以知道數(shù)據(jù)源返回的錯(cuò)誤。·通過 Version 屬性可以知道 ADO 的版本。·使用 OpenSchema 方法可以知道數(shù)據(jù)庫的計(jì)劃信息。2. 命令行對(duì)象 Command命令行對(duì)象是對(duì)數(shù)據(jù)庫將要執(zhí)行的一系列操作的定義。 使用命令行對(duì)象來 查詢數(shù)據(jù)庫并返回

39、數(shù)據(jù)集對(duì)象(recordset 形式的查詢結(jié)果。命令行對(duì)象指定 變量、參數(shù)、以及可選項(xiàng)來完成對(duì)數(shù)據(jù)庫的操作,如添加記錄、刪除記錄、更 新 記 錄 等 。 命 令 行 對(duì) 象 在 ADO 對(duì) 象 的 模 型 中 是 Connection 包 含 Command,Command 又包含 Parameters 。使用命令行對(duì)象的各種屬性和方法可 以如下操作:·設(shè)置 CommandText 屬性可以定義命令行的內(nèi)容,如 SQL 語句。·使用 Execute 方法執(zhí)行命令行并返回一個(gè)數(shù)據(jù)集對(duì)象(recordset 。·設(shè)置 CommandType 屬性可以優(yōu)化命令的效率。&

40、#183;設(shè)置 CommandTimeout 屬性可以指定服務(wù)器等待醫(yī)療命令執(zhí)行的時(shí)間。 ·設(shè)置 ActiveConnection 屬性可以將一個(gè)命令行對(duì)象與一個(gè)打開的連接關(guān)聯(lián)。 3. 數(shù)據(jù)集對(duì)象 Recordset如果命令行指定數(shù)據(jù)以表的形式組織,執(zhí)行命令行后將返回相應(yīng)的數(shù)據(jù)集。 同過數(shù)據(jù)集可以對(duì)記錄以及組成記錄的列進(jìn)行各種操作。數(shù)據(jù)集對(duì)象在 ADO 對(duì) 象模型中的地位是 Connection 包含 Recordset, 而 Recordset 包含 fields 。ADO 雖然集成在 Visual Basic6.0中,但只是可選項(xiàng)。因此在創(chuàng)建項(xiàng)目后, 需要為項(xiàng)目添加 ADO 。選

41、擇 ” project ” 菜 單中的 ” References ” 命 令,在 References 列 表框中中選 擇 ” Microsoft ActiveX Object 2.6 Library” 選項(xiàng),再確定。3.5 與數(shù)據(jù)庫的連接性VISUAL BASIC提供了與底層數(shù)據(jù)庫系統(tǒng)緊密的連接。 VISUAL BASIC支 持不同的關(guān)系數(shù)據(jù)庫管理系統(tǒng)并充分發(fā)揮每一個(gè)數(shù)據(jù)庫的特長。 開發(fā)人員和利用 ODBC 來確定數(shù)據(jù)源,則 ADO 就能通過數(shù)據(jù)源來對(duì)數(shù)據(jù)庫里的數(shù)據(jù)進(jìn)行操作。 而具體的連接哪個(gè)數(shù)據(jù)庫, ODBC 沒有設(shè)置限定, 從而使設(shè)計(jì)者能夠應(yīng)用自 己比較熟悉的數(shù)據(jù)庫。以下進(jìn)行圖例說明:(

42、圖 3-1 值得一提的是 VISUAL BASIC擁有數(shù)據(jù)窗口對(duì)象(FORM 。它是一個(gè)智能 對(duì)象是 MICROSOFT 公司的技術(shù)。它能操縱關(guān)系數(shù)據(jù)庫的數(shù)據(jù)并可以編寫 SQL 語言。利用該對(duì)象可以修改、更新、插入、刪除、滾頁、打印數(shù)據(jù)窗口直接管理 數(shù)據(jù)庫的交互與控制。 在本系統(tǒng)開發(fā)過程中大多數(shù)報(bào)表均使用此對(duì)象生成, 使用 其操縱關(guān)系數(shù)據(jù)庫的數(shù)據(jù)十分方便、 快捷。 它是一個(gè)支持?jǐn)?shù)據(jù)操縱的封裝性很好 對(duì)象。第四章 圖書管理信息系統(tǒng)的具體實(shí)現(xiàn)4.1 系統(tǒng)客戶端程序以上的 SQL 語句在 SQL Sever 2000查詢分析器中執(zhí)行后,將自動(dòng)產(chǎn)生需 要的所有表格。 有關(guān)數(shù)據(jù)庫結(jié)構(gòu)的所有后臺(tái)工作已經(jīng)完

43、成。 現(xiàn)在將通過圖書管 理信息系統(tǒng)中各個(gè)功能模塊的實(shí)現(xiàn),來說明如何使用 Visual Basic 來編寫 系 統(tǒng)的客戶端程序。打開 Visual Basic 后,單擊 File|New Project 菜單,在工程模塊中選擇 Standard EXE,Visual Basic 將自動(dòng)產(chǎn)生一個(gè) Form 窗體,屬性都是缺省設(shè) 置。將這個(gè)窗體刪除,單擊 File|Save Project 菜單,將這個(gè)工程項(xiàng)目命名 為 工程 1.vbp這個(gè)項(xiàng)目可以使用一個(gè) Form 窗體來實(shí)現(xiàn),單擊工具欄中的 工程 按鈕, 選擇 添加工程 按鈕即可生成一個(gè)窗體。在這個(gè)窗體上添加所需的控件, 窗體和控件的屬性設(shè)置如下

44、:主窗體及其控件屬性設(shè)置 創(chuàng)建好的主窗體如下 : (圖 4-1在上圖所示的主窗體中,單擊鼠標(biāo)右鍵,選擇彈出式菜單中的菜單編輯器, 創(chuàng)建如下所示的菜單結(jié)構(gòu)。圖書管理圖書類別管理添加圖書類別修改圖書類別刪除圖書類別圖書信息管理添加圖書信息修改圖書信息刪除圖書信息查詢圖書信息讀者管理讀者種類管理添加讀者種類修改讀者種類刪除讀者種類讀者信息管理添加讀者信息修改讀者信息刪除讀者信息查詢讀者信息圖書借閱管理借書信息還書信息圖書罰金查詢借書信息系統(tǒng)管理添加管理員修改用戶密碼數(shù)據(jù)備份數(shù)據(jù)恢復(fù)退出在 Visual Basic 中可以用公用模塊來存放整個(gè)工程項(xiàng)目公用的函數(shù)、 過程和 全局變量等。 這樣可以極大的提

45、高代碼的效率。 在項(xiàng)目資源管理器中為項(xiàng)目 添加一個(gè) Module, 保存為 Module.bas 。 由于系統(tǒng)中各個(gè)功能模塊都將頻繁使 用數(shù)據(jù)庫中的各種數(shù)據(jù), 因此需要一個(gè)公共的數(shù)據(jù)操作函數(shù), 用以執(zhí)行各種 SQL 語句。由于啟動(dòng)圖書管理系統(tǒng)后,需要對(duì)用戶進(jìn)行判斷。如是授權(quán)用戶,將進(jìn)入系統(tǒng), 否則將停止程序的執(zhí)行。 這個(gè)判斷需要在系統(tǒng)運(yùn)行的最初進(jìn)行, 因此將代碼放在公用模 塊中。4.2 系統(tǒng)用戶管理模塊的創(chuàng)建用戶管理模塊主要實(shí)現(xiàn):用戶登陸、 添加管理員、 數(shù)據(jù)備份、 修改密碼四個(gè)功能。 其窗體如下 添加管理員界面(圖 4-2用戶點(diǎn)擊確認(rèn)后,其數(shù)據(jù)會(huì)添加到數(shù)據(jù)庫中,添加用戶數(shù)據(jù)庫中會(huì)多一條新 記

46、錄,修改密碼即將數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行更新(update ,然后將新記錄保存到 數(shù)據(jù)庫里, 刪除用戶就是將數(shù)據(jù)庫中的數(shù)據(jù)清除。 用戶的登錄界面與此界面基本 相同, 同樣是調(diào)用數(shù)據(jù)庫 tushuguanlixitong 表中的信息, 再對(duì)用戶的登錄信息 進(jìn)行判斷, 決定用戶的權(quán)限。 這里需要強(qiáng)調(diào)的是新用戶名不能與當(dāng)前的用戶名一 致,數(shù)據(jù)庫中所記錄的是您本次登錄所使用的用戶名和密碼,所以用戶名已定, 只需對(duì)您所輸入的用戶名進(jìn)行判斷,用戶名正確,則您創(chuàng)建了登錄的新用戶名。4.3 讀者種類管理模塊的創(chuàng)建圖書館需要管理不同種類的讀者, 并且不同讀者享受的服務(wù)不同。 讀者種類管理 模塊主要實(shí)現(xiàn)如下功能:添加讀

47、者種類、修改讀者種類、刪除讀者種類。選擇“讀者管理 |讀者種類管理 |添加讀者種類”菜單,出現(xiàn)如下窗體: (圖 4-3在窗體上放置多個(gè)文本框, 用來輸入讀者種類信息; 兩個(gè)按鈕用來確定是否 添加讀者種類信息; 多個(gè)標(biāo)簽用來提示文本框中需要輸入的內(nèi)容。 添加好數(shù)據(jù)后, 單點(diǎn)擊 確定 按鈕,系統(tǒng)通過 Dim sql As String性質(zhì)來來判定文本框不能為空, 如果一文本框出錯(cuò)取消,則全部文本框?qū)⑶宄齼?nèi)容,且窗體有提示信息。 當(dāng)判斷 好了后,單擊 Command1按鈕將觸發(fā) Click 事件。實(shí)現(xiàn)添加類別功能的代碼如下:Private Sub Command1_Click(Dim sql As

48、StringDim conn As New ADODB.ConnectionDim rs_readerstyle As New ADODB.RecordsetIf Trim(Text1.Text = "" ThenMsgBox "讀者種類不能為空 ", vbOK0nly + vbExclamation, ""Text1.SetFocusExit SubEnd IfIf Trim(Text2.Text = "" ThenMsgBox "借書數(shù)量不能為空 ", vbOK0nly + vbExclam

49、ation, ""Text2.SetFocusExit SubEnd IfIf Trim(Text3.Text = "" ThenMsgBox "借書期限不能為空 ", vbOK0nly + vbExclamation, ""Text3.SetFocusExit SubEnd IfIf Trim(Text4.Text = "" ThenMsgBox "有限期限不能為空 ", vbOK0nly + vbExclamation, ""Text4.SetFocu

50、sExit SubEnd IfDim connectionstring As Stringconnectionstring = "FileDSN=tushuguanlixitong.dsn"conn.Open connectionstringsql = "select * from readerstyletable where 種類名稱 ='" & Text1.Text & "'" rs_readerstyle.Open sql, conn, adOpenKeyset, adLockPessimisti

51、cIf rs_readerstyle.EOF Thenrs_readerstyle.AddNewrs_readerstyle.Fields(0 = Trim(Text1.Textrs_readerstyle.Fields(1 = Trim(Text2.Textrs_readerstyle.Fields(2 = Trim(Text3.Textrs_readerstyle.Fields(3 = Trim(Text4.Textrs_readerstyle.UpdateMsgBox "添加讀者類別成功 !", vbOKOnly, ""rs_readerstyle

52、.Closefrmaddreaderstyle.HideElseMsgBox "讀者類別重復(fù)! ", vbOKOnly + vbExclamation, ""Text1.SetFocusText1.Text = ""rs_readerstyle.CloseExit SubEnd If選擇“讀者管理 |讀者種類管理 |修改讀者種類”菜單,出現(xiàn)如下窗體,窗體 中放置一個(gè)表格控件: 讀者種類記錄列表窗體(圖 4-4載入窗體時(shí),觸發(fā)窗體的 Load 事件,顯示當(dāng)前數(shù)據(jù)庫中所有的記錄。因此 在 Option Explicit里創(chuàng)建一個(gè) Reco

53、rdset 。代碼中仍創(chuàng)建 Dim sql As String,顯示 記錄列表。完成代碼后,選擇修改類或者刪除,然后在文本框中操作,接著點(diǎn)擊 刷新,將觸發(fā) Recordset 中的 Update 事件,窗體載入當(dāng)前記錄的內(nèi)容,在窗體加 載代碼里, Dim connectionstring As String作為橋梁通過 Recordset 將窗體內(nèi)容記 錄到數(shù)據(jù)庫中。所有代碼添加完成后,所修改的數(shù)據(jù)會(huì)更新在數(shù)據(jù)庫中。通過 cmdupdate 更新在窗體上。選擇“讀者管理 |讀者種類管理 |刪除讀者種類”菜單,將出現(xiàn)記錄列表。選 擇相應(yīng)記錄,單擊鼠標(biāo)右鍵,選擇彈出式菜單,將刪除當(dāng)前記錄。當(dāng)讀者類

54、別信 息列表內(nèi)容為空時(shí),刪除功能將不起作用, Dim sql As String缺少對(duì)象。4.4 讀者信息管理模塊的創(chuàng)建讀者信息管理模塊主要實(shí)現(xiàn)如下功能:添加讀者信息、修改讀者信息、刪除 讀者信息、查詢讀者信息。選擇“讀者管理 |讀者信息管理 |添加讀者信息”菜單,出現(xiàn)如下窗體: 添加讀者信息窗體(圖 4-5窗體中各個(gè)控件屬性這里不做一一介紹。將各種文本框放在窗體的框架中, 組成“讀者種類”和“讀者信息”兩項(xiàng)。載入窗體時(shí),讀者種類中將自動(dòng)添加讀 者種類信息,代碼加在窗體的 Load 事件中。輸入完內(nèi)容后,單擊“確定”按鈕, 觸發(fā) Click 事件,首先檢查文本內(nèi)容是否符合格式要求,然后判斷是否

55、有重復(fù)記 錄,并更新讀者表中的相關(guān)信息, 最后添加內(nèi)容到數(shù)據(jù)庫。 這里要強(qiáng)調(diào)的是添加 讀者時(shí)可以添加相同的用用戶。選擇“讀者管理 |讀者信息管理 |修改讀者信息”菜單,出現(xiàn)如下窗體: 修改讀者信息窗體(圖 4-6窗體中放置了一個(gè)表格控件, 所有讀者記錄都顯示在里面。 選擇需要修改的 記錄, 在選擇菜單下拉框中的 “修改讀者信息” 命令, 出現(xiàn) “添加讀者信息窗體” , 然后進(jìn)行修改。選擇“修改讀者信息”命令,將觸發(fā) Frmchangdelreaderinfo 的 Click 事件。程序判斷為修改狀態(tài)后,首先刪除原有記錄,然后把新內(nèi)容加入到 數(shù)據(jù)庫中。在讀者記錄列表中選擇記錄,然后選擇菜單中的“

56、刪除信息”按鈕,將刪除 當(dāng)前記錄,再選擇 刷新 按鈕 則窗體中的內(nèi)容將改變成你刪除后的內(nèi)容。數(shù)據(jù) 庫中也將得到刪除后的更改數(shù)據(jù)。 刪除信息時(shí)同樣要判斷讀者信息列表內(nèi)容是否 為空。選擇“讀者管理 |讀者信息管理 |查詢讀者信息”菜單,出現(xiàn)下列窗體。在這 里可以按照各種方式以及它們的組合進(jìn)行查詢。 載入窗體時(shí), 將自動(dòng)加入所有讀 (圖 4-7者種類的信息, 即將內(nèi)容添加到列表框中。設(shè)置完查詢內(nèi)容和方式后,單擊 cmd Command1 按鈕將進(jìn)行查詢,代碼如下:Private Sub Command1_Click(Dim rs_findreader As New ADODB.RecordsetDi

57、m conn As New ADODB.ConnectionDim sql As StringIf Check1.Value = vbChecked Thensql = "讀者編號(hào) ='" & Trim(Text1.Text & "" & "'"End IfIf Check2.Value = vbChecked ThenIf Trim(sql = "" Thensql = "讀者姓名 ='" & Trim(Text2.Text &

58、" " & "'"Elsesql = sql & "and 類別 ='" & Trim(Text2.Text & " " & "'"End IfEnd IfIf Check3.Value = vbChecked ThenIf Trim(sql = "" Thensql = "讀者類別 ='" & Trim(Combo1.Text & " " &

59、; "'"Elsesql = sql & "and 讀者類別 ='" & Trim(Combo1.Text & " " & "'"End IfEnd IfDim connectionstring As Stringconnectionstring = "FileDSN=tushuguanlixitong.dsn"conn.Open connectionstringIf Trim(sql = "" ThenMsgBox "請(qǐng)選擇查詢方式 !", vbOKOnly + vbExclamationExit SubEnd Ifsql =

溫馨提示

  • 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)論