圖書管理系統(tǒng)設(shè)計—計算機畢業(yè)設(shè)計(論文)_第1頁
圖書管理系統(tǒng)設(shè)計—計算機畢業(yè)設(shè)計(論文)_第2頁
圖書管理系統(tǒng)設(shè)計—計算機畢業(yè)設(shè)計(論文)_第3頁
圖書管理系統(tǒng)設(shè)計—計算機畢業(yè)設(shè)計(論文)_第4頁
圖書管理系統(tǒng)設(shè)計—計算機畢業(yè)設(shè)計(論文)_第5頁
已閱讀5頁,還剩74頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、圖書管理系統(tǒng)第一章 概述1.1開發(fā)背景在圖書管理系統(tǒng)用計算機管理圖書是一種計算機應(yīng)用技術(shù)的創(chuàng)新,在計算機還未普及之前圖書管理都是由圖書管理人員手工記帳的方式來操作的.現(xiàn)在一般的圖書館都是采用計算機作為工具的實用的計算機圖書管理程序來幫助圖書館管理員進行更有效的圖書管理。1.2圖書管理系統(tǒng)產(chǎn)生的背景圖書管理系統(tǒng)是典型的信息管理系統(tǒng)(mis),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應(yīng)用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強、數(shù)據(jù)安全性好的庫。而對于后者則要求應(yīng)用程序功能完備,易使用等特點。 經(jīng)過分析,我們使用 microsoft公司的 visual basic開發(fā)工具,利

2、用其提供的各種面向?qū)ο蟮拈_發(fā)工具,尤其是數(shù)據(jù)窗口這一能方便而簡潔操縱數(shù)據(jù)庫的智能化對象,首先在短時間內(nèi)建立系統(tǒng)應(yīng)用原型,然后,對初始原型系統(tǒng)進行需求迭代,不斷修正和改進,直到形成用戶滿意的可行系統(tǒng)。 1.3 系統(tǒng)功能要求的分析圖書管理系統(tǒng)主要服務(wù)與圖書管理人員,包含的功能模塊主要有:一. 圖書管理:圖書類別管理,圖書信息管理二. 讀者管理:讀者管理,讀者信息管理.三. 圖書借閱管理:借書管理,還書管理.四. 系統(tǒng)管理:添加管理員,修改密碼,退出系統(tǒng)第二章 開發(fā)環(huán)境及實現(xiàn)技術(shù)介紹2.1開發(fā)環(huán)境硬件平臺cpuintel p4 1.5g主板intel 850芯片組的ga-8tx-c內(nèi)存2128m的三

3、星rambus內(nèi)存硬盤seagate barracuda 7200.7 80g顯卡unika 小妖g9800顯示器美格770pf,17寸純平顯示器軟件環(huán)境操作系統(tǒng)microsoft windowsxp簡體中文專業(yè)版sp1辦公軟件microsoft office 2003顯卡驅(qū)動nvidia forceware驅(qū)動56.72版for win2000/xp2.2 開發(fā)軟件介紹本系統(tǒng)所采用的編程語言為visual basic 6.0與 微軟的 access作為操作數(shù)據(jù)庫.現(xiàn)分別對其簡單介紹:visual basic 6.0是micrsoft公司出品的開發(fā)工具,visual basic是一種可視化的,

4、面向?qū)ο蟮膚indows開發(fā)語言,它具有易用,通用和開發(fā)效率高的特點。隨著微軟對它不斷地改進以及計算機本身性能的提高,使得visual basic越來越適合一般的應(yīng)用程序開發(fā)。正如bill gate所說,世界上絕大多數(shù)的windows應(yīng)用程序是用visual basic編寫的。在眾多的開發(fā)工具中,我們?yōu)槭裁匆x擇visual basic6.0呢?因為vb具有眾多其它開發(fā)工具所沒有的優(yōu)點!具體介紹如下:u 開發(fā)的高效u 語言的高效u 編譯的高效u 執(zhí)行的高效u 維護的高效基于以上理由,我們毫不憂郁的選擇了vb6.0做為我們的開發(fā)工具!主要的控件及其基本屬性,事件簡介u 命令按鈕類的控件:1) c

5、aption屬性:用來顯示在控件上的標(biāo)題。2) enable屬性:控制控件的激活狀態(tài)灰色或可用。3) appearance屬性:值為1時,則以3d效果顯示該控件,0則不然。4) backcolor屬性:用來改變在按鈕上顯示圖像的背景色。5) cancel屬性:該屬性決定按鈕是否為一個”取消”按鈕。6) default屬性:決定哪一個命令按鈕控件是窗體的缺省命令按鈕.7) font屬性:控制各種文字字體類型.8) left,top,height,width屬性:設(shè)定控件的位置與大小.9) style,picture屬性:決定按鈕的顯示方式是否為圖像形式出現(xiàn).10) visible屬性:確定控件運

6、行時是否為可見.11) index屬性:當(dāng)控件為一控件數(shù)組時,此屬性值為該控件在數(shù)組的下標(biāo)值.12) downpicture屬性:設(shè)置/返回一個對圖片的引用,該圖片在按鈕被單擊處于壓下狀態(tài)時顯示。13) disabledpicture屬性:設(shè)置/返回一個對圖片的引用,該圖片在控件無效時顯示在控件中。14) maskcolor屬性:設(shè)置/返回一個在按鈕的圖片中作為“掩碼“的的顏色15) picture屬性:設(shè)置返回commandbutton控件中要顯示的圖片。u 命令按鈕類的事件:1) 單擊事件click事件(1) 觸發(fā)與適用此事件是在一個命令按鈕對象上按下然后釋放一個鼠標(biāo)按鈕時發(fā)生。命令按鈕的

7、click事件僅對當(dāng)單擊鼠標(biāo)時發(fā)生。(2) 事件處理過程按鈕單擊事件的處理過程為: private sub object-click(index as integer)其中object為引發(fā)該事件的對象名稱。如果是命令按鈕的控件是數(shù)組,則需要使用index參數(shù)標(biāo)識該控件。2) 獲得焦點gotfocus事件(1) 觸發(fā)與適用 當(dāng)命令按鈕獲得焦點產(chǎn)生該事件,獲得焦點可以通過諸如tab切換或單擊對象之類的用戶動作,或在代碼中用setfocus方法改變焦點來實現(xiàn)。(2) 事件處理過程命令按鈕gotfoucs事件處理過程為:private sub object-gotfocus(index as int

8、eger)3) lostfocus事件:當(dāng)一個對象失去焦點時發(fā)生4) keydown事件:當(dāng)命令按鈕具有焦點時按下一個鍵時發(fā)生5) keyup事件:當(dāng)命令按鈕具有焦點時釋放一個鍵時發(fā)生。6) keypress事件:當(dāng)用戶按下或松開一個ansi鍵時發(fā)生。7) mousedown事件:當(dāng)在命令按鈕上按下鼠標(biāo)按鈕時發(fā)生。8) mousemove事件:當(dāng)命令按鈕上移動鼠標(biāo)時發(fā)生。9) mouseup事件:當(dāng)在命令按鈕上釋放鼠標(biāo)按鈕時發(fā)生。 u 標(biāo)簽框類的控件類的控件:1) caption屬性:在應(yīng)用程序界面上加入說明。2) autosize屬性:決定控件是否自動改變大小以顯示其全部內(nèi)容。3) back

9、style屬性:用以指示標(biāo)簽是否透明.4) bordstyle屬性:用以設(shè)定控件是否有邊框。u 文本框類的控件:1) text屬性:通過像text屬性賦值的方法來改變該屬性的值。2) maxlength屬性:該屬性設(shè)定在文本框控件中能夠輸入的最大字符數(shù)。3) multline屬性:該屬性設(shè)定text字符串中是否接受換行符。4) scrollbars屬性:該屬性決定是否為文本框加滾動條。5) passwordchar屬性:該屬性設(shè)定輸入文本的特殊顯示字符,在設(shè)計密碼程序時非常有用。6) change事件屬性:文本框的內(nèi)容發(fā)生改變時,相應(yīng)的控件之間發(fā)生相應(yīng)的改變,具有即時性。7) keypress

10、:事件由用戶在文本框控件中按任意鍵觸發(fā)。8) alignment屬性:設(shè)定控件中的文本對其方式9) appearance屬性:設(shè)定一個對象在運行時是否可以3d效果顯示。10) backcolor屬性:設(shè)置返回背景色11) borderstyle屬性:設(shè)置對象的邊框樣式12) datafield屬性:設(shè)定數(shù)據(jù)使用者將被綁定到的字段名13) dataformat屬性:設(shè)定dataformat對象,用于數(shù)據(jù)綁定14) datamember屬性:從數(shù)據(jù)供應(yīng)程序提供的幾個數(shù)據(jù)成員中返回/設(shè)定一個特定的數(shù)據(jù)成員15) datasource屬性:設(shè)定控件綁定的一個數(shù)據(jù)源16) dragicon屬性:設(shè)定圖標(biāo)

11、,它將在拖放操作中作為指針顯示17) dragmode模式:設(shè)定一個值,確定在拖放操作中所用方式18) enabled屬性:設(shè)置/返回運行時textbox是否相應(yīng)用戶事件19) font屬性:設(shè)置/返回字體屬性20) forecolor屬性:設(shè)置/返回文本的前景色21) height屬性:設(shè)置/返回textbox的高度22) imemode屬性:設(shè)置/返回數(shù)值用來確定輸入方法編輯器的狀態(tài)23) index屬性:設(shè)置/返回唯一的標(biāo)識控件數(shù)組中該控件的編號24) left屬性:設(shè)置/返回textbox控件的水平位置25) locked屬性:設(shè)置/返回textbox中文本是否可編輯26) linki

12、tem屬性:設(shè)置/返回dde與另一個應(yīng)用程序會話時,傳給接受端的數(shù)據(jù)27) maxlength屬性:設(shè)置/返回一個值,指定在textbox控件中能夠輸入的字符最大值28) mouseicon屬性:設(shè)置/返回自定義鼠標(biāo)的圖標(biāo)29) top屬性:設(shè)置/返回textbox控件的垂直位置30) tag屬性:存儲過程所需的附加數(shù)據(jù)u 文本框類的事件:1) change事件:當(dāng)改變文本框內(nèi)容時發(fā)生2) click事件:鼠標(biāo)單擊控件時發(fā)生3) dblclick事件:用鼠標(biāo)左鍵雙擊控件時發(fā)生4) dragdrop事件:在一個完整的拖放動作完成或使用drag方法,并將其action參數(shù)設(shè)置為2時發(fā)生5) dra

13、gover事件:在拖放操作正在進行時發(fā)生6) gotfocus事件:當(dāng)一個命令按鈕獲得焦點時發(fā)生7) linkclose事件:當(dāng)一個dde對話結(jié)束時發(fā)生8) linkerror事件:當(dāng)一個dde對話框過程中出現(xiàn)錯誤時,該事件發(fā)生9) keydown事件:當(dāng)命令按鈕具有焦點時按下一個鍵時發(fā)生10) validate事件:在焦點轉(zhuǎn)換到另一個控件之前發(fā)生,此時該控件的causes validation 屬性值設(shè)置為true u 單選按鈕類的控件:1) caption屬性:顯示在控件上的文本,是單選按鈕的標(biāo)題。2) alignment屬性:決定單選按鈕的標(biāo)題在控件上的位置。3) enable屬性:該控

14、件為灰色時為false,表示運行時不可用。4) index屬性:屬性值表示為單選按鈕組成的控件中某個按鈕的索引值。5) tabindex屬性:建立控件時,vb自動為其分配一個tabindex值,利用tab鍵可以在控件之間切換焦點。6) value屬性:反映控件狀態(tài)的屬性,返回true表示已選擇了該按鈕。7) appearance 屬性:設(shè)置/返回一個對象在運行時是否以3d效果顯示。8) backcolor 屬性:設(shè)置/返回背景色。9) container 屬性:設(shè)置/返回form上的控件屬性。10) datafield 屬性:設(shè)置/返回數(shù)據(jù)使用者將被綁定到的字段名。11) dataformat

15、 屬性:設(shè)置/返回dataformat對象,一個綁定對象將附加到它。12) disabledpicture 屬性:設(shè)置/返回一個對圖像的引用,該圖片在控件無效時顯示在控件中。13) downpicture 屬性:設(shè)置/返回一個對圖片的引用,該圖片在控件單擊下處于壓下狀態(tài)時顯示。14) dragmode 屬性:設(shè)置/返回一個值,確定在拖放操作中所用的方式。15) font 屬性:設(shè)置/返回字體屬性。16) fontbold 屬性:設(shè)置/返回字體粗體樣式。17) fontitalic 屬性:設(shè)置/返回字體斜體樣式。 18) fontstrikethru 屬性:設(shè)置/返回字體刪除線樣式。19) fo

16、ntunderline 屬性:設(shè)置/返回字體下劃線樣式。20) fontname 屬性:設(shè)置/返回控件中顯示文本所用的字體大小。21) fontsize 屬性:設(shè)置/返回控件中顯示文本所用的字體大小22) height 屬性:設(shè)置/返回控件的高度。23) maskcolor 屬性:設(shè)置/返回一個在控件的圖片中作為掩碼的顏色。24) mousepointer 屬性:設(shè)置/返回一個值,該值指示在運行時當(dāng)鼠標(biāo)移動到對象上時顯示的指針類型。u 單選按鈕類的常用事件:1) click 事件:鼠標(biāo)單擊控件時發(fā)生。2) dbclick事件: 當(dāng)在一個對象上按下和釋放鼠標(biāo)按鈕并再次按下和釋放按鈕時,該事件發(fā)生

17、。3) dragdrop事件:在一個完整的拖放動作或使用drag方法,并將其action參數(shù)設(shè)置位2時,該事件發(fā)生。4) dragover事件: 在拖放操作正在進行時發(fā)生。5) gotfocus事件: 當(dāng)獲的對象焦點時發(fā)生。6) lostfocus事件:當(dāng)對象失去焦點時發(fā)生。7) keydown事件:當(dāng)控件具有焦點時按下一個鍵時發(fā)生。8) keyup事件: 當(dāng)控件具有焦點時釋放一個鍵時發(fā)生。9) keypress事件:當(dāng)用戶按下或釋放ansi一個鍵時發(fā)生。10) mousedown事件:當(dāng)在控件上按下鼠標(biāo)鍵時發(fā)生。11) mousemove事件:在控件上移動鼠標(biāo)時發(fā)生。12) mouseup事

18、件:在控件上釋放鼠標(biāo)時發(fā)生。u 復(fù)選按鈕類的控件:1) caption屬性:缺省為check1。2) index屬性:該屬性值為復(fù)選框控件數(shù)組的下標(biāo).3) value屬性:value為0表空白,為1表勾號,為2表示灰色勾號.4) container屬性:form控件上的容器。5) datachangeed屬性:設(shè)置/返回一個值,指出被綁定的控件中的數(shù)據(jù)已經(jīng)被某進程修改。6) datafield屬性:設(shè)置或返回數(shù)據(jù)使用者將被綁定到的字段名。7) dataformat 屬性:設(shè)置或返回dataformat對象,用于數(shù)據(jù)綁定。8) datasource屬性:設(shè)置或返回控件綁定的一個數(shù)據(jù)源。9) di

19、sabledpicture屬性:設(shè)置或返回一個對圖片的引用,該圖片在控件無效時顯示在控件中。10) downpicture 屬性:設(shè)置或返回一個對圖片的引用,該圖片在控件被單擊處于壓下狀態(tài)時顯示。11) dragicon屬性:設(shè)置或返回圖標(biāo),它將在拖放操作中做為指針顯示。12) dragmode屬性:設(shè)置返回一個值,確定在拖放操作中所用方式。13) font屬性:設(shè)置或返回字體的屬性。14) name屬性:設(shè)置或返回控件的標(biāo)識名。15) value屬性:設(shè)置或返回控件的狀態(tài)。u 復(fù)選按鈕類的控件的基本事件:1) click事件:鼠標(biāo)單擊控件時發(fā)生。2) dragdrop事件:在一個完整的拖放動

20、作完成或使用drag方法,并將其action參數(shù)設(shè)置為2時發(fā)生。3) dragover事件:在拖放操作正在進行時發(fā)生。4) gotfocus事件:在對象獲的焦點時發(fā)生。,5) olecompletedrag事件:當(dāng)源部件被放到目標(biāo)時發(fā)生,并通知源部件拖放操作被執(zhí)行或取消。6) oledragdrag事件:當(dāng)源部件決定放操作能發(fā)生,卻源部件被放到目標(biāo)部件時,此事件發(fā)生。u 框架類的控件:1) list屬性:列表框控件的表項是使用數(shù)組的方式保存,數(shù)組的每一個元素存儲列表控件的一個表項1) listcount屬性:控件列表部分項目的個數(shù)。2) mutselect屬性:可以設(shè)置列表框為單選或允許多選屬

21、性.3) selectd屬性:標(biāo)示一個數(shù)組,數(shù)組各元素為:4) selected(0),selected(1)u 滾動條類的控件:1) value屬性:滾動條上滑塊所在位置由value值所決定。2) max和min屬性:對value值的最大,最小進行限制。3) largechange屬性:用戶點擊滾動條與鍵頭之間的區(qū)域時,value的改變量。4) onclick事件:用來添加按鈕的單擊事件所執(zhí)行的程序代碼。u 定時器類類的控件:1) interval屬性:表示定時的時間間隔,以毫秒為單位。2) enable屬性:為true時(缺省值),激活定時器開始計時;為false時處于休眠狀態(tài).數(shù)據(jù)庫連接

22、方式選擇visual basic6.0連接數(shù)據(jù)庫的主要方式以下幾種方式:一是:用data控件進行數(shù)據(jù)庫鏈接 ,二是利用adodc(ado data control)進行數(shù)據(jù)庫鏈接 。三是: 利用dataenvironment進行數(shù)據(jù)庫鏈接.四是利用ado(activex data objects)進行編程:現(xiàn)在我們來大致對這幾種技術(shù)應(yīng)用介紹:一、 用data控件進行數(shù)據(jù)庫鏈接.第一步:給窗體添加一個data控件。第二步:用access建立一個名為pad的數(shù)據(jù)庫,在庫中建立一個表myset,給表添加四個字段:backcolor(數(shù)據(jù)),forecolor(文本),fontname(文本),fon

23、tsize(文本)。注意:請將庫文件存入程序所在目錄。 如果你的機器沒安裝有access,可通過vb建庫。二、 利用adodc(ado data control)進行數(shù)據(jù)庫鏈接:使用adodata控件訪問數(shù)據(jù)庫可以完全不用編寫代碼,只需要通過簡單的設(shè)置和操作其屬性就可以實現(xiàn)與數(shù)據(jù)庫的連接,通過綁定數(shù)據(jù)感知控件,就能提供一個訪問數(shù)據(jù)庫的界面,用來實現(xiàn)對數(shù)據(jù)庫的瀏覽,貼加,刪除,修改等操作.三、 利用dao對數(shù)據(jù)庫進行操縱:在visual basic 中提供了兩種與jet數(shù)據(jù)引擎接口的方法:data控件與數(shù)據(jù)訪問對象(dao)dao是database object的英文縮寫,要訪問數(shù)據(jù)庫一方面數(shù)據(jù)

24、庫要提供訪問接口,另一方面要在編程環(huán)境中有對數(shù)據(jù)庫的支持.dao模型是設(shè)計關(guān)系數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)的對象類的集合.他們提供了管理關(guān)系型數(shù)據(jù)庫系統(tǒng)所需要的全部操作屬性和方法,這其中包括建立數(shù)據(jù)庫,定義表,字段和建立表間關(guān)系,定位和查詢數(shù)據(jù)庫等.關(guān)系數(shù)據(jù)庫介紹:關(guān)系數(shù)據(jù)庫是目前各類數(shù)據(jù)庫中最重要、最流行的數(shù)據(jù)庫,他應(yīng)用數(shù)學(xué)方法來處理數(shù)據(jù)庫數(shù)據(jù),是目前使用最廣泛的數(shù)據(jù)庫系統(tǒng)。20世紀(jì)70年代以后開發(fā)的數(shù)據(jù)庫管理系統(tǒng)產(chǎn)品幾乎都是基于關(guān)系的。在數(shù)據(jù)庫發(fā)展的歷史上,最重要的成就就是關(guān)系模型。 關(guān)系數(shù)據(jù)庫系統(tǒng)與非關(guān)系數(shù)據(jù)庫系統(tǒng)的區(qū)別是:關(guān)系系統(tǒng)只有“表“這一種數(shù)據(jù)結(jié)構(gòu);而非關(guān)系數(shù)據(jù)庫系統(tǒng)還有其他數(shù)據(jù)結(jié)構(gòu),對這些數(shù)

25、據(jù)結(jié)構(gòu)有其他的操作。結(jié)構(gòu)化查詢語言sql(structured query language)是一種介于關(guān)系代數(shù)與關(guān)系演算之間的語言,其功能包括查詢、操縱、定義和控制四個方面,是一個通用的、功能極強的關(guān)系數(shù)據(jù)庫語言。目前已成為關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言microsoftaccess介紹:使用microsoftaccess,可以在單一的數(shù)據(jù)庫文件中管理所有的信息。在這個文件中,用戶可以將自己的數(shù)據(jù)分別保存在各自獨立的存儲空間中,這些空間稱作表;可以使用聯(lián)機窗體來查看、添加及更新表中的數(shù)據(jù);使用查詢來查找并檢索所要的數(shù)據(jù);也可以使用報表以特定的版面布置來分析及打印數(shù)據(jù)。 如果要保存數(shù)據(jù),請為每一種類型的

26、信息創(chuàng)建一個表。如果要從查詢、窗體或報表中的多個表中將數(shù)據(jù)合并在一起,就要定義各個表之間的關(guān)系。 如果要搜索并檢索符合指定條件的數(shù)據(jù),包括來自多個表中的數(shù)據(jù),就要創(chuàng)建查詢。查詢的同時也可以更新或刪除多條記錄,并對數(shù)據(jù)執(zhí)行內(nèi)嵌或自定義的計算。 如果要簡單地直接在某個表中查看、輸入及更改數(shù)據(jù),請創(chuàng)建一個窗體。在打開一個窗體時,microsoftaccess將從一個或多個表中檢索數(shù)據(jù),并使用用戶在“窗體向?qū)А边x擇的版面布局或所創(chuàng)建的版面布局,將窗體顯示在屏幕上。 如果要分析數(shù)據(jù)或?qū)?shù)據(jù)以特定的方式打印出來,請創(chuàng)建一個報表。例如,可以打印一份將數(shù)據(jù)分組并計算數(shù)據(jù)總和的報表,也可以打印另一份帶有各種數(shù)據(jù)

27、格式的打印郵件標(biāo)簽的報表。第三章 圖書管理系統(tǒng)的設(shè)計與實現(xiàn)3.1 系統(tǒng)的設(shè)計3.1.1系統(tǒng)的概要設(shè)計該系統(tǒng)考慮將整個系統(tǒng)分解成如下模塊:主界面圖書管理圖書信息管理讀者類別管理讀者信息管理圖書借閱管理借書管理還書管理系統(tǒng)管理登錄圖書類別管理讀者管理3.1.2 系統(tǒng)的詳細(xì)設(shè)計1.讀者類別表2.讀者信息表:3. 借閱信息表:4. 書籍信息表:5.圖書類別表:6.系統(tǒng)管理表:3.2 系統(tǒng)的設(shè)計與實現(xiàn)3.2.1 系統(tǒng)的主界面的設(shè)計與實現(xiàn)主界面代碼:private sub add_admin_click()frmadduser.showend subprivate sub add_back_book_cl

28、ick()frmbackbookinfo.showend subprivate sub add_book_info_click()frmaddbookinfo.showend subprivate sub add_book_style_click()frmaddbookstyle.showend subprivate sub add_lend_book_click()frmfindbook.showend subprivate sub add_reader_info_click()frmaddreaderinfo.showend subprivate sub add_reader_style_

29、click()frmaddreaderstyle.showend subprivate sub change_pwd_click()frmchangepwd.showend subprivate sub del_book_info_click()frmmodifybookinfo.showend subprivate sub del_book_style_click()frmmodifybookstyle.showend subprivate sub del_reader_info_click()frmreaderinfo.showend subprivate sub del_reader_s

30、tyle_click()frmmodifyreaderstyle.showend subprivate sub exit_sys_click()endend subprivate sub find_book_info_click()frmfindbook.showend subprivate sub find_lend_book_click()frmfindborrowinfo.showend subprivate sub find_reader_info_click()frmfindreader.showend subprivate sub modify_book_info_click()f

31、rmmodifybookinfo.showend subprivate sub modify_book_style_click()frmmodifybookstyle.showend subprivate sub modify_reader_info_click()frmreaderinfo.showend subprivate sub modify_reader_style_click()frmmodifyreaderstyle.showend sub3.2.2 圖書管理模塊的設(shè)計與實現(xiàn)圖書管理模塊主要由:圖書類別管理,圖書信息管理.圖書類別管理又分別由以下幾個界面構(gòu)成:1. 添加圖書類別添

32、加圖書類別代碼:private sub command1_click()dim rs_bookstyle as new adodb.recordsetdim sql as stringif trim(text1.text) = then msgbox 圖書種類不能為空, vbokonly + vbexclamation, text1.setfocus exit subend ifif trim(text2.text) = then msgbox 種類編號不能為空, vbokonly + vbexclamation, text2.setfocus exit subend ifsql = sele

33、ct * from 圖書類別 where 類別名稱= & text1.text & rs_bookstyle.open sql, conn, adopenkeyset, adlockpessimisticif rs_bookstyle.eof then rs_bookstyle.addnew rs_bookstyle.fields(0) = trim(text1.text) rs_bookstyle.fields(1) = trim(text2.text) rs_bookstyle.update msgbox 添加圖書類別成功!, vbokonly, rs_bookstyle.closeels

34、e msgbox 讀者類別重復(fù)!, vbokonly + vbexclamation, text1.setfocus text1.text = rs_bookstyle.close exit subend ifend sub2. 修改圖書類別:修改圖書類別代碼:private sub form_load()dim sql as stringon error goto loaderrorsql = select * from 圖書類別rs_reader.cursorlocation = aduseclientrs_reader.open sql, conn, adopenkeyset, adlo

35、ckpessimistic 打開數(shù)據(jù)庫cmdupdate.enabled = false設(shè)定datagrid控件屬性datagrid1.allowaddnew = false 不可增加datagrid1.allowdelete = false 不可刪除datagrid1.allowupdate = falseif userpow = guest then 權(quán)限相關(guān) frame2.enabled = falseend ifset datagrid1.datasource = rs_readerexit subloaderror: msgbox err.descriptionend sub3.2.

36、3 讀者管理模塊的設(shè)計與實現(xiàn)1.添加讀者類別界面:private sub command1_click()dim sql as stringif trim(text1.text) = then msgbox 讀者種類不能為空, vbokonly + vbexclamation, text1.setfocus exit subend ifif trim(text2.text) = then msgbox 借書數(shù)量不能為空, vbokonly + vbexclamation, text2.setfocus exit subend ifif trim(text3.text) = then msgbo

37、x 借書期限不能為空, vbokonly + vbexclamation, text3.setfocus exit subend ifif trim(text4.text) = then msgbox 有限期限不能為空, vbokonly + vbexclamation, text4.setfocus exit subend ifsql = select * from 讀者類別 where 種類名稱= & text1.text & rs_readerstyle.open sql, conn, adopenkeyset, adlockpessimisticif rs_readerstyle.eo

38、f then rs_readerstyle.addnew rs_readerstyle.fields(0) = trim(text1.text) rs_readerstyle.fields(1) = cint(text2.text) rs_readerstyle.fields(2) = cint(text3.text) rs_readerstyle.fields(3) = cint(text4.text) rs_readerstyle.update msgbox 添加讀者類別成功!, vbokonly, rs_readerstyle.closeelse msgbox 讀者類別重復(fù)!, vbok

39、only + vbexclamation, text1.setfocus text1.text = rs_readerstyle.close exit subend ifend sub3. 查詢讀者信息代碼分析:private sub command1_click()dim rs_findreader as new adodb.recordsetdim sql as stringif check1.value = vbchecked then sql = 讀者編號= & trim(text1.text & ) & end ifif check2.value = vbchecked then i

40、f trim(sql) = then sql = 讀者姓名= & trim(text2.text & ) & else sql = sql & and 讀者姓名= & trim(text2.text & ) & end ifend ifif check3.value = vbchecked then if trim(sql) = then sql = 讀者類別= & trim(combo1.text & ) & else sql = sql & and 讀者類別= & trim(combo1.text & ) & end ifend ifsql = select * from 讀者信息 whe

41、re & sqlrs_findreader.cursorlocation = aduseclientrs_findreader.open sql, conn, adopenkeyset, adlockpessimisticdatagrid1.allowaddnew = falsedatagrid1.allowdelete = falsedatagrid1.allowupdate = falseset datagrid1.datasource = rs_findreaderrs_findreader.closeend sub3.2.4 圖書借閱管理模塊的設(shè)計與實現(xiàn)代碼實現(xiàn):private sub

42、 command1_click()dim sql as stringdim rs_find as new adodb.recordsetif option1.value = true then sql = select * from 書籍信息 where 是否被借出=是end ifif option2.value = true then sql = select * from 書籍信息 where 是否被借出=否end ifif option3.value = true then sql = select * from 借閱信息 where 讀者姓名= & text1.text & end i

43、f rs_find.cursorlocation = aduseclient rs_find.open sql, conn, adopenkeyset, adlockpessimistic datagrid1.allowaddnew = false datagrid1.allowdelete = false datagrid1.allowupdate = false set datagrid1.datasource = rs_findend sub3.2.5系統(tǒng)管理模塊的設(shè)計與實現(xiàn)private sub command1_click()dim sql as stringdim rs_add a

44、s new adodb.recordsetif trim(text1.text) = then msgbox 用戶名不能為空, vbokonly + vbexclamation, exit sub text1.setfocuselse sql = select * from 系統(tǒng)管理 rs_add.open sql, conn, adopenkeyset, adlockpessimistic while (rs_add.eof = false) if trim(rs_add.fields(0) = trim(text1.text) then msgbox 已有這個用戶, vbokonly +

45、vbexclamation, text1.setfocus text1.text = text2.text = text3.text = combo1.text = exit sub else rs_add.movenext end if wend if trim(text2.text) trim(text3.text) then msgbox 兩次密碼不一致, vbokonly + vbexclamation, text2.setfocus text2.text = text3.text = exit sub elseif trim(combo1.text) system and trim(

46、combo1.text) guest then msgbox 請選擇正確的用戶權(quán)限, vbokonly + vbexclamation, combo1.setfocus combo1.text = exit sub else rs_add.addnew rs_add.fields(0) = text1.text rs_add.fields(1) = text2.text rs_add.fields(2) = combo1.text rs_add.update rs_add.close msgbox 添加用戶成功, vbokonly + vbexclamation, unload me end

47、ifend ifend sub第四章 圖書管理系統(tǒng)運行環(huán)境4.1運行環(huán)境硬件平臺cpuintel p4 1.5g主板intel 850芯片組的ga-8tx-c內(nèi)存2128m的三星rambus內(nèi)存硬盤seagate barracuda 7200.7 80g顯卡unika 小妖g9800顯示器美格770pf,17寸純平顯示器軟件環(huán)境操作系統(tǒng)microsoft windowsxp簡體中文專業(yè)版sp1辦公軟件microsoft office 2003顯卡驅(qū)動nvidia forceware驅(qū)動56.72版for win2000/xp致 謝在本次畢業(yè)設(shè)計中,我從指導(dǎo)老師身上學(xué)到了很多東西。他認(rèn)真負(fù)責(zé)的工

48、作態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神和深厚的理論水平都使我收益匪淺。他無論在理論上還是在實踐中,都給與我很大的幫助,使我得到不少的提高,這對于我以后的工作和學(xué)習(xí)都有一種巨大的幫助,感謝他細(xì)心而又耐心的輔導(dǎo)。參考文獻(xiàn)數(shù)據(jù)庫系統(tǒng)原理與應(yīng)用 閃四清 清華大學(xué)出版社1999visualvisual 6.0從入門到精通 羅光春 電子科技大學(xué)出版社2000visual visual 6.0基礎(chǔ)與應(yīng)用 周豐治 高等教育出版社2001軟件工程 楊文龍等 電子工業(yè)出版社2002管理信息系統(tǒng) 薛華成 清華大學(xué)出版社1999圖書管理系統(tǒng)第一章 概述1.1開發(fā)背景在圖書管理系統(tǒng)用計算機管理圖書是一種計算機應(yīng)用技術(shù)的創(chuàng)新,在計算機還

49、未普及之前圖書管理都是由圖書管理人員手工記帳的方式來操作的.現(xiàn)在一般的圖書館都是采用計算機作為工具的實用的計算機圖書管理程序來幫助圖書館管理員進行更有效的圖書管理。1.2圖書管理系統(tǒng)產(chǎn)生的背景圖書管理系統(tǒng)是典型的信息管理系統(tǒng)(mis),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應(yīng)用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強、數(shù)據(jù)安全性好的庫。而對于后者則要求應(yīng)用程序功能完備,易使用等特點。 經(jīng)過分析,我們使用 microsoft公司的 visual basic開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,尤其是數(shù)據(jù)窗口這一能方便而簡潔操縱數(shù)據(jù)庫的智能化對象,首先在短時間內(nèi)建立

50、系統(tǒng)應(yīng)用原型,然后,對初始原型系統(tǒng)進行需求迭代,不斷修正和改進,直到形成用戶滿意的可行系統(tǒng)。 1.3 系統(tǒng)功能要求的分析圖書管理系統(tǒng)主要服務(wù)與圖書管理人員,包含的功能模塊主要有:五. 圖書管理:圖書類別管理,圖書信息管理六. 讀者管理:讀者管理,讀者信息管理.七. 圖書借閱管理:借書管理,還書管理.八. 系統(tǒng)管理:添加管理員,修改密碼,退出系統(tǒng)第二章 開發(fā)環(huán)境及實現(xiàn)技術(shù)介紹2.1開發(fā)環(huán)境硬件平臺cpuintel p4 1.5g主板intel 850芯片組的ga-8tx-c內(nèi)存2128m的三星rambus內(nèi)存硬盤seagate barracuda 7200.7 80g顯卡unika 小妖g980

51、0顯示器美格770pf,17寸純平顯示器軟件環(huán)境操作系統(tǒng)microsoft windowsxp簡體中文專業(yè)版sp1辦公軟件microsoft office 2003顯卡驅(qū)動nvidia forceware驅(qū)動56.72版for win2000/xp2.2 開發(fā)軟件介紹本系統(tǒng)所采用的編程語言為visual basic 6.0與 微軟的 access作為操作數(shù)據(jù)庫.現(xiàn)分別對其簡單介紹:visual basic 6.0是micrsoft公司出品的開發(fā)工具,visual basic是一種可視化的,面向?qū)ο蟮膚indows開發(fā)語言,它具有易用,通用和開發(fā)效率高的特點。隨著微軟對它不斷地改進以及計算機本身

52、性能的提高,使得visual basic越來越適合一般的應(yīng)用程序開發(fā)。正如bill gate所說,世界上絕大多數(shù)的windows應(yīng)用程序是用visual basic編寫的。在眾多的開發(fā)工具中,我們?yōu)槭裁匆x擇visual basic6.0呢?因為vb具有眾多其它開發(fā)工具所沒有的優(yōu)點!具體介紹如下:u 開發(fā)的高效u 語言的高效u 編譯的高效u 執(zhí)行的高效u 維護的高效基于以上理由,我們毫不憂郁的選擇了vb6.0做為我們的開發(fā)工具!主要的控件及其基本屬性,事件簡介u 命令按鈕類的控件:1) caption屬性:用來顯示在控件上的標(biāo)題。2) enable屬性:控制控件的激活狀態(tài)灰色或可用。3) appearance屬性:值為1時,則以3d效果顯示該控件,0則不然。4) backcolor屬性:用來改變在按鈕上顯示圖像的背景色。5) cancel屬性:該屬性決定按鈕是否為一個”取消”按鈕。6) default屬性:決定哪一個命令按鈕控件是窗體的缺省命令按鈕.7) font屬性:控制各種文字字體類型.8) lef

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論