




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、圖書館信息管理系統(tǒng)設(shè)計 一、系統(tǒng)功能描述圖書館管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護以及前端應(yīng)用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強.數(shù)據(jù)安全性好的庫。而對于后者則要求應(yīng)用程序功能完備,易使用等特點。本圖書管理系統(tǒng)的應(yīng)用對象定位在小型圖書館的應(yīng)用。根據(jù)要求本圖書管理系統(tǒng)主要針對圖書管理員進行添加新書、執(zhí)行借書、還書、查看圖書的操作,另外進入該系統(tǒng)的讀者只能查看當(dāng)前圖書館的藏書并能執(zhí)行查詢操作,讀者還可以通過該系統(tǒng)注冊成為會員。圖書管理系統(tǒng)用來管理圖書借還過程中的靜態(tài)和動態(tài)信息。系統(tǒng)管理的信息主要包括圖書基本信息、圖書存儲信息、借書和還
2、書信息。系統(tǒng)的目的就是有效地處理這些信息,同時為圖書管理員提供信息檢索和信息統(tǒng)計功能。該圖書管理系統(tǒng)主要實現(xiàn)管理員操作和讀者操作。其中,管理員操作包括完成添加圖書、借書、還書、查詢圖書功能;讀者操作包括完成圖書查詢和讀者注冊功能。二、開發(fā)環(huán)境(VISUAL BASIC)的簡介 VISUAL BASIC是微軟公司出品的一個快速可視化程序開發(fā)工具軟件。借助微軟在操作系統(tǒng)和辦公自動化軟件的壟斷/地位,VB在短短的幾年內(nèi)風(fēng)靡全球。VB是極具特色和功能強大的軟件,主要表現(xiàn):所見即所得的界面設(shè)計,基于對象的設(shè)計方法,極短的軟件開發(fā)周期,教易維護的代碼。同時眾多的ACTIVE控件,提高了軟件的使用效率。1
3、VB應(yīng)用程序語言的基本特點:可視化界面設(shè)計:VB為用戶提供大量的界面元素(在VB中稱為控件對象),這些控件對象如“窗體”,“菜單”,“命令按扭”,“工具按扭”,“檢查框”等等,用戶只要利用鼠標(biāo)、鍵盤把這些控件對象拖動到合適的位置,設(shè)置其大小、形狀、屬性等,就可以設(shè)計出所需的應(yīng)用程序界面。2 事件驅(qū)動編程在使用VB設(shè)計應(yīng)用程序是,必須首先確定應(yīng)用程序如何同用戶進行交互。例如發(fā)生鼠標(biāo)單擊、鍵盤輸入等事件是,由用戶編寫代碼控制這些事件的響應(yīng),這就是所謂的事件驅(qū)動編程。3 與數(shù)據(jù)庫的連接性 VISUAL BASIC提供了與底層數(shù)據(jù)庫系統(tǒng)緊密的連接。 VISUAL BASIC支持不同的關(guān)系數(shù)據(jù)庫管理系統(tǒng)
4、并充分發(fā)揮每一個數(shù)據(jù)庫的特長。在開發(fā)該圖書館管理系統(tǒng)時,VISUAL BASIC存取數(shù)據(jù)庫的方式有兩種:通過使用的ODBC接口。(ODBC(開放數(shù)據(jù)庫連接)是微軟公司的數(shù)據(jù)庫連接標(biāo)準(zhǔn))通過使用由VISUAL BASIC提供的專用的直接與數(shù)據(jù)庫相連的接口該系統(tǒng)程序是在應(yīng)用vb軟件程序的過程中,通過聲明和定義數(shù)據(jù)庫變量和記錄集變量將程序的實現(xiàn)與access數(shù)據(jù)庫連接起來。三、系統(tǒng)開發(fā)過程(一)建立數(shù)據(jù)庫Access數(shù)據(jù)庫中包括member、book、loan、admin(讀者表、圖書表、借閱信息表、管理員表)四個數(shù)據(jù)表,分別存放讀者信息、館藏圖書信息、讀者借閱信息、管理員信息。Admin(管理員表
5、)作為單獨的一個表,與其他三個表沒有直接聯(lián)系。book表中的isbn(圖書編號)與loan(借書表)中的isbn(圖書編號)具有一對多的關(guān)系,member(讀者表)中的nomber(借書證編號)與loan表中的member(圖書證編號)同樣具有一對多的關(guān)系。Loan表中另外添加了out_data和due_data兩個字段分別記錄讀者的借書時間和應(yīng)還時間。數(shù)據(jù)庫中表之間的聯(lián)系如下圖所示:(二)vb程序中連接數(shù)據(jù)庫在程序的設(shè)計過程中,直接通過vb語句連接數(shù)據(jù)庫,并沒有使用控件連接。定義數(shù)據(jù)庫變量的語句如下:Dim db1 As DatabaseDim db2 As DatabaseDim db3
6、As Database定義數(shù)據(jù)記錄集變量Dim rst1 As RecordsetDim rst2 As RecordsetDim rst3 As Recordset設(shè)置連接數(shù)據(jù)庫并打開數(shù)據(jù)庫中相應(yīng)的記錄表語句:Set db1 = Workspaces(0).OpenDatabase(App.Path & databasedatabase.mdb, False)Set rst1 = db1.OpenRecordset(member, dbOpenTable)打開member表Set db2 = Workspaces(0).OpenDatabase(App.Path & databasedata
7、base.mdb, False)Set rst2 = db2.OpenRecordset(loan, dbOpenTable)打開loan表Set db3 = Workspaces(0).OpenDatabase(App.Path & databasedatabase.mdb, False)Set rst3 = db3.OpenRecordset(book, dbOpenTable)打開book表在連接數(shù)據(jù)庫中數(shù)據(jù)表的過程中,通過索引,以便以后在數(shù)據(jù)表中查找數(shù)據(jù)。設(shè)定索引語句:rst1.index = nomberrst2.index = isbnrst3.index = isbn(三)設(shè)定管
8、理員的操作:管理員進入系統(tǒng)后,首先能夠看到當(dāng)前圖書館的存書情況以及借書情況,在該界面下進行添加圖書、還書、借書和查詢操作。顯示當(dāng)前館藏圖書情況的代碼實現(xiàn)為:LV2.View = lvwReport LV2.ColumnHeaders.Add , , 圖書編號 LV2.ColumnHeaders.Add , , 書名 LV2.ColumnHeaders.Add , , 作者 LV2.ColumnHeaders.Add , , 價格 LV2.ColumnHeaders.Add , , 數(shù)量 LV2.ColumnHeaders.Add , , 出版社LV2.ColumnHeaders.Add , ,
9、 出版日期 total = rst3.RecordCount LV2.ListItems.Clear rst3.MoveFirstFor i = 1 To total LV2.ListItems.Add i, , rst3.Fields(isbn) & vbNullString With LV2.ListItems(i) .SubItems(1) = rst3.Fields(bname) & vbNullString .SubItems(2) = rst3.Fields(author) & vbNullString .SubItems(3) = ¥ & rst3.Fields(price) .
10、SubItems(4) = rst3.Fields(total) & vbNullString .SubItems(5) = rst3.Fields(publish) & vbNullString .SubItems(6) = rst3.Fields(pdata) & vbNullString End Withrst3.MoveNextIf rst3.EOF Then Exit ForNext i借書情況的代碼實現(xiàn)同館藏圖書的代碼實現(xiàn)類似,在此不再重復(fù)給出。1 添加新書管理員點擊“添加新書”按鈕后,系統(tǒng)彈出添加新書的窗口添加圖書。將新添加的圖書記錄在數(shù)據(jù)庫中,新進圖書可能圖書館中已有,也可能沒
11、有,系統(tǒng)要能分別處理。若新添加的圖書在圖書館中已有記錄,則在圖書表中將總數(shù)增加,通過以下語句實現(xiàn):rst.Editrst.Fields(total) = rst.Fields(total) + Val(total.Text)rst.Update如果圖書館中沒有相應(yīng)記錄,則在圖書表中增加一條記錄,寫入其相關(guān)信息。通過以下語句實現(xiàn):rst.Seek =, isbn.TextIf rst.NoMatch Thenrst.AddNewrst.Fields(isbn) = isbn.Textrst.Fields(bname) = b_name.Textrst.Fields(author) = autho
12、r.Textrst.Fields(price) = Val(price.Text)rst.Fields(total) = Val(total.Text)rst.Fields(publish) = publish.Textrst.Fields(pdata) = pdata.Textrst.Fields(class) = class.Textrst.Update2 查詢圖書管理員通過輸入圖書編號查詢相關(guān)圖書,管理員窗口圖書管理界面顯示所查詢圖書的詳細(xì)信息在程序?qū)崿F(xiàn)過程中,用BookId作為全局變量,存放圖書的編號信息,具體由以下語句實現(xiàn):rst.Seek =, BookIdtxtBookHao.T
13、ext = BookIdtxtBookName.Text = rst.Fields(bname) & vbNullStringtxtChuBan.Text = rst.Fields(publish) & vbNullStringtxtCost.Text = rst.Fields(price) & EmptytxtLentDate = rst.Fields(pdata) & vbNullStringtxtType.Text = rst.Fields(class) & vbNullStringauthor.Text = rst.Fields(author) & vbNullString3 還書操作
14、:管理員在實現(xiàn)還書操作的過程中,分別輸入所借圖書編號和借書證號進行借書操作。在還書過程中涉及到對book表、loan表、member表的同時修改,首先在book表中對所還圖書的相應(yīng)圖書的數(shù)量(total字段)進行加1操作,然后在member表中對應(yīng)借書證號的借書數(shù)量(total字段)進行減1操作,最后將loan表中對應(yīng)的借書記錄刪除掉。刪除loan表中相應(yīng)記錄:rst.Delet修改book表中的記錄:rst2.Seek =, BookIdrst2.Editrst2.Fields(total) = rst2.Fields(total) + 1rst2.Update修改member表rst1.S
15、eek =, mAddEditIdrst1.Editrst1.Fields(total) = rst1.Fields(total) 1rst1.Update4 借書操作:工作人員通過此模塊來進行借閱記錄的查詢。該模塊提供了包括讀者編號、圖書編號兩種查詢條件,管理員根據(jù)這個查詢條件來進行查詢,既可以查詢出某本書。執(zhí)行結(jié)束操作過程中,管理員首先輸入借書證號,查詢是否存在該借書證號,若存在則顯示對應(yīng)的讀者信息,并執(zhí)行借書操作,否則彈出提示信息要求重新輸入正確的借書證號。借書過程中也涉及到對book表、member表、loan表的同時操作。在book表中相應(yīng)圖書的數(shù)量(total字段)減1,membe
16、r表中相應(yīng)讀者的借書量(total字段)加1,loan表中增加一條借書記錄。同時借書過程中系統(tǒng)自動檢查該用戶借書是否已達到六本,若已達到六本則不允許繼續(xù)借書。正確輸入借書證后進入借書窗口,系統(tǒng)通過查詢member表的相應(yīng)記錄,自動顯示當(dāng)前讀者的詳細(xì)信息,同時顯示當(dāng)前圖書館的藏書情況。讀者所能進行的操作只有根據(jù)相應(yīng)的圖書編號查看圖書,同時系統(tǒng)會將讀者查看的圖書的詳細(xì)信息顯示出來。具體代碼實現(xiàn)為:rst1.Seek =, mAddEditId顯示當(dāng)前讀者的信息nomber.Text = mAddEditIdtxtname.Text = rst1.Fields(name) & vbNullStrin
17、gtxtage.Text = rst1.Fields(age) & vbNullStringtxtphone.Text = rst1.Fields(telephone) & vbNullStringtxtaddress.Text = rst1.Fields(address) & vbNullStringtxtfa.Text = rst1.Fields(fa) & Empty查看相應(yīng)圖書編號圖書的詳細(xì)信息通過以下代碼實現(xiàn):Private Sub isbn_KeyPress(KeyAscii As Integer)If KeyAscii = 13 Then rst3.Seek =, isbn.Te
18、xt If rst3.NoMatch Then MsgBox 沒有此圖書編號,請重新填寫, 0 + 48, 填寫錯誤 isbn.SetFocus Frame4.Visible = False Exit Sub End If Frame4.Visible = True txtBookHao.Text = isbn.Text txtBookName.Text = rst3.Fields(bname) & vbNullString txtChuBan.Text = rst3.Fields(publish) & vbNullString txtCost.Text = rst3.Fields(price
19、) & Empty txtLentDate = rst3.Fields(pdata) & vbNullString txtType.Text = rst3.Fields(class) & vbNullString author.Text = rst3.Fields(author) & vbNullStringEnd IfEnd Sub單擊“借出圖書”按鈕后系統(tǒng)執(zhí)行借書操作。首先查看該圖書是否被全部借出,然后確定該讀者借書總數(shù)沒有超過六本,否則不允許借出。具體通過一下操作實現(xiàn)If rst3.Fields(total) = 6 Then MsgBox 該用戶借書已達到六本,不能再借!, 0 + 4
20、8, 提示 Exit SubEnd IfLoan表中添加一條記錄的代碼實現(xiàn):rst2.AddNewrst2.Fields(isbn) = txtBookHao.Textrst2.Fields(member) = nomber.Textrst2.Fields(uname) = txtname.Textrst2.Fields(bname) = txtBookName.Textrst2.Fields(price) = txtCost.Textrst2.Fields(publish) = txtChuBan.Textrst2.Fields(class) = txtType.Textrst2.Fields(author) = author.Textrst2.Update修改book表中的記錄:rst3.Seek =, BookId rst
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 網(wǎng)絡(luò)管理員職業(yè)素養(yǎng)及試題及答案
- 供應(yīng)鏈管理中的風(fēng)險考題及答案
- 在實踐中加深對知識的理解2025年計算機二級VB考試試題及答案
- 行政管理考試防范的知識盲點:試題及答案
- 關(guān)于網(wǎng)絡(luò)管理員考試的新探討及試題答案
- 2025玉米買賣合同
- 弘揚學(xué)生團結(jié)互助的精神計劃
- 行政法理論創(chuàng)新的路徑選擇試題及答案
- 代碼抽象與接口設(shè)計試題及答案
- 2025年軟件設(shè)計師復(fù)習(xí)全賬本及試題及答案
- NY∕T 3349-2021 畜禽屠宰加工人員崗位技能要求
- 工程造價司法鑒定實施方案
- 人工智能標(biāo)準(zhǔn)化白皮書
- 2021譯林版高中英語選擇性必修一課文翻譯
- 0720小罐茶品牌介紹
- 二級、三級電箱接線圖
- 2022年食品衛(wèi)生通則第三版(中文版)
- 頸椎功能障礙指數(shù),Neck Disabilitv Index,NDI
- 名著導(dǎo)讀《紅樓夢》PPT課件(完整版)
- 吉林省辦學(xué)基本標(biāo)準(zhǔn)手冊
- 4車道高速公路30米預(yù)應(yīng)力混凝土簡支T梁橋上部結(jié)構(gòu)設(shè)計_論文
評論
0/150
提交評論