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

下載本文檔

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

文檔簡(jiǎn)介

1、圖書管理系統(tǒng)第一章 概述1.1開發(fā)背景在圖書管理系統(tǒng)用計(jì)算機(jī)管理圖書是一種計(jì)算機(jī)應(yīng)用技術(shù)的創(chuàng)新,在計(jì)算機(jī)還未普及之前圖書管理都是由圖書管理人員手工記帳的方式來操作的.現(xiàn)在一般的圖書館都是采用計(jì)算機(jī)作為工具的實(shí)用的計(jì)算機(jī)圖書管理程序來幫助圖書館管理員進(jìn)行更有效的圖書管理。1.2圖書管理系統(tǒng)產(chǎn)生的背景圖書管理系統(tǒng)是典型的信息管理系統(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)。 經(jīng)過分析,我們使用 microsoft公司的 visual basic開發(fā)工具,利

2、用其提供的各種面向?qū)ο蟮拈_發(fā)工具,尤其是數(shù)據(jù)窗口這一能方便而簡(jiǎn)潔操縱數(shù)據(jù)庫的智能化對(duì)象,首先在短時(shí)間內(nèi)建立系統(tǒng)應(yīng)用原型,然后,對(duì)初始原型系統(tǒng)進(jìn)行需求迭代,不斷修正和改進(jìn),直到形成用戶滿意的可行系統(tǒng)。 1.3 系統(tǒng)功能要求的分析圖書管理系統(tǒng)主要服務(wù)與圖書管理人員,包含的功能模塊主要有:一. 圖書管理:圖書類別管理,圖書信息管理二. 讀者管理:讀者管理,讀者信息管理.三. 圖書借閱管理:借書管理,還書管理.四. 系統(tǒng)管理:添加管理員,修改密碼,退出系統(tǒng)第二章 開發(fā)環(huán)境及實(shí)現(xiàn)技術(shù)介紹2.1開發(fā)環(huán)境硬件平臺(tái)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簡(jiǎn)體中文專業(yè)版sp1辦公軟件microsoft office 2003顯卡驅(qū)動(dòng)nvidia forceware驅(qū)動(dòng)56.72版for win2000/xp2.2 開發(fā)軟件介紹本系統(tǒng)所采用的編程語言為visual basic 6.0與 微軟的 access作為操作數(shù)據(jù)庫.現(xiàn)分別對(duì)其簡(jiǎn)單介紹:visual basic 6.0是micrsoft公司出品的開發(fā)工具,visual basic是一種可視化的,

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

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

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

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

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

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

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

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

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

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

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

15、 屬性:設(shè)置/返回dataformat對(duì)象,一個(gè)綁定對(duì)象將附加到它。12) disabledpicture 屬性:設(shè)置/返回一個(gè)對(duì)圖像的引用,該圖片在控件無效時(shí)顯示在控件中。13) downpicture 屬性:設(shè)置/返回一個(gè)對(duì)圖片的引用,該圖片在控件單擊下處于壓下狀態(tài)時(shí)顯示。14) dragmode 屬性:設(shè)置/返回一個(gè)值,確定在拖放操作中所用的方式。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è)置/返回一個(gè)在控件的圖片中作為掩碼的顏色。24) mousepointer 屬性:設(shè)置/返回一個(gè)值,該值指示在運(yùn)行時(shí)當(dāng)鼠標(biāo)移動(dòng)到對(duì)象上時(shí)顯示的指針類型。u 單選按鈕類的常用事件:1) click 事件:鼠標(biāo)單擊控件時(shí)發(fā)生。2) dbclick事件: 當(dāng)在一個(gè)對(duì)象上按下和釋放鼠標(biāo)按鈕并再次按下和釋放按鈕時(shí),該事件發(fā)生

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

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

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

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

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

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

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

24、庫要提供訪問接口,另一方面要在編程環(huán)境中有對(duì)數(shù)據(jù)庫的支持.dao模型是設(shè)計(jì)關(guān)系數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)的對(duì)象類的集合.他們提供了管理關(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),對(duì)這些數(shù)

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

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

27、格式的打印郵件標(biāo)簽的報(bào)表。第三章 圖書管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)3.1 系統(tǒng)的設(shè)計(jì)3.1.1系統(tǒng)的概要設(shè)計(jì)該系統(tǒng)考慮將整個(gè)系統(tǒng)分解成如下模塊:主界面圖書管理圖書信息管理讀者類別管理讀者信息管理圖書借閱管理借書管理還書管理系統(tǒng)管理登錄圖書類別管理讀者管理3.1.2 系統(tǒng)的詳細(xì)設(shè)計(jì)1.讀者類別表2.讀者信息表:3. 借閱信息表:4. 書籍信息表:5.圖書類別表:6.系統(tǒng)管理表:3.2 系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)3.2.1 系統(tǒng)的主界面的設(shè)計(jì)與實(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è)計(jì)與實(shí)現(xiàn)圖書管理模塊主要由:圖書類別管理,圖書信息管理.圖書類別管理又分別由以下幾個(gè)界面構(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 種類編號(hào)不能為空, 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è)計(jì)與實(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 = 讀者編號(hào)= & 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è)計(jì)與實(shí)現(xiàn)代碼實(shí)現(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è)計(jì)與實(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 已有這個(gè)用戶, 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 請(qǐng)選擇正確的用戶權(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)運(yùn)行環(huán)境4.1運(yùn)行環(huán)境硬件平臺(tái)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簡(jiǎn)體中文專業(yè)版sp1辦公軟件microsoft office 2003顯卡驅(qū)動(dòng)nvidia forceware驅(qū)動(dòng)56.72版for win2000/xp致 謝在本次畢業(yè)設(shè)計(jì)中,我從指導(dǎo)老師身上學(xué)到了很多東西。他認(rèn)真負(fù)責(zé)的工

48、作態(tài)度,嚴(yán)謹(jǐn)?shù)闹螌W(xué)精神和深厚的理論水平都使我收益匪淺。他無論在理論上還是在實(shí)踐中,都給與我很大的幫助,使我得到不少的提高,這對(duì)于我以后的工作和學(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)用計(jì)算機(jī)管理圖書是一種計(jì)算機(jī)應(yīng)用技術(shù)的創(chuàng)新,在計(jì)算機(jī)還

49、未普及之前圖書管理都是由圖書管理人員手工記帳的方式來操作的.現(xiàn)在一般的圖書館都是采用計(jì)算機(jī)作為工具的實(shí)用的計(jì)算機(jī)圖書管理程序來幫助圖書館管理員進(jìn)行更有效的圖書管理。1.2圖書管理系統(tǒng)產(chǎn)生的背景圖書管理系統(tǒng)是典型的信息管理系統(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)。 經(jīng)過分析,我們使用 microsoft公司的 visual basic開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,尤其是數(shù)據(jù)窗口這一能方便而簡(jiǎn)潔操縱數(shù)據(jù)庫的智能化對(duì)象,首先在短時(shí)間內(nèi)建立

50、系統(tǒng)應(yīng)用原型,然后,對(duì)初始原型系統(tǒng)進(jìn)行需求迭代,不斷修正和改進(jìn),直到形成用戶滿意的可行系統(tǒng)。 1.3 系統(tǒng)功能要求的分析圖書管理系統(tǒng)主要服務(wù)與圖書管理人員,包含的功能模塊主要有:五. 圖書管理:圖書類別管理,圖書信息管理六. 讀者管理:讀者管理,讀者信息管理.七. 圖書借閱管理:借書管理,還書管理.八. 系統(tǒng)管理:添加管理員,修改密碼,退出系統(tǒng)第二章 開發(fā)環(huán)境及實(shí)現(xiàn)技術(shù)介紹2.1開發(fā)環(huán)境硬件平臺(tái)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簡(jiǎn)體中文專業(yè)版sp1辦公軟件microsoft office 2003顯卡驅(qū)動(dòng)nvidia forceware驅(qū)動(dòng)56.72版for win2000/xp2.2 開發(fā)軟件介紹本系統(tǒng)所采用的編程語言為visual basic 6.0與 微軟的 access作為操作數(shù)據(jù)庫.現(xiàn)分別對(duì)其簡(jiǎn)單介紹:visual basic 6.0是micrsoft公司出品的開發(fā)工具,visual basic是一種可視化的,面向?qū)ο蟮膚indows開發(fā)語言,它具有易用,通用和開發(fā)效率高的特點(diǎn)。隨著微軟對(duì)它不斷地改進(jìn)以及計(jì)算機(jī)本身

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

溫馨提示

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