版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 圖書管理系統(tǒng)</b></p><p><b> 摘要</b></p><p> 在圖書管理系統(tǒng)用計(jì)算機(jī)管理圖書是一種計(jì)算機(jī)應(yīng)用技術(shù)的創(chuàng)新,在計(jì)算機(jī)還未普及之前圖書管理都是由圖書管理人員手工記帳的方式來操作的.現(xiàn)在一般的圖書館都是采用計(jì)算機(jī)作為工具的實(shí)用的計(jì)算機(jī)圖書管理程序來幫助圖書館管理員進(jìn)行更有效的圖書管理。&
2、lt;/p><p> 圖書管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的庫。而對于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。</p><p> 關(guān)鍵字:圖書,面向?qū)ο?,軟件工?lt;/p><p> Abstract In the library ma
3、nagement system with computer management books is a computer application technology innovation, not on the computer before the popularity of management books are books of account management manual approach to the operati
4、on. Libraries are now generally used as a tool for computer The practical procedures for the management of computer books to help librarians more effective management of the book. Book Management System is a typical man
5、agement information system (MIS),</p><p><b> 目 錄</b></p><p><b> 第一章 概述1</b></p><p><b> 1.1開發(fā)背景1</b></p><p> 1.2管理信息系統(tǒng)產(chǎn)生的背景1
6、</p><p> 1.3系統(tǒng)功能要求的分析2</p><p> 第二章 開發(fā)環(huán)境及實(shí)現(xiàn)技術(shù)介紹3</p><p><b> 2.1開發(fā)環(huán)境3</b></p><p> 2.2開發(fā)工具簡介3</p><p> 第三章 圖書管理系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)5</p><
7、;p> 3.1系統(tǒng)的設(shè)計(jì)5</p><p> 3.1.1概要設(shè)計(jì)5</p><p> 3.1.2詳細(xì)設(shè)計(jì)7</p><p> 3.2系統(tǒng)的實(shí)現(xiàn)9</p><p> 3.2.1主界面的設(shè)計(jì)與實(shí)現(xiàn)12</p><p> 3.2.2圖書管理模塊的設(shè)計(jì)與實(shí)現(xiàn)15</p><p&
8、gt; 3.2.3讀者管理模塊的設(shè)計(jì)與實(shí)現(xiàn)19</p><p> 3.2.4圖書借閱管理模塊的實(shí)現(xiàn)22</p><p> 3.2.5系統(tǒng)管理模塊的設(shè)計(jì)與實(shí)現(xiàn)25</p><p> 第四章 圖書管理系統(tǒng)的運(yùn)行說明40</p><p> 4.1運(yùn)行環(huán)境40</p><p><b> 致
9、 謝42</b></p><p><b> 參考文獻(xiàn)43</b></p><p><b> 第一章 概述</b></p><p><b> 1.1開發(fā)背景</b></p><p> 在圖書管理系統(tǒng)用計(jì)算機(jī)管理圖書是一種計(jì)算機(jī)應(yīng)用技術(shù)的創(chuàng)新,在計(jì)算機(jī)還未
10、普及之前圖書管理都是由圖書管理人員手工記帳的方式來操作的.現(xiàn)在一般的圖書館都是采用計(jì)算機(jī)作為工具的實(shí)用的計(jì)算機(jī)圖書管理程序來幫助圖書館管理員進(jìn)行更有效的圖書管理。</p><p> 1.2圖書管理系統(tǒng)產(chǎn)生的背景</p><p> 圖書管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安
11、全性好的庫。而對于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。 經(jīng)過分析,我們使用 MICROSOFT公司的 VISUAL BASIC開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,尤其是數(shù)據(jù)窗口這一能方便而簡潔操縱數(shù)據(jù)庫的智能化對象,首先在短時間內(nèi)建立系統(tǒng)應(yīng)用原型,然后,對初始原型系統(tǒng)進(jìn)行需求迭代,不斷修正和改進(jìn),直到形成用戶滿意的可行系統(tǒng)。</p><p> 1.3 系統(tǒng)功能要求的分析</p>
12、;<p> 圖書管理系統(tǒng)主要服務(wù)與圖書管理人員,包含的功能模塊主要有:</p><p> 圖書管理:圖書類別管理,圖書信息管理</p><p> 讀者管理:讀者管理,讀者信息管理.</p><p> 圖書借閱管理:借書管理,還書管理.</p><p> 系統(tǒng)管理:添加管理員,修改密碼,退出系統(tǒng)</p>&
13、lt;p> 第二章 開發(fā)環(huán)境及實(shí)現(xiàn)技術(shù)介紹</p><p><b> 2.1開發(fā)環(huán)境</b></p><p> 2.2 開發(fā)軟件介紹</p><p> 本系統(tǒng)所采用的編程語言為visual basic 6.0與 微軟的 access作為操作數(shù)據(jù)庫.</p><p> 現(xiàn)分別對其簡單介紹:</p&g
14、t;<p> Visual Basic 6.0是Micrsoft公司出品的開發(fā)工具,Visual Basic是一種可視化的,面向?qū)ο蟮腤indows開發(fā)語言,它具有易用,通用和開發(fā)效率高的特點(diǎn)。隨著微軟對它不斷地改進(jìn)以及計(jì)算機(jī)本身性能的提高,使得Visual Basic越來越適合一般的應(yīng)用程序開發(fā)。正如Bill Gate所說,世界上絕大多數(shù)的Windows應(yīng)用程序是用Visual Basic編寫的。在眾多的開發(fā)工具中,我
15、們?yōu)槭裁匆x擇Visual Basic6.0呢?因?yàn)閂B具有眾多其它開發(fā)工具所沒有的優(yōu)點(diǎn)!具體介紹如下:</p><p><b> 開發(fā)的高效</b></p><p><b> 語言的高效</b></p><p><b> 編譯的高效</b></p><p><b&
16、gt; 執(zhí)行的高效</b></p><p><b> 維護(hù)的高效</b></p><p> 基于以上理由,我們毫不憂郁的選擇了VB6.0做為我們的開發(fā)工具?。?lt;/p><p> 主要的控件及其基本屬性,事件簡介</p><p><b> 命令按鈕類的控件:</b></p&
17、gt;<p> Caption屬性:用來顯示在控件上的標(biāo)題。</p><p> Enable屬性:控制控件的激活狀態(tài)灰色或可用。</p><p> Appearance屬性:值為1時,則以3D效果顯示該控件,0則不然。</p><p> Backcolor屬性:用來改變在按鈕上顯示圖像的背景色。</p><p> Ca
18、ncel屬性:該屬性決定按鈕是否為一個”取消”按鈕。</p><p> Default屬性:決定哪一個命令按鈕控件是窗體的缺省命令按鈕.</p><p> Font屬性:控制各種文字字體類型.</p><p> Left,top,height,width屬性:設(shè)定控件的位置與大小.</p><p> Style,picture屬性:決
19、定按鈕的顯示方式是否為圖像形式出現(xiàn).</p><p> Visible屬性:確定控件運(yùn)行時是否為可見.</p><p> Index屬性:當(dāng)控件為一控件數(shù)組時,此屬性值為該控件在數(shù)組的下標(biāo)值.</p><p> DownPicture屬性:設(shè)置/返回一個對圖片的引用,該圖片在按鈕被單擊處于壓下狀態(tài)時顯示。</p><p> Disab
20、ledPicture屬性:設(shè)置/返回一個對圖片的引用,該圖片在控件無效時顯示在控件中。</p><p> MaskColor屬性:設(shè)置/返回一個在按鈕的圖片中作為“掩碼“的的顏色</p><p> Picture屬性:設(shè)置返回commandButton控件中要顯示的圖片。</p><p><b> 命令按鈕類的事件:</b></p&
21、gt;<p> 單擊事件――Click事件</p><p><b> 觸發(fā)與適用</b></p><p> 此事件是在一個命令按鈕對象上按下然后釋放一個鼠標(biāo)按鈕時發(fā)生。命令按鈕的Click事件僅對當(dāng)單擊鼠標(biāo)時發(fā)生。</p><p><b> 事件處理過程</b></p><p>
22、; 按鈕單擊事件的處理過程為:</p><p> Private Sub object-Click(Index As Integer)</p><p> 其中Object為引發(fā)該事件的對象名稱。如果是命令按鈕的控件是數(shù)組,則需要使用Index參數(shù)標(biāo)識該控件。</p><p> 獲得焦點(diǎn)――GotFocus事件</p><p><
23、b> 觸發(fā)與適用 </b></p><p> 當(dāng)命令按鈕獲得焦點(diǎn)產(chǎn)生該事件,獲得焦點(diǎn)可以通過諸如Tab切換或單擊對象之類的用戶動作,或在代碼中用SetFocus方法改變焦點(diǎn)來實(shí)現(xiàn)。</p><p><b> 事件處理過程</b></p><p> 命令按鈕GotFoucs事件處理過程為:</p><
24、;p> Private Sub Object-GotFocus(Index As Integer)</p><p> LostFocus事件:當(dāng)一個對象失去焦點(diǎn)時發(fā)生</p><p> KeyDown事件:當(dāng)命令按鈕具有焦點(diǎn)時按下一個鍵時發(fā)生</p><p> KeyUp事件:當(dāng)命令按鈕具有焦點(diǎn)時釋放一個鍵時發(fā)生。</p><p&g
25、t; KeyPress事件:當(dāng)用戶按下或松開一個ANSI鍵時發(fā)生。</p><p> MouseDown事件:當(dāng)在命令按鈕上按下鼠標(biāo)按鈕時發(fā)生。</p><p> MouseMove事件:當(dāng)命令按鈕上移動鼠標(biāo)時發(fā)生。</p><p> MouseUp事件:當(dāng)在命令按鈕上釋放鼠標(biāo)按鈕時發(fā)生。</p><p> 標(biāo)簽框類的控件類的控件:
26、</p><p> Caption屬性:在應(yīng)用程序界面上加入說明。</p><p> Autosize屬性:決定控件是否自動改變大小以顯示其全部內(nèi)容。</p><p> Backstyle屬性:用以指示標(biāo)簽是否透明.</p><p> Bordstyle屬性:用以設(shè)定控件是否有邊框。</p><p><b
27、> 文本框類的控件:</b></p><p> Text屬性:通過像text屬性賦值的方法來改變該屬性的值。</p><p> Maxlength屬性:該屬性設(shè)定在文本框控件中能夠輸入的最大字符數(shù)。</p><p> Multline屬性:該屬性設(shè)定text字符串中是否接受換行符。</p><p> Scrollb
28、ars屬性:該屬性決定是否為文本框加滾動條。</p><p> Passwordchar屬性:該屬性設(shè)定輸入文本的特殊顯示字符,在設(shè)計(jì)密碼程序時非常有用。</p><p> Change事件屬性:文本框的內(nèi)容發(fā)生改變時,相應(yīng)的控件之間發(fā)生相應(yīng)的改變,具有即時性。</p><p> Keypress:事件由用戶在文本框控件中按任意鍵觸發(fā)。</p>
29、<p> Alignment屬性:設(shè)定控件中的文本對其方式</p><p> Appearance屬性:設(shè)定一個對象在運(yùn)行時是否可以3D效果顯示。</p><p> BackColor屬性:設(shè)置返回背景色</p><p> BorderStyle屬性:設(shè)置對象的邊框樣式</p><p> DataField屬性:設(shè)定數(shù)據(jù)使
30、用者將被綁定到的字段名</p><p> DataFormat屬性:設(shè)定DataFormat對象,用于數(shù)據(jù)綁定</p><p> DataMember屬性:從數(shù)據(jù)供應(yīng)程序提供的幾個數(shù)據(jù)成員中返回/設(shè)定一個特定的數(shù)據(jù)成員</p><p> DataSource屬性:設(shè)定控件綁定的一個數(shù)據(jù)源</p><p> DragIcon屬性:設(shè)定圖
31、標(biāo),它將在拖放操作中作為指針顯示</p><p> DragMode模式:設(shè)定一個值,確定在拖放操作中所用方式</p><p> Enabled屬性:設(shè)置/返回運(yùn)行時TextBox是否相應(yīng)用戶事件</p><p> Font屬性:設(shè)置/返回字體屬性</p><p> ForeColor屬性:設(shè)置/返回文本的前景色</p>
32、<p> Height屬性:設(shè)置/返回TextBox的高度</p><p> IMEMode屬性:設(shè)置/返回?cái)?shù)值用來確定輸入方法編輯器的狀態(tài)</p><p> Index屬性:設(shè)置/返回唯一的標(biāo)識控件數(shù)組中該控件的編號</p><p> Left屬性:設(shè)置/返回TextBox控件的水平位置</p><p> Locked
33、屬性:設(shè)置/返回TextBox中文本是否可編輯</p><p> LinkItem屬性:設(shè)置/返回DDE與另一個應(yīng)用程序會話時,傳給接受端的數(shù)據(jù)</p><p> MaxLength屬性:設(shè)置/返回一個值,指定在TextBox控件中能夠輸入的字符最大值</p><p> MouseIcon屬性:設(shè)置/返回自定義鼠標(biāo)的圖標(biāo)</p><p>
34、; Top屬性:設(shè)置/返回TextBox控件的垂直位置</p><p> Tag屬性:存儲過程所需的附加數(shù)據(jù)</p><p><b> 文本框類的事件:</b></p><p> Change事件:當(dāng)改變文本框內(nèi)容時發(fā)生</p><p> Click事件:鼠標(biāo)單擊控件時發(fā)生</p><p&g
35、t; DblClick事件:用鼠標(biāo)左鍵雙擊控件時發(fā)生</p><p> DragDrop事件:在一個完整的拖放動作完成或使用Drag方法,并將其Action參數(shù)設(shè)置為2時發(fā)生</p><p> DragOver事件:在拖放操作正在進(jìn)行時發(fā)生</p><p> GotFocus事件:當(dāng)一個命令按鈕獲得焦點(diǎn)時發(fā)生</p><p> Li
36、nkClose事件:當(dāng)一個DDE對話結(jié)束時發(fā)生</p><p> LinkError事件:當(dāng)一個DDE對話框過程中出現(xiàn)錯誤時,該事件發(fā)生</p><p> KeyDown事件:當(dāng)命令按鈕具有焦點(diǎn)時按下一個鍵時發(fā)生</p><p> Validate事件:在焦點(diǎn)轉(zhuǎn)換到另一個控件之前發(fā)生,此時該控件的Causes Validation 屬性值設(shè)置為True<
37、/p><p><b> 單選按鈕類的控件:</b></p><p> Caption屬性:顯示在控件上的文本,是單選按鈕的標(biāo)題。</p><p> Alignment屬性:決定單選按鈕的標(biāo)題在控件上的位置。</p><p> Enable屬性:該控件為灰色時為false,表示運(yùn)行時不可用。</p>&l
38、t;p> Index屬性:屬性值表示為單選按鈕組成的控件中某個按鈕的索引值。</p><p> Tabindex屬性:建立控件時,vb自動為其分配一個tabindex值,利用tab鍵可以在控件之間切換焦點(diǎn)。</p><p> Value屬性:反映控件狀態(tài)的屬性,返回true表示已選擇了該按鈕。</p><p> Appearance 屬性:設(shè)置/返回一
39、個對象在運(yùn)行時是否以3D效果顯示。</p><p> BackColor 屬性:設(shè)置/返回背景色。</p><p> Container 屬性:設(shè)置/返回Form上的控件屬性。</p><p> DataField 屬性:設(shè)置/返回?cái)?shù)據(jù)使用者將被綁定到的字段名。</p><p> DataFormat 屬性:設(shè)置/返回DataForm
40、at對象,一個綁定對象將附加到它。</p><p> DisabledPicture 屬性:設(shè)置/返回一個對圖像的引用,該圖片在控件無效時顯示在控件中。</p><p> DownPicture 屬性:設(shè)置/返回一個對圖片的引用,該圖片在控件單擊下處于壓下狀態(tài)時顯示。</p><p> DragMode 屬性:設(shè)置/返回一個值,確定在拖放操作中所用的方式。&l
41、t;/p><p> Font 屬性:設(shè)置/返回字體屬性。</p><p> FontBold 屬性:設(shè)置/返回字體粗體樣式。</p><p> FontItalic 屬性:設(shè)置/返回字體斜體樣式。 </p><p> FontStrikethru 屬性:設(shè)置/返回字體刪除線樣式。</p><p> FontUnd
42、erLine 屬性:設(shè)置/返回字體下劃線樣式。</p><p> FontName 屬性:設(shè)置/返回控件中顯示文本所用的字體大小。</p><p> FontSize 屬性:設(shè)置/返回控件中顯示文本所用的字體大小</p><p> Height 屬性:設(shè)置/返回控件的高度。</p><p> MaskColor 屬性:設(shè)置/返回一個在
43、控件的圖片中作為掩碼的顏色。</p><p> MousePointer 屬性:設(shè)置/返回一個值,該值指示在運(yùn)行時當(dāng)鼠標(biāo)移動到對象上時顯示的指針類型。</p><p> 單選按鈕類的常用事件:</p><p> Click 事件:鼠標(biāo)單擊控件時發(fā)生。</p><p> DbClick事件: 當(dāng)在一個對象上按下和釋放鼠標(biāo)按鈕并再次按下和
44、釋放按鈕時,該事件發(fā)生。</p><p> DragDrop事件:在一個完整的拖放動作或使用Drag方法,并將其Action參數(shù)設(shè)置位2時,該事件發(fā)生。</p><p> DragOver事件: 在拖放操作正在進(jìn)行時發(fā)生。</p><p> GotFocus事件: 當(dāng)獲的對象焦點(diǎn)時發(fā)生。</p><p> LostFocus事件:當(dāng)對
45、象失去焦點(diǎn)時發(fā)生。</p><p> KeyDown事件:當(dāng)控件具有焦點(diǎn)時按下一個鍵時發(fā)生。</p><p> KeyUp事件: 當(dāng)控件具有焦點(diǎn)時釋放一個鍵時發(fā)生。</p><p> KeyPress事件:當(dāng)用戶按下或釋放ANSI一個鍵時發(fā)生。</p><p> MouseDown事件:當(dāng)在控件上按下鼠標(biāo)鍵時發(fā)生。</p>
46、<p> MouseMove事件:在控件上移動鼠標(biāo)時發(fā)生。</p><p> MouseUp事件:在控件上釋放鼠標(biāo)時發(fā)生。</p><p><b> 復(fù)選按鈕類的控件:</b></p><p> Caption屬性:缺省為check1…。</p><p> Index屬性:該屬性值為復(fù)選框控件數(shù)組
47、的下標(biāo).</p><p> Value屬性:value為0表空白,為1表勾號,為2表示灰色勾號.</p><p> Container屬性:Form控件上的容器。</p><p> DataChangeed屬性:設(shè)置/返回一個值,指出被綁定的控件中的數(shù)據(jù)已經(jīng)被某進(jìn)程修改。</p><p> DataField屬性:設(shè)置或返回?cái)?shù)據(jù)使用者
48、將被綁定到的字段名。</p><p> DataFormat 屬性:設(shè)置或返回DataFormat對象,用于數(shù)據(jù)綁定。</p><p> Datasource屬性:設(shè)置或返回控件綁定的一個數(shù)據(jù)源。</p><p> DisabledPicture屬性:設(shè)置或返回一個對圖片的引用,該圖片在控件無效時顯示在控件中。</p><p> Do
49、wnPicture 屬性:設(shè)置或返回一個對圖片的引用,該圖片在控件被單擊處于壓下狀態(tài)時顯示。</p><p> DragIcon屬性:設(shè)置或返回圖標(biāo),它將在拖放操作中做為指針顯示。</p><p> DragMode屬性:設(shè)置返回一個值,確定在拖放操作中所用方式。</p><p> Font屬性:設(shè)置或返回字體的屬性。</p><p>
50、 Name屬性:設(shè)置或返回控件的標(biāo)識名。</p><p> Value屬性:設(shè)置或返回控件的狀態(tài)。</p><p> 復(fù)選按鈕類的控件的基本事件:</p><p> Click事件:鼠標(biāo)單擊控件時發(fā)生。</p><p> DragDrop事件:在一個完整的拖放動作完成或使用Drag方法,并將其Action參數(shù)設(shè)置為2時發(fā)生。<
51、/p><p> DragOver事件:在拖放操作正在進(jìn)行時發(fā)生。</p><p> GotFocus事件:在對象獲的焦點(diǎn)時發(fā)生。,</p><p> OLECompleteDrag事件:當(dāng)源部件被放到目標(biāo)時發(fā)生,并通知源部件拖放操作被執(zhí)行或取消。</p><p> OLEDragDrag事件:當(dāng)源部件決定放操作能發(fā)生,卻源部件被放到目標(biāo)部
52、件時,此事件發(fā)生。</p><p><b> 框架類的控件:</b></p><p> 1) List屬性:列表框控件的表項(xiàng)是使用數(shù)組的方式保存,數(shù)組的每一個元素存儲列表控件的一個表項(xiàng)</p><p> Listcount屬性:控件列表部分項(xiàng)目的個數(shù)。</p><p> Mutselect屬性:可以設(shè)置列表框?yàn)閱?/p>
53、選或允許多選屬性.</p><p> Selectd屬性:標(biāo)示一個數(shù)組,數(shù)組各元素為:</p><p> Selected(0),selected(1)…</p><p><b> 滾動條類的控件:</b></p><p> Value屬性:滾動條上滑塊所在位置由value值所決定。</p><
54、;p> Max和min屬性:對value值的最大,最小進(jìn)行限制。</p><p> Largechange屬性:用戶點(diǎn)擊滾動條與鍵頭之間的區(qū)域時,value的改變量。</p><p> 4) OnClick事件:用來添加按鈕的單擊事件所執(zhí)行的程序代碼。</p><p><b> 定時器類類的控件:</b></p>&
55、lt;p> Interval屬性:表示定時的時間間隔,以毫秒為單位。</p><p> Enable屬性:為true時(缺省值),激活定時器開始計(jì)時;為false時處于休眠狀態(tài).</p><p><b> 數(shù)據(jù)庫連接方式選擇</b></p><p> Visual basic6.0連接數(shù)據(jù)庫的主要方式以下幾種方式:一是:用data
56、控件進(jìn)行數(shù)據(jù)庫鏈接 ,二是利用adodc(ADO Data Control)進(jìn)行數(shù)據(jù)庫鏈接 。三是: 利用DataEnvironment進(jìn)行數(shù)據(jù)庫鏈接.四是利用ADO(ActiveX Data Objects)進(jìn)行編程</p><p> :現(xiàn)在我們來大致對這幾種技術(shù)應(yīng)用介紹:</p><p> 用data控件進(jìn)行數(shù)據(jù)庫鏈接.</p><p> 第一步:給窗體添
57、加一個Data控件。第二步:用Access建立一個名為Pad的數(shù)據(jù)庫,在庫中建立一個表Myset,給表添加四個字段:backcolor(數(shù)據(jù)),forecolor(文本),fontname(文本),fontsize(文本)。注意:請將庫文件存入程序所在目錄。 如果你的機(jī)器沒安裝有Access,可通過VB建庫。</p><p> 利用adodc(ADO Data Control)進(jìn)行數(shù)據(jù)庫鏈接:</p
58、><p> 使用adodata控件訪問數(shù)據(jù)庫可以完全不用編寫代碼,只需要通過簡單的設(shè)置和操作其屬性就可以實(shí)現(xiàn)與數(shù)據(jù)庫的連接,通過綁定數(shù)據(jù)感知控件,就能提供一個訪問數(shù)據(jù)庫的界面,用來實(shí)現(xiàn)對數(shù)據(jù)庫的瀏覽,貼加,刪除,修改等操作.</p><p> 利用DAO對數(shù)據(jù)庫進(jìn)行操縱:</p><p> 在visual basic 中提供了兩種與jet數(shù)據(jù)引擎接口的方法:dat
59、a控件與數(shù)據(jù)訪問對象(DAO)DAO是database object的英文縮寫,要訪問數(shù)據(jù)庫一方面數(shù)據(jù)庫要提供訪問接口,另一方面要在編程環(huán)境中有對數(shù)據(jù)庫的支持.DAO模型是設(shè)計(jì)關(guān)系數(shù)據(jù)庫系統(tǒng)結(jié)構(gòu)的對象類的集合.他們提供了管理關(guān)系型數(shù)據(jù)庫系統(tǒng)所需要的全部操作屬性和方法,這其中包括建立數(shù)據(jù)庫,定義表,字段和建立表間關(guān)系,定位和查詢數(shù)據(jù)庫等.</p><p><b> 關(guān)系數(shù)據(jù)庫介紹:</b>
60、</p><p> 關(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ù)據(jù)結(jié)構(gòu)有其他的操作。</p>
61、<p> 結(jié)構(gòu)化查詢語言SQL(Structured Query Language)是一種介于關(guān)系代數(shù)與關(guān)系演算之間的語言,其功能包括查詢、操縱、定義和控制四個方面,是一個通用的、功能極強(qiáng)的關(guān)系數(shù)據(jù)庫語言。目前已成為關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言</p><p> Microsoft Access介紹:</p><p> 使用 Microsoft A
62、ccess,可以在單一的數(shù)據(jù)庫文件中管理所有的信息。在這個文件中,用戶可以將自己的數(shù)據(jù)分別保存在各自獨(dú)立的存儲空間中,這些空間稱作表;可以使用聯(lián)機(jī)窗體來查看、添加及更新表中的數(shù)據(jù);使用查詢來查找并檢索所要的數(shù)據(jù);也可以使用報表以特定的版面布置來分析及打印數(shù)據(jù)。 如果要保存數(shù)據(jù),請為每一種類型的信息創(chuàng)建一個表。如果要從查詢、窗體或報表中的多個表中將數(shù)據(jù)合并在一起,就要定義各個表之間的關(guān)系。 如果要搜索并檢索符合指定條件的數(shù)據(jù),
63、包括來自多個表中的數(shù)據(jù),就要創(chuàng)建查詢。查詢的同時也可以更新或刪除多條記錄,并對數(shù)據(jù)執(zhí)行內(nèi)嵌或自定義的計(jì)算。 如果要簡單地直接在某個表中查看、輸入及更改數(shù)據(jù),請創(chuàng)建一個窗體。在打開一個窗體時,Microsoft Access 將從一個或多個表中檢索數(shù)據(jù),并使用用戶在“窗體向?qū)А边x擇的版面布局或所創(chuàng)建的版面布局,將窗體顯示在屏幕上。 如果要分析數(shù)據(jù)或?qū)?shù)據(jù)以特定的方式打印出來,請創(chuàng)建一個報表。例如,可以打印一
64、份將數(shù)據(jù)分組并計(jì)算數(shù)據(jù)總和的報表,也可以打印另一份帶有各種數(shù)據(jù)格式的打印郵件標(biāo)簽的報表。</p><p> 第三章 圖書管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p><b> 3.1 系統(tǒng)的設(shè)計(jì)</b></p><p> 3.1.1系統(tǒng)的概要設(shè)計(jì)</p><p> 該系統(tǒng)考慮將整個系統(tǒng)分解成如下模塊:</p>
65、<p> 3.1.2 系統(tǒng)的詳細(xì)設(shè)計(jì)</p><p><b> 1.讀者類別表</b></p><p><b> 2.讀者信息表:</b></p><p><b> 3. 借閱信息表:</b></p><p><b> 4. 書籍信息表:<
66、;/b></p><p><b> 5.圖書類別表:</b></p><p><b> 6.系統(tǒng)管理表:</b></p><p> 3.2 系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 3.2.1 系統(tǒng)的主界面的設(shè)計(jì)與實(shí)現(xiàn)</p><p><b> 主界面代碼
67、:</b></p><p> Private Sub add_admin_Click()</p><p> frmadduser.Show</p><p><b> End Sub</b></p><p> Private Sub add_back_book_Click()</p>&l
68、t;p> frmbackbookinfo.Show</p><p><b> End Sub</b></p><p> Private Sub add_book_info_Click()</p><p> frmaddbookinfo.Show</p><p><b> End Sub</
69、b></p><p> Private Sub add_book_style_Click()</p><p> frmaddbookstyle.Show</p><p><b> End Sub</b></p><p> Private Sub add_lend_book_Click()</p>
70、<p> frmfindbook.Show</p><p><b> End Sub</b></p><p> Private Sub add_reader_info_Click()</p><p> frmaddreaderinfo.Show</p><p><b> End Sub&
71、lt;/b></p><p> Private Sub add_reader_style_Click()</p><p> frmaddreaderstyle.Show</p><p><b> End Sub</b></p><p> Private Sub change_pwd_Click()</
72、p><p> frmchangepwd.Show</p><p><b> End Sub</b></p><p> Private Sub del_book_info_Click()</p><p> frmmodifybookinfo.Show</p><p><b> End
73、 Sub</b></p><p> Private Sub del_book_style_Click()</p><p> frmmodifybookstyle.Show</p><p><b> End Sub</b></p><p> Private Sub del_reader_info_Cli
74、ck()</p><p> frmreaderinfo.Show</p><p><b> End Sub</b></p><p> Private Sub del_reader_style_Click()</p><p> frmmodifyreaderstyle.Show</p><p&g
75、t;<b> End Sub</b></p><p> Private Sub exit_sys_Click()</p><p><b> End</b></p><p><b> End Sub</b></p><p> Private Sub find_book_
76、info_Click()</p><p> frmfindbook.Show</p><p><b> End Sub</b></p><p> Private Sub find_lend_book_Click()</p><p> frmfindborrowinfo.Show</p><p&
77、gt;<b> End Sub</b></p><p> Private Sub find_reader_info_Click()</p><p> frmfindreader.Show</p><p><b> End Sub</b></p><p> Private Sub modif
78、y_book_info_Click()</p><p> frmmodifybookinfo.Show</p><p><b> End Sub</b></p><p> Private Sub modify_book_style_Click()</p><p> frmmodifybookstyle.Show&
79、lt;/p><p><b> End Sub</b></p><p> Private Sub modify_reader_info_Click()</p><p> frmreaderinfo.Show</p><p><b> End Sub</b></p><p>
80、 Private Sub modify_reader_style_Click()</p><p> frmmodifyreaderstyle.Show</p><p><b> End Sub</b></p><p> 3.2.2 圖書管理模塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 圖書管理模塊主要由:圖書類別管理,圖
81、書信息管理.</p><p> 圖書類別管理又分別由以下幾個界面構(gòu)成:</p><p><b> 添加圖書類別</b></p><p><b> 添加圖書類別代碼:</b></p><p> Private Sub Command1_Click()</p><p>
82、 Dim rs_bookstyle As New ADODB.Recordset</p><p> Dim sql As String</p><p> If Trim(Text1.Text) = "" Then</p><p> MsgBox "圖書種類不能為空", vbOKOnly + vbExclamation,
83、""</p><p> Text1.SetFocus</p><p><b> Exit Sub</b></p><p><b> End If</b></p><p> If Trim(Text2.Text) = "" Then</p>
84、<p> MsgBox "種類編號不能為空", vbOKOnly + vbExclamation, ""</p><p> Text2.SetFocus</p><p><b> Exit Sub</b></p><p><b> End If</b></p
85、><p> sql = "select * from 圖書類別 where 類別名稱='" & Text1.Text & "'"</p><p> rs_bookstyle.Open sql, conn, adOpenKeyset, adLockPessimistic</p><p> If
86、rs_bookstyle.EOF Then</p><p> rs_bookstyle.AddNew</p><p> rs_bookstyle.Fields(0) = Trim(Text1.Text)</p><p> rs_bookstyle.Fields(1) = Trim(Text2.Text)</p><p> rs_boo
87、kstyle.Update</p><p> MsgBox "添加圖書類別成功!", vbOKOnly, ""</p><p> rs_bookstyle.Close</p><p><b> Else</b></p><p> MsgBox "讀者類別重復(fù)!&q
88、uot;, vbOKOnly + vbExclamation, ""</p><p> Text1.SetFocus</p><p> Text1.Text = ""</p><p> rs_bookstyle.Close</p><p><b> Exit Sub</b>
89、</p><p><b> End If</b></p><p><b> End Sub</b></p><p><b> 修改圖書類別:</b></p><p><b> 修改圖書類別代碼:</b></p><p>
90、Private Sub Form_Load()</p><p> Dim sql As String</p><p> On Error GoTo loaderror</p><p> sql = "select * from 圖書類別"</p><p> rs_reader.CursorLocation = ad
91、UseClient</p><p> rs_reader.Open sql, conn, adOpenKeyset, adLockPessimistic '打開數(shù)據(jù)庫</p><p> cmdupdate.Enabled = False</p><p> '設(shè)定datagrid控件屬性</p><p> Dat
92、aGrid1.AllowAddNew = False '不可增加</p><p> DataGrid1.AllowDelete = False '不可刪除</p><p> DataGrid1.AllowUpdate = False</p
93、><p> If userpow = "guest" Then '權(quán)限相關(guān)</p><p> Frame2.Enabled = False</p><p><b> End If</b></p><p> Set Da
94、taGrid1.DataSource = rs_reader</p><p><b> Exit Sub</b></p><p> loaderror:</p><p> MsgBox Err.Description</p><p><b> End Sub</b></p>&
95、lt;p> 3.2.3 讀者管理模塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 1.添加讀者類別界面:</p><p> Private Sub Command1_Click()</p><p> Dim sql As String</p><p> If Trim(Text1.Text) = "" Then</
96、p><p> MsgBox "讀者種類不能為空", vbOKOnly + vbExclamation, ""</p><p> Text1.SetFocus</p><p><b> Exit Sub</b></p><p><b> End If</b>
97、</p><p> If Trim(Text2.Text) = "" Then</p><p> MsgBox "借書數(shù)量不能為空", vbOKOnly + vbExclamation, ""</p><p> Text2.SetFocus</p><p><b>
98、 Exit Sub</b></p><p><b> End If</b></p><p> If Trim(Text3.Text) = "" Then</p><p> MsgBox "借書期限不能為空", vbOKOnly + vbExclamation, ""&
99、lt;/p><p> Text3.SetFocus</p><p><b> Exit Sub</b></p><p><b> End If</b></p><p> If Trim(Text4.Text) = "" Then</p><p> M
100、sgBox "有限期限不能為空", vbOKOnly + vbExclamation, ""</p><p> Text4.SetFocus</p><p><b> Exit Sub</b></p><p><b> End If</b></p><p&g
101、t; sql = "select * from 讀者類別 where 種類名稱='" & Text1.Text & "'"</p><p> rs_readerstyle.Open sql, conn, adOpenKeyset, adLockPessimistic</p><p> If rs_readerst
102、yle.EOF Then</p><p> rs_readerstyle.AddNew</p><p> rs_readerstyle.Fields(0) = Trim(Text1.Text)</p><p> rs_readerstyle.Fields(1) = CInt(Text2.Text)</p><p> rs_reader
103、style.Fields(2) = CInt(Text3.Text)</p><p> rs_readerstyle.Fields(3) = CInt(Text4.Text)</p><p> rs_readerstyle.Update</p><p> MsgBox "添加讀者類別成功!", vbOKOnly, ""&
104、lt;/p><p> rs_readerstyle.Close</p><p><b> Else</b></p><p> MsgBox "讀者類別重復(fù)!", vbOKOnly + vbExclamation, ""</p><p> Text1.SetFocus</p
105、><p> Text1.Text = ""</p><p> rs_readerstyle.Close</p><p><b> Exit Sub</b></p><p><b> End If</b></p><p><b> End S
106、ub</b></p><p><b> 查詢讀者信息</b></p><p><b> 代碼分析:</b></p><p> Private Sub Command1_Click()</p><p> Dim rs_findreader As New ADODB.Recordse
107、t</p><p> Dim sql As String</p><p> If Check1.Value = vbChecked Then</p><p> sql = "讀者編號='" & Trim(Text1.Text & " ") & "'"</p
108、><p><b> End If</b></p><p> If Check2.Value = vbChecked Then</p><p> If Trim(sql) = "" Then</p><p> sql = "讀者姓名='" & Trim(Text2
109、.Text & " ") & "'"</p><p><b> Else</b></p><p> sql = sql & "and 讀者姓名='" & Trim(Text2.Text & " ") & "
110、9;"</p><p><b> End If</b></p><p><b> End If</b></p><p> If Check3.Value = vbChecked Then</p><p> If Trim(sql) = "" Then</p
111、><p> sql = "讀者類別='" & Trim(Combo1.Text & " ") & "'"</p><p><b> Else</b></p><p> sql = sql & "and 讀者類別='&
112、quot; & Trim(Combo1.Text & " ") & "'"</p><p><b> End If</b></p><p><b> End If</b></p><p> sql = "select * from 讀者
113、信息 where " & sql</p><p> rs_findreader.CursorLocation = adUseClient</p><p> rs_findreader.Open sql, conn, adOpenKeyset, adLockPessimistic</p><p> DataGrid1.AllowAddNew =
114、 False</p><p> DataGrid1.AllowDelete = False</p><p> DataGrid1.AllowUpdate = False</p><p> Set DataGrid1.DataSource = rs_findreader</p><p> 'rs_findreader.Close
115、</p><p><b> End Sub</b></p><p> 圖書借閱管理模塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p><b> 代碼實(shí)現(xiàn):</b></p><p> Private Sub Command1_Click()</p><p> Dim sql As St
116、ring</p><p> Dim rs_find As New ADODB.Recordset</p><p> If Option1.Value = True Then</p><p> sql = "select * from 書籍信息 where 是否被借出='是'"</p><p><
117、b> End If</b></p><p> If Option2.Value = True Then</p><p> sql = "select * from 書籍信息 where 是否被借出='否'"</p><p><b> End If</b></p><
118、;p> If Option3.Value = True Then</p><p> sql = "select * from 借閱信息 where 讀者姓名='" & Text1.Text & "'"</p><p><b> End If</b></p><p&g
119、t; rs_find.CursorLocation = adUseClient</p><p> rs_find.Open sql, conn, adOpenKeyset, adLockPessimistic</p><p> DataGrid1.AllowAddNew = False</p><p> DataGrid1.AllowDelete = Fal
120、se</p><p> DataGrid1.AllowUpdate = False</p><p> Set DataGrid1.DataSource = rs_find</p><p><b> End Sub</b></p><p> 3.2.5系統(tǒng)管理模塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p>
121、; Private Sub Command1_Click()</p><p> Dim sql As String</p><p> Dim rs_add As New ADODB.Recordset</p><p> If Trim(Text1.Text) = "" Then</p><p> MsgBox &
122、quot;用戶名不能為空", vbOKOnly + vbExclamation, ""</p><p><b> Exit Sub</b></p><p> Text1.SetFocus</p><p><b> Else</b></p><p> sql =
123、"select * from 系統(tǒng)管理"</p><p> rs_add.Open sql, conn, adOpenKeyset, adLockPessimistic</p><p> While (rs_add.EOF = False)</p><p> If Trim(rs_add.Fields(0)) = Trim(Text1.Te
124、xt) Then</p><p> MsgBox "已有這個用戶", vbOKOnly + vbExclamation, ""</p><p> Text1.SetFocus</p><p> Text1.Text = ""</p><p> Text2.Text = &qu
125、ot;"</p><p> Text3.Text = ""</p><p> Combo1.Text = ""</p><p><b> Exit Sub</b></p><p><b> Else</b></p><p&
126、gt; rs_add.MoveNext</p><p><b> End If</b></p><p><b> Wend</b></p><p> If Trim(Text2.Text) <> Trim(Text3.Text) Then</p><p> MsgBox &qu
127、ot;兩次密碼不一致", vbOKOnly + vbExclamation, ""</p><p> Text2.SetFocus</p><p> Text2.Text = ""</p><p> Text3.Text = ""</p><p><b>
128、 Exit Sub</b></p><p> ElseIf Trim(Combo1.Text) <> "system" And Trim(Combo1.Text) <> "guest" Then</p><p> MsgBox "請選擇正確的用戶權(quán)限", vbOKOnly + vbExcla
129、mation, ""</p><p> Combo1.SetFocus</p><p> Combo1.Text = ""</p><p><b> Exit Sub</b></p><p><b> Else</b></p><p
130、> rs_add.AddNew</p><p> rs_add.Fields(0) = Text1.Text</p><p> rs_add.Fields(1) = Text2.Text</p><p> rs_add.Fields(2) = Combo1.Text</p><p> rs_add.Update</p&g
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于vb圖書管理系統(tǒng)畢業(yè)論文
- 基于vb圖書管理系統(tǒng)畢業(yè)論文
- 基于vb圖書管理系統(tǒng)畢業(yè)論文
- 基于vb的圖書管理系統(tǒng)畢業(yè)論文
- 畢業(yè)論文(圖書管理系統(tǒng))基于vb+acess
- 基于vb的圖書管理系統(tǒng)設(shè)計(jì)畢業(yè)論文
- 畢業(yè)論文----基于vb+acc圖書管理系統(tǒng)
- 基于vb的圖書管理系統(tǒng)-電大畢業(yè)論文
- vb+sql畢業(yè)論文----圖書管理系統(tǒng)
- 基于vb的圖書管理系統(tǒng)的設(shè)計(jì)畢業(yè)論文
- vb圖書管理系統(tǒng)(論文)
- vb圖書管理系統(tǒng)畢業(yè)設(shè)計(jì)論文
- 畢業(yè)設(shè)計(jì)---vb圖書管理系統(tǒng)_論文
- 畢業(yè)論文--圖書管理系統(tǒng)
- 畢業(yè)論文-圖書管理系統(tǒng)
- 圖書管理系統(tǒng)畢業(yè)論文
- 圖書管理系統(tǒng)畢業(yè)論文
- 圖書管理系統(tǒng)畢業(yè)論文
- 畢業(yè)論文-圖書管理系統(tǒng)
- 圖書管理系統(tǒng)畢業(yè)論文
評論
0/150
提交評論