計(jì)算機(jī)圖書管理系統(tǒng)計(jì)算機(jī)信息管理畢業(yè)論文_第1頁(yè)
計(jì)算機(jī)圖書管理系統(tǒng)計(jì)算機(jī)信息管理畢業(yè)論文_第2頁(yè)
計(jì)算機(jī)圖書管理系統(tǒng)計(jì)算機(jī)信息管理畢業(yè)論文_第3頁(yè)
計(jì)算機(jī)圖書管理系統(tǒng)計(jì)算機(jī)信息管理畢業(yè)論文_第4頁(yè)
計(jì)算機(jī)圖書管理系統(tǒng)計(jì)算機(jī)信息管理畢業(yè)論文_第5頁(yè)
已閱讀5頁(yè),還剩36頁(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、計(jì)算機(jī)圖書管理系統(tǒng)提 綱一、數(shù)據(jù)庫(kù)設(shè)計(jì) (一) 數(shù)據(jù)庫(kù)概念 (二)計(jì)算機(jī)圖書管理系統(tǒng)數(shù)據(jù)庫(kù)(三) 利用data 控件訪問(wèn)數(shù)據(jù)庫(kù) 二、計(jì)算機(jī)圖書管理系統(tǒng)數(shù)據(jù) (一) 數(shù)據(jù)庫(kù)與vb的連接 (二) 關(guān)閉數(shù)據(jù)對(duì)象和連接對(duì)象(三) 顯示數(shù)據(jù)庫(kù)的內(nèi)容 (四) 計(jì)算機(jī)圖書管理系統(tǒng)數(shù)據(jù)流程圖 三 、計(jì)算機(jī)圖書管理系統(tǒng)2008 (一) 開(kāi)發(fā)計(jì)算機(jī)圖書管理系統(tǒng)的目的 (二) 開(kāi)發(fā)圖書管理系統(tǒng)的思路 四、計(jì)算機(jī)圖書管理系統(tǒng)模塊設(shè)計(jì) (一) 界面設(shè)計(jì)規(guī)范及流程圖(二) 系統(tǒng)窗體匯總 (三) 主頁(yè)面設(shè)計(jì)五、軟件測(cè)試分析報(bào)告 (一) 軟件信息 (二) 常見(jiàn)系統(tǒng)出錯(cuò)問(wèn)題及解決六、 結(jié)束語(yǔ) 計(jì)算機(jī)圖書管理系統(tǒng)【摘要】圖書管理

2、系統(tǒng)是典型的信息管理系統(tǒng)(mis),其開(kāi)發(fā)主要包括后臺(tái)數(shù)據(jù)庫(kù)的建立和維護(hù)以及前端應(yīng)用程序的開(kāi)發(fā)兩個(gè)方面。經(jīng)過(guò)分析,使用 microsoft公司的 visual basic6.0為開(kāi)發(fā)工具,利用其提供的各種面向?qū)ο蟮目梢暬_(kāi)發(fā)平臺(tái)作為開(kāi)發(fā)工具,采用面向?qū)ο蠹夹g(shù),圖形化的應(yīng)用開(kāi)發(fā)環(huán)境,尤其是它有一個(gè)功能極其強(qiáng)大的集成環(huán)境提供級(jí)開(kāi)發(fā)人員,使得開(kāi)發(fā)人員可通過(guò)菜單、界面、圖形瀏覽工具、對(duì)話框以及嵌入的各種生成器來(lái)輕松地完成各種復(fù)雜的操作。開(kāi)發(fā)過(guò)程中不斷修正和改進(jìn),直到形成用戶滿意的可行系統(tǒng)。本案例開(kāi)發(fā)的是“計(jì)算機(jī)圖書管理系統(tǒng)”.關(guān)鍵字(keywords):信息管理系統(tǒng)(mis)、數(shù)據(jù)庫(kù)、visual b

3、asic6.0、面向?qū)ο螅╫bject)、計(jì)算機(jī)圖書管理系統(tǒng)圖書館管理系統(tǒng)是我國(guó)大部分院?;蚱渌块T不可缺少的部分,書籍是人類精神食糧,尤其對(duì)一些學(xué)校,圖書館來(lái)說(shuō),非常重要。在軟件開(kāi)發(fā)中,以計(jì)算機(jī)圖書為主,稱“計(jì)算機(jī)圖書管理系統(tǒng)”。 計(jì)算機(jī)圖書管理系統(tǒng)能夠?yàn)橛脩魧?shí)現(xiàn)借閱圖書、管理等,隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用。作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)圖書資源信息進(jìn)行管理,具有著手工管理所無(wú)法比擬的優(yōu)點(diǎn).例如:查閱迅速、安全性高、可靠性高、存儲(chǔ)量大、保密性好、成本低等。計(jì)算機(jī)圖書管理系統(tǒng)能夠單一定向計(jì)算

4、機(jī)圖書方面,具有實(shí)用,精簡(jiǎn)功能等效率,這些優(yōu)點(diǎn)能夠極大地提高圖書館管理的效率,也是企業(yè)、學(xué)校的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。因此,開(kāi)發(fā)這樣一套管理軟件是很有必要. 本案例開(kāi)發(fā)的是“計(jì)算機(jī)圖書管理系統(tǒng)”.一、 數(shù)據(jù)庫(kù)設(shè)計(jì)( mdb )(一) 數(shù)據(jù)的概念辦公軟件office套件中,最為廣大用戶熟悉的是word和excel,因?yàn)樗鼈児δ軓?qiáng)大且方便易用,更因?yàn)樗鼈儾粌H可用于辦公,還可用于個(gè)人寫作和家庭記帳理財(cái)?shù)?。同為office套件中一部分的access,雖然有著同樣強(qiáng)大的功能,但使用的人卻相對(duì)少些,不像word和excel那樣廣泛。事實(shí)上,真正用過(guò)access的用戶,對(duì)其強(qiáng)大功能和靈活應(yīng)

5、用均稱贊有加。 access 數(shù)據(jù)庫(kù)管理系統(tǒng)是microsoft office 套件的重要組成部分,適用于小型商務(wù)活動(dòng),用以存貯和管理商務(wù)活動(dòng)所需要的數(shù)據(jù)。access不僅是一個(gè)數(shù)據(jù)庫(kù),而且它具有強(qiáng)大的數(shù)據(jù)管理功能,它可以方便地利用各種數(shù)據(jù)源,生成窗體(表單),查詢,報(bào)表和應(yīng)用程序等。 有結(jié)構(gòu)的數(shù)據(jù)集合,它與一般的數(shù)據(jù)文件不同,(其中的數(shù)據(jù)是無(wú)結(jié)構(gòu)的)是一串文字或數(shù)字流。數(shù)據(jù)庫(kù)中的數(shù)據(jù)可以是文字、圖象、聲音等。 access一種關(guān)系式數(shù)據(jù)庫(kù),關(guān)系式數(shù)據(jù)庫(kù)由一系列表組成,表又由一系列行和列組成,每一行是一個(gè)記錄,每一列是一個(gè)字段,每個(gè)字段有一個(gè)字段名,字段名在一個(gè)表中不能重復(fù)。圖1是一個(gè)“產(chǎn)品”

6、表的例子?!爱a(chǎn)品”表由10個(gè)記錄組成,一個(gè)記錄占一行,每一個(gè)記錄由產(chǎn)品id、產(chǎn)品名稱、庫(kù)存量、訂貨量、單價(jià)和折扣率6個(gè)字段組成?!爱a(chǎn)品id”是字段名,其下面的1,2等是字段的值。 表與表之間可以建立關(guān)系(或稱關(guān)聯(lián),連接),以便查詢相關(guān)聯(lián)的信息。access數(shù)據(jù)庫(kù)以文件形式保存,文件的擴(kuò)展名是mdb。 access 數(shù)據(jù)庫(kù)由六種對(duì)象組成,它們是表、查詢、窗體、報(bào)表、宏和模塊。 1. 表(table)表是數(shù)據(jù)庫(kù)的基本對(duì)象,是創(chuàng)建其他5種對(duì)象的基礎(chǔ)。表由記錄組成,記錄由字段組成,表用來(lái)存貯數(shù)據(jù)庫(kù)的數(shù)據(jù),故又稱數(shù)據(jù)表。 2. 數(shù)據(jù)查詢(query)查詢可以按索引快速查找到需要的記錄,按要求篩選記錄并能

7、連接若干個(gè)表的字段組成新表。 3. 數(shù)據(jù)窗體(form)窗體提供了一種方便的瀏覽、輸入及更改數(shù)據(jù)的窗口。還可以創(chuàng)建子窗體顯示相關(guān)聯(lián)的表的內(nèi)容。窗體也稱表單。 4. 數(shù)據(jù)報(bào)表(report)報(bào)表的功能是將數(shù)據(jù)庫(kù)中的數(shù)據(jù)分類匯總,然后打印出來(lái),以便分析。5. 數(shù)據(jù)宏(macro)宏相當(dāng)于dos中的批處理,用來(lái)自動(dòng)執(zhí)行一系列操作。access列出了一些常用的操作供用戶選擇,使用起來(lái)十分方便。 6. 數(shù)據(jù)模塊(module)模塊的功能與宏類似,但它定義的操作比宏更精細(xì)和復(fù)雜,用戶可以根據(jù)自己的需要編寫程序。模塊使用visual basic編程(二)計(jì)算機(jī)管圖書管理系統(tǒng)數(shù)據(jù)庫(kù) 計(jì)算機(jī)管理系統(tǒng)圖書管理系統(tǒng)

8、數(shù)據(jù)庫(kù)模式定義了數(shù)據(jù)庫(kù)的結(jié)構(gòu)、表、關(guān)系、域和業(yè)務(wù)規(guī)則。 數(shù)據(jù)庫(kù)模式是一種設(shè)計(jì),數(shù)據(jù)庫(kù)和應(yīng)用正是建立在此基礎(chǔ)上的。域是一列可能擁有的值的集合。必須為每一個(gè)表的每一列確定域。除了數(shù)據(jù)的物理必填字段外,還需要確定是否有些域?qū)Ρ韥?lái)說(shuō)是唯一的。計(jì)算機(jī)管理系統(tǒng)圖書管理系統(tǒng)數(shù)據(jù)庫(kù)模式的最后一個(gè)要素是業(yè)務(wù)規(guī)則,它是對(duì)需要反映在數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)應(yīng)用程序中的業(yè)務(wù)活動(dòng)的允許空字符串。業(yè)務(wù)規(guī)則是模式的一個(gè)重要部分,因?yàn)樗麄冎付藷o(wú)論什么數(shù)據(jù)變化到達(dá)dbms引擎,允許的數(shù)據(jù)值必須滿足的允許空字符串。不管無(wú)效的數(shù)據(jù)變化請(qǐng)求是來(lái)自窗體的用戶、查詢/修改請(qǐng)求還是應(yīng)用程序dbms都應(yīng)該拒絕。遺憾的是,不同的dbms產(chǎn)品用不同的方

9、法實(shí)施業(yè)務(wù)規(guī)則。在某些情況下,dbms產(chǎn)品不具備實(shí)施必要業(yè)務(wù)規(guī)則的能力,必須以代碼形式把它們編入應(yīng)用程序(三)利用data控件訪問(wèn)數(shù)據(jù)庫(kù)該軟件是利用access數(shù)據(jù)庫(kù),操作方便,簡(jiǎn)單。在access數(shù)據(jù)庫(kù)中不需要?jiǎng)?chuàng)建數(shù)據(jù)連接,因?yàn)樗莢b中默認(rèn)的數(shù)據(jù)庫(kù)形式。這里的數(shù)據(jù)庫(kù)采用access,用ado作為連接數(shù)據(jù)對(duì)象。以歸納為以下幾步:1. 建立access 數(shù)據(jù)庫(kù)啟動(dòng)access,建立一個(gè)空的數(shù)據(jù)庫(kù)computerbookmanage,如圖8所示。使用程序設(shè)計(jì)器建立系統(tǒng)需要的表圖書表:讀者表用戶借書表:用戶表:2、連接數(shù)據(jù)在visual basic環(huán)境下,選擇“工程”“引用”命令,在隨后出現(xiàn)的對(duì)話

10、框中選擇“microsoft activex data objects 2.0 library”,然后單擊“確定”按鈕,如圖:3.0引用ado連接數(shù)據(jù)庫(kù)在程序設(shè)計(jì)的公共模塊中,先定義ado連接對(duì)象。語(yǔ)句如下:public conn as new adodb.connection 標(biāo)記連接對(duì)象然后在子程序中,用如下的語(yǔ)句即可打開(kāi)數(shù)據(jù)庫(kù):dim connectionstring as stringconnectionstring = provider=microsoft.jet.oledb.4.0; &_data source= computerbookmanage .mdbconn.open c

11、onnectionstring4.0 設(shè)置odbcvb的ado對(duì)象是通過(guò)odbc來(lái)訪問(wèn)數(shù)據(jù)庫(kù),所以還要建立odbc數(shù)據(jù)引擎接口。打開(kāi)控制面板中的“管理工具”“數(shù)據(jù)源”(odbc),出現(xiàn)如圖所示的對(duì)話框。圖17 odbc對(duì)話框單擊“添加”按鈕,出現(xiàn)“創(chuàng)建新數(shù)據(jù)源”對(duì)話框,如圖18所示。5.0創(chuàng)建新數(shù)據(jù)源”對(duì)話框選擇microsoft access driver(*.mdb),單擊“完成”按鈕,出現(xiàn)如圖19所示對(duì)話框。設(shè)置連接數(shù)據(jù)源 在“數(shù)據(jù)源名”文本框中添加一個(gè)名字,單擊“確定”按鈕完成系統(tǒng)默認(rèn)連接設(shè)置。然后在odbc對(duì)話框中單擊“確定”按鈕完成odbc設(shè)置。(四)mdb數(shù)據(jù)流程圖以及數(shù)據(jù)表 1

12、.基本表:書籍 book字段類型字段大小必填字段允許空字符串管理人員文本50否是圖書編號(hào)文本12是否圖書名稱文本16否是作者文本8否是出版社文本20否是庫(kù)存量數(shù)字小數(shù)是是入庫(kù)時(shí)間日期/時(shí)間自動(dòng)否無(wú)2.基本表:用戶表 user_table字段類型字段大小必填字段允許空字符串登錄名文本16否是密碼文本16否是身份文本50否是權(quán)限數(shù)字1否是3.基本表:讀者表字段類型字段大小必填字段允許空字符串讀者姓名文本8是主鍵讀者編號(hào)數(shù)字50是否性別文本2否是讀者類別文本50否是工作單位文本50否是家庭地址文本50否否電話號(hào)碼文本50自動(dòng)自動(dòng)登記日期日期/時(shí)間自動(dòng)自動(dòng)自動(dòng)已借書數(shù)量數(shù)字自動(dòng)自動(dòng)自動(dòng)4.基本表:職工

13、信息 worker字段類型字段大小必填字段允許空字符串管理人員文本50否是工號(hào)數(shù)字50是否姓名文本8否是性別文本2否是電話數(shù)字13否是住址5.基本表:借閱信息 reader字段類型字段大小必填字段允許空字符串序號(hào)自動(dòng)編號(hào)(長(zhǎng)整型)主鍵工號(hào)文本250圖書編號(hào)文本250借閱時(shí)間日期/時(shí)間長(zhǎng)日期ado中的數(shù)據(jù)對(duì)象通常保存的是查詢結(jié)果。record set是ado中最復(fù)雜的對(duì)象,有許多屬性和方法。record set保存的是一行行的記錄,并標(biāo)有一個(gè)當(dāng)前記錄。以下是創(chuàng)建方法:可以直接利用data控件直接綁定,在data控件的屬性中的recordsource對(duì)數(shù)據(jù)表進(jìn)行連接。set record set=

14、db.openrecordset(sqtstr)這條語(yǔ)句創(chuàng)建并打開(kāi)了對(duì)象record set,其中db是先前創(chuàng)建的鏈接對(duì)象,sqtstr是一個(gè)字串,代表一條標(biāo)準(zhǔn)的sql語(yǔ)句。例如: sqlstr=“select * from table1”set record set=db.openrecordset(sqtstr),執(zhí)行后,對(duì)象record set中就保存了表table1中的所有記錄。二、 計(jì)算機(jī)圖書管理系統(tǒng)數(shù)據(jù)(一) 數(shù)據(jù)庫(kù)與vb的連接當(dāng)數(shù)據(jù)設(shè)置好后就應(yīng)用vb當(dāng)中去,步驟:新建一個(gè)模塊命名“ database “在database 添加代碼, 數(shù)據(jù)庫(kù)與vb的連接代碼(由于代碼很長(zhǎng)見(jiàn)光盤co

15、de目錄下 “ database.txt”)(二)關(guān)閉數(shù)據(jù)對(duì)象和鏈接對(duì)象在使用了ado對(duì)象之后要關(guān)閉它,因?yàn)樗褂昧艘欢ǖ姆?wù)器資源。通過(guò)調(diào)用方法close實(shí)現(xiàn)關(guān)閉,然后再釋放它。record set.closeset record set=nothing/關(guān)閉創(chuàng)建的數(shù)據(jù)對(duì)象mconn.closeset mconn=nothing/關(guān)閉創(chuàng)建的鏈接對(duì)象(三)顯示數(shù)據(jù)庫(kù)中的內(nèi)容利用msflegrid控件來(lái)顯示數(shù)據(jù)庫(kù)中的內(nèi)容,可以直接通過(guò)data控件來(lái)實(shí)現(xiàn)操作,也可以利用代碼來(lái)完成相關(guān)的操作。 sql = select * from book where 圖書信息 = & text1(0).text

16、 & if sql then set rs = db.openrecordset(sql)(四)計(jì)算機(jī)圖書管理系統(tǒng)數(shù)據(jù)流程圖三、開(kāi)發(fā)圖書管理系統(tǒng)2008(一)開(kāi)發(fā)計(jì)算機(jī)圖書管理系統(tǒng)的目的計(jì)算機(jī)圖書館管理系統(tǒng)是我國(guó)大部分院校或其它部門不可缺少的部分,書籍是人類精神食糧,尤其對(duì)一些學(xué)校,圖書館來(lái)說(shuō),非常重要。圖書館管理系統(tǒng)能夠?yàn)橛脩魧?shí)現(xiàn)借閱圖書、期刊、試卷合訂本等,隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用。作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)圖書資源信息進(jìn)行管理,具有著手工管理所無(wú)法比擬的優(yōu)點(diǎn).例如:查閱迅速、安全

17、性高、可靠性高、存儲(chǔ)量大、保密性好、成本低等。這些優(yōu)點(diǎn)能夠極大地提高圖書館管理的效率,也是企業(yè)、學(xué)校的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件,因此,開(kāi)發(fā)這樣一套管理軟件是很有必要。 (二)開(kāi)發(fā)計(jì)算機(jī)圖書管理系統(tǒng)的思路單從這一方面,開(kāi)發(fā)圖書管理系統(tǒng)需要從以下幾個(gè)構(gòu)思方面著手。1. 遐想遐想。即大膽地思維想象,在腦海形成一個(gè)框架,怎樣去開(kāi)發(fā),如何去開(kāi)發(fā),開(kāi)發(fā)有什么好處即影響。開(kāi)發(fā)會(huì)遇到什么問(wèn)題,怎樣去解決.2. 繪圖即將遐想的,用圖象勾畫出來(lái),呈現(xiàn)模擬系統(tǒng)的功能.3準(zhǔn)備材料準(zhǔn)備事先制作好材料。如軟件中所需要的圖片。代碼,軟件圖標(biāo)(ico)頁(yè)面圖片(bmp,jpg).4. 開(kāi)發(fā)“糧草好了,就動(dòng)兵馬

18、” 意思是現(xiàn)實(shí)開(kāi)發(fā)系統(tǒng)(如新建窗體,模塊等).四、計(jì)算機(jī)圖書管理系統(tǒng)模塊設(shè)計(jì)(一)界面設(shè)計(jì)規(guī)范以及流程圖(詳細(xì)見(jiàn)頁(yè)面)主界面:菜單欄、工具條、工作區(qū)(本系統(tǒng)采用sstab頁(yè)框)、狀態(tài)欄等。(二)系統(tǒng)窗體匯總 窗體名稱窗體類型簡(jiǎn)要說(shuō)明frmlogin啟動(dòng)窗體系統(tǒng)登陸form1mdi主窗體系統(tǒng)主窗體form2模式窗體圖書信息錄入form3mdi子窗體職工信息錄入form4模式窗體借書管理form5模式窗體還書管理form6模式窗體使用幫助frm_sys_set模式窗體賬號(hào)管理frmabout模式窗體關(guān)于軟件frmmsgmdi子窗體友情提示名稱類型模塊說(shuō)明database數(shù)據(jù)類型數(shù)據(jù)連接xp_can

19、vas窗體窗體移動(dòng)xpcmdbutton按鈕個(gè)性按鈕xphelp系統(tǒng)系統(tǒng)幫助xptopbuttons系統(tǒng)最大化,最小化,關(guān)閉xpcmdbutton1按鈕借書xpcmdbutton2按鈕還書xpcmdbutton3按鈕圖書錄入xpcmdbutton4按鈕職工錄入xpcmdbutton5按鈕圖書查詢xpcmdbutton6按鈕借閱查詢.(三)主窗體界面設(shè)計(jì) 主界面的設(shè)計(jì)采用標(biāo)準(zhǔn)無(wú)標(biāo)題主窗口樣式,自上而下依次為:菜單欄、工具條、工作區(qū)(本系統(tǒng)采用sstab頁(yè)框)、狀態(tài)欄等。所有系統(tǒng)用戶擁有相似的主界面。主界面包含基本的或共享的功能,如書目瀏覽與檢索,基本統(tǒng)計(jì)等。代碼見(jiàn)code目錄下:main.txt

20、主界面如代碼所示:option explicit定義查詢字段的窗體級(jí)變量定義查詢的字段窗體變量dim sfield as string 查詢的關(guān)鍵詞dim seachtext as string 查詢函數(shù)定義 1、桉書號(hào)查詢則采用具體查詢辦法 2、按書名查詢則采用模糊查詢辦法function open_seach(table_name as string, sfield as string, seachtext as string) as integerdim sqlstr as stringdim str as string 建立數(shù)據(jù)庫(kù)連接 set con = new adodb.conne

21、ction set rst = new adodb.recordset con.cursorlocation = aduseclient sqlstr = provider=microsoft.jet.oledb.4.0; + data source= + app.path + datacomputerbookmanage.mdb + ;persist security info=false con.open sqlstr 查詢辦法選擇 if option1.value = true then str = select * from & table_name & where & sfield

22、& = & seachtext & else str = select * from & table_name & where & sfield & like & trim( % & text1.text & %) & end if if option3.value = true then str = select * from & table_name & where & sfield & = & seachtext & else str = select * from & table_name & where & sfield & like & trim( % & text1.text &

23、 %) & end if rst.open str, con, adopendynamic, adlockoptimistic rst.requery if rst.recordcount 0 then open_seach = 1 返回一個(gè)值1,代表有查詢結(jié)果 else open_seach = 0 返回一個(gè)值0,代表沒(méi)有查詢結(jié)果 end if end functionprivate sub check4_click()選擇查詢的字段select case tabstrip1.selecteditem case 圖書信息瀏覽: sfield = 出版社end selectend subpri

24、vate sub command1_click()if rst.bof = true thenfrmmsg.showfrmm.visible = true frmmsg.text1.text = 已經(jīng)到達(dá)第一條記錄了!exit subelserst.movepreviousend ifend subprivate sub command2_click() 后一記錄if rst.eof = true thenfrmmsg.showfrmm.visible = true frmmsg.text1.text = 已經(jīng)到達(dá)最后一條記錄了!exit subelserst.mo

25、venextend ifend subprivate sub datagrid2_click()call connect_dbopen_connection (book) 連接book表 tablename = book if privilege = 1 then 如果只是普通用戶,無(wú)法查詢員工信息 frmmsg.show frmmsg.error.visible = true frmmsg.text1.text = 對(duì)不起,您沒(méi)有查閱的權(quán)限! exit sub end if open_connection (worker) 連接worker表 tablename = worker open_

26、connection (record) 連接record表 tablename = record set datagrid1.datasource = rst end sub private sub command4_click()dim ret as integerif command4.caption = 查 詢 then command4.caption = 確 定else if option1.value = false and option2.value = false and option3.value = false and option4.value = false then

27、frmmsg.show frmmsg.notice.visible = true frmmsg.text1.text = 請(qǐng)選擇查詢項(xiàng)! exit sub end if if text1.text = then frmmsg.show frmmsg.notice.visible = true frmmsg.text1.text = 請(qǐng)輸入查詢內(nèi)容! text1.setfocus exit sub end if seachtext = trim(text1.text) ret = open_seach(tablename, sfield, seachtext) if ret = 0 then f

28、rmmsg.show frmmsg.error.visible = true frmmsg.text1.text = 對(duì)不起,沒(méi)有你要的記錄! option1.value = false option2.value = false text1.text = rst.close set rst = nothing set datagrid1.datasource = rst command1.enabled = false 上一條,下一條按鈕為灰 command2.enabled = false command4.caption = 查 詢 exit sub end if command1.en

29、abled = true command2.enabled = true set datagrid1.datasource = rst text1.text = option1.value = false option2.value = false command4.caption = 查 詢end if end subprivate sub datagrid1_click()call connect_dbopen_connection (book) 連接book表 tablename = book if privilege = 1 then 如果只是普通用戶,無(wú)法查詢員工信息 frmmsg.

30、show frmmsg.error.visible = true frmmsg.text1.text = 對(duì)不起,您沒(méi)有查閱的權(quán)限! exit sub end if open_connection (worker) 連接worker表 tablename = worker open_connection (record) 連接record表 tablename = record set datagrid1.datasource = rstend subprivate sub form_load()option1.caption = 書號(hào)option2.caption = 書名option3.c

31、aption = 出版社option4.caption = 作者label2.caption = frmlogin.text1.texttimer1.interval = 1000tablename = bookcall connect_dbopen_connection (book)set datagrid1.datasource = rsttabstrip1.tabs.item(1) = 圖書信息瀏覽tabstrip1.tabs.item(2) = 員工信息瀏覽tabstrip1.tabs.item(3) = 圖書借閱情況瀏覽text1.text = open_connection (bo

32、ok)set datagrid1.datasource = rstfrmlogin.showend subprivate sub image1_click()end subprivate sub option1_click()select case tabstrip1.selecteditem case 圖書信息瀏覽: sfield = 圖書編碼 case 員工信息瀏覽: sfield = 工號(hào) case 圖書借閱情況瀏覽: sfield = 圖書編碼end selectend subprivate sub option2_click()選擇查詢的字段select case tabstrip1

33、.selecteditem case 圖書信息瀏覽: sfield = 圖書名稱 case 員工信息瀏覽: sfield = 姓名 case 圖書借閱情況瀏覽: sfield = 工號(hào)end selectend subprivate sub option3_click()選擇查詢的字段select case tabstrip1.selecteditem case 圖書信息瀏覽: sfield = 出版社end selectend subprivate sub option4_click()選擇查詢的字段select case tabstrip1.selecteditem case 圖書信息瀏覽

34、: sfield = 作者end selectend subprivate sub text2_change()text1.text = timeend subprivate sub tabstrip1_click()call connect_dbselect case tabstrip1.selecteditem case 圖書信息瀏覽: open_connection (book) 連接book表 tablename = book option1.caption = 書號(hào) option2.caption = 書名 set datagrid1.datasource = rst case 員工

35、信息瀏覽: if privilege = 1 then 如果只是普通用戶,無(wú)法查詢員工信息 frmmsg.show frmmsg.error.visible = true frmmsg.text1.text = 對(duì)不起,您沒(méi)有查閱的權(quán)限! exit sub end if open_connection (worker) 連接worker表 option1.caption = 工號(hào) option2.caption = 姓名 tablename = worker set datagrid1.datasource = rst case 圖書借閱情況瀏覽: open_connection (recor

36、d) 連接record表 option1.caption = 書號(hào) option2.caption = 工號(hào) tablename = record set datagrid1.datasource = rstend selectend subprivate sub timer1_timer()label3.caption = nowend subprivate sub xpcmdbutton1_click()form4.showend subprivate sub xpcmdbutton12_click()form6.showend subprivate sub xpcmdbutton13_c

37、lick()frmabout.showend subprivate sub xpcmdbutton14_click()unload mefrmlogin.showend subprivate sub xpcmdbutton15_click()open_connection readertablename = readerset datagrid1.datasource = rstend subprivate sub xpcmdbutton2_click()form5.showend subprivate sub xpcmdbutton3_click()form2.showend subpriv

38、ate sub xpcmdbutton4_click()form3.showend subprivate sub xpcmdbutton5_click()open_connection (book)tablename = recordset datagrid1.datasource = rstend subprivate sub xpcmdbutton6_click()open_connection (record)tablename = record待添加的隱藏文字內(nèi)容3set datagrid1.datasource = rstend subprivate sub xpcmdbutton7

39、_click()open_connection (worker)tablename = workerset datagrid1.datasource = rstend subprivate sub xpcmdbutton8_click()frm_sys_set.showend subprivate sub xpmin_click()me.windowstate = 1end subprivate sub xpclose_click()unload mefrmlogin.showend subprivate sub xptopbuttons1_click()unload meend subpri

40、vate sub xptopbuttons2_click()me.windowstate = 1end sub1. 用戶登陸 該窗體主要完成用戶管理登陸功能,也是進(jìn)入系統(tǒng)的一個(gè)重要的門檻,該門檻是有權(quán)限限制,根據(jù)不同的用戶帳號(hào),功能也截然不同,這就是本系統(tǒng)的一個(gè)關(guān)鍵點(diǎn)。(默然讀者帳號(hào);reader 密碼;008)代碼見(jiàn)code目錄下:login.txtprivate sub form_load() 連接用戶表call open_connection(user_table)xpcmdbutton1.caption = 登陸xpcmdbutton2.caption = 注銷end subpriva

41、te sub image1_click()end subprivate sub xpcmdbutton1_click() 登錄系統(tǒng)dim sql as stringif trim(text1.text) = then 如果文本框?yàn)榭?,則給出提示 frmmsg.show frmmsg.notice.visible = true frmmsg.text1.text = 請(qǐng)輸入用戶登錄賬號(hào)! exit subelse sql = select * from user_table where 登錄名= & trim(text1.text) & 查找用戶登錄名 rst.close rst.open sq

42、l, con, adopendynamic, adlockoptimistic if rst.recordcount = 0 then frmmsg.show frmmsg.error.visible = true frmmsg.text1.text = 用戶名不存在! exit sub end if 用戶合法性檢測(cè)并賦予一定的權(quán)限級(jí)別 if lcase(trim(rst!登錄名) = lcase(trim(text1.text) then if trim(rst!密碼) = trim(text2.text) then privilege = rst!權(quán)限 call check_privage

43、(privilege) 權(quán)限分配 else frmmsg.show frmmsg.error.visible = true frmmsg.text1.text = 密碼錯(cuò)誤,請(qǐng)重新輸入! exit sub end if end ifend ifend subprivate sub xpcmdbutton2_click() 退出系統(tǒng)endend subprivate sub xptopbuttons1_click()endend subprivate sub xptopbuttons2_click(index as integer)me.windowstate = 1end sub如果用戶名錯(cuò)誤

44、或者密碼錯(cuò)誤” 友情提示”窗體就會(huì)響應(yīng),傳送信息給用戶提示1提示22.借書 該窗體主要完成讀者借閱功能,也是最重要的一項(xiàng)功能,讀者借閱圖書與職工人員,管理人員才能完成借閱功能,借閱后系統(tǒng)信息將保存,以便管理員能核對(duì)一下,以免出錯(cuò),假如你已經(jīng)超過(guò)最大的借閱量,系統(tǒng)還會(huì)自動(dòng)提醒管理員該讀者已經(jīng)不能繼續(xù)借書了。該閱子模塊簡(jiǎn)單,計(jì)算機(jī)圖書綜合信息以圖書編號(hào)歸攏在一起,方便借閱。代碼見(jiàn)code目錄下: borrow.txt窗體代碼:option explicitprivate sub command1_click() 借出圖書dim sql, sql1, sql2 as stringdim num as

45、 integersql = select * from recordsql1 = select * from worker where 工號(hào)=?sql2 = select * from book where 圖書編碼=?dim param1, param2, param3, param4 as adodb.parameterdim cmd1, cmd2, cmd3, cmd4 as adodb.commandset cmd1 = new adodb.commandset cmd2 = new adodb.commandset cmd3 = new adodb.commandset cmd4 =

46、 new adodb.commandset param1 = new adodb.parameterset param2 = new adodb.parameterset param3 = new adodb.parameterset param4 = new adodb.parameter工號(hào)及書號(hào)檢測(cè)檢驗(yàn)工號(hào)及書號(hào)的合法性 with param1 .direction = adparaminput .type = adbstr .size = 8 .value = text1.text end with cmd1.parameters.append param1 cmd1.commandt

47、ext = sql1 cmd1.commandtype = adcmdtext set cmd1.activeconnection = con set rst = cmd1.execute if rst.recordcount = 0 then frmmsg.show frmmsg.notice.visible = true frmmsg.text1.text = 沒(méi)有此工號(hào)! exit sub end if with param2 .direction = adparaminput .type = adbstr .size = 8 .value = text2.text end with c

48、md2.parameters.append param2 cmd2.commandtext = sql2 cmd2.commandtype = adcmdtext set cmd2.activeconnection = con set rst1 = cmd2.execute if rst1.recordcount 0 then frmmsg.show frmmsg.notice.visible = true frmmsg.text1.text = 此圖書已經(jīng)被借閱! exit sub end if sql1 = select * from record where 工號(hào)=? rst.close with param4 .direction = adparaminput .type = adbstr .size = 8 .value = text1.tex

溫馨提示

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