網(wǎng)絡(luò)數(shù)據(jù)庫課程設(shè)計報告圖書借閱管理系統(tǒng)_第1頁
網(wǎng)絡(luò)數(shù)據(jù)庫課程設(shè)計報告圖書借閱管理系統(tǒng)_第2頁
網(wǎng)絡(luò)數(shù)據(jù)庫課程設(shè)計報告圖書借閱管理系統(tǒng)_第3頁
網(wǎng)絡(luò)數(shù)據(jù)庫課程設(shè)計報告圖書借閱管理系統(tǒng)_第4頁
網(wǎng)絡(luò)數(shù)據(jù)庫課程設(shè)計報告圖書借閱管理系統(tǒng)_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、網(wǎng)絡(luò)數(shù)據(jù)庫課程設(shè)計報告華 北 科 技 學(xué) 院課程設(shè)計說明書班級: 信管b082 學(xué)號: 姓名: 設(shè)計題目: 圖書借閱管理系統(tǒng) 設(shè)計時間: 20110627 至 20110701 指導(dǎo)教師: 評 語: 評閱成績: 評閱教師: 目錄1 引 言11.1課程設(shè)計選題11.2課程設(shè)計的目的11.3本選題的設(shè)計背景12 需求分析12.1 功能需求12.2 系統(tǒng)的開發(fā)運行環(huán)境13 總體設(shè)計23.1 系統(tǒng)體系結(jié)構(gòu)設(shè)計23.2系統(tǒng)功能模塊及主要類設(shè)計24 數(shù)據(jù)庫設(shè)計24.1 數(shù)據(jù)表設(shè)計(要體現(xiàn)數(shù)據(jù)完整性)24.2 存儲過程與觸發(fā)器設(shè)計24.3 索引設(shè)計24.4 安全性設(shè)計25 詳細設(shè)計25.1 登錄模塊25.2

2、 查詢模塊35.3 管理模塊36 小結(jié)和展望3參 考 文 獻3-19-1 引 言1.1課程設(shè)計選題圖書借閱管理系統(tǒng)1.2課程設(shè)計的目的使學(xué)生在充分理解網(wǎng)絡(luò)數(shù)據(jù)庫課程知識點的基礎(chǔ)上,初步掌握將數(shù)據(jù)庫sql server應(yīng)用于具體的管理信息系統(tǒng)中。把數(shù)據(jù)庫原理、網(wǎng)絡(luò)數(shù)據(jù)庫、高級語言有機的結(jié)合在一起,以數(shù)據(jù)庫原理的理論為指導(dǎo)設(shè)計數(shù)據(jù)庫,再將數(shù)據(jù)庫設(shè)計應(yīng)用到具體實例中。達到以vb、java等可視化語言為前臺開發(fā)軟件,sql server數(shù)據(jù)庫作為后臺數(shù)據(jù)庫,開發(fā)出一個較為完善的數(shù)據(jù)庫管理應(yīng)用系統(tǒng)。1.3本選題的設(shè)計背景圖書館是高等院校的重要組成部門,是教師和學(xué)生獲取知識的重要場所。由于圖書館主要從事大

3、量的圖書資料的儲存和流通。所以一直以來,計算機在圖書館的圖書管理中得到了廣泛的應(yīng)用。目前,由于各大高校的學(xué)生和教師數(shù)量日益增加,借還書籍情況也隨之日益增長。本系統(tǒng)設(shè)計的目的就是要達到對教師、學(xué)生、以及工作人員對圖書借還的日常管理,能快速完成,并對信息進行數(shù)據(jù)庫管理。為了適應(yīng)學(xué)校中小型圖書館業(yè)務(wù)發(fā)展的需要,解決問題。所以設(shè)計了圖書借閱管理系統(tǒng),本系統(tǒng)不僅能利用當前的軟件開發(fā)技術(shù)和校園網(wǎng)建設(shè)成果,方便讀者查詢、借閱操作,解決流通中存在的問題。而且,能結(jié)合本學(xué)校資金投入有限、圖書需求量大等特點,對圖書管理中各業(yè)務(wù)環(huán)節(jié)的加強管理。所以系統(tǒng)在實現(xiàn)時,實現(xiàn)傳統(tǒng)的登錄、查詢和管理等環(huán)節(jié)。2 需求分析2.1

4、功能需求系統(tǒng)的功能需求具體體現(xiàn)在通過對系統(tǒng)設(shè)計一般讀者、借閱工作人員和系統(tǒng)管理員三級用戶,分別實現(xiàn)相應(yīng)的功能,讀者登錄系統(tǒng)只能查詢自己的信息和自己的借閱信息以及查詢圖書的信息;工作人員登錄系統(tǒng)只能查詢圖書信息和借閱信息,并可以負責對讀者借閱信息的確認;系統(tǒng)管理員是負責對整個系統(tǒng)的維護和管理,他們可以對系統(tǒng)的各個模塊進行操作,因此責任非常重大,這就要求管理員需要很高的專業(yè)技術(shù)和很高的素質(zhì)修養(yǎng)。而完成以上得功能需要強大的數(shù)據(jù)庫做后臺,本系統(tǒng)運用vb前臺界面與后臺數(shù)據(jù)庫連接實現(xiàn)上述功能,這就要求數(shù)據(jù)庫結(jié)構(gòu)能充分滿足各種信息的輸出和輸入。 針對一般圖書管理系統(tǒng)的需求,設(shè)計如下面所示的數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu):

5、(1)圖書信息(數(shù)據(jù)項):isbn、圖書名稱、作者、出版社、價格、復(fù)本量、庫存量、備注(2)讀者信息(數(shù)據(jù)項):借書證號、姓名、性別、出生日期、年齡、系別、專業(yè)、借書數(shù)量、照片(3)借閱信息(數(shù)據(jù)項) 借書證號、isbn、圖書編號、借書日期(4)借閱歷史表(數(shù)據(jù)項):借書證號、isbn、圖書編號、借書日期、還書日期(5)管理人員登陸(數(shù)據(jù)項):賬號、密碼、姓名、性別(6)工作人員登陸(數(shù)據(jù)項):賬號、密碼、姓名、性別2.2 系統(tǒng)的開發(fā)運行環(huán)境本系統(tǒng)開發(fā)平臺: vb可視化高級語言+ sql server本系統(tǒng)運行環(huán)境: windows7操作系統(tǒng)3 總體設(shè)計3.1 系統(tǒng)體系結(jié)構(gòu)設(shè)計本系統(tǒng)主要涉及三

6、個模塊:登錄模塊、查詢模塊、后臺管理模。登錄模塊主要對用戶的身份進行授權(quán)和驗證,登錄系統(tǒng)后,讀者可以通過圖書借閱模塊進行圖書借閱,對于借書數(shù)量有限制,一個讀者最多可以借閱5本書,但一本書只能被一個讀者借閱,本系統(tǒng)可以有多個借閱工作人員和系統(tǒng)模塊的操作人員,但只能有一個管理人員, 它們之間的關(guān)系可以用er圖來描述,如下圖:n工作人員讀者nm查詢m 圖書借閱m1系統(tǒng)管理員管理3.2系統(tǒng)功能模塊及主要類設(shè)計3.2.1 系統(tǒng)功能模塊圖:圖書借閱管理系統(tǒng)登錄模塊管理人員登錄普通用戶登錄工作人員登錄讀者信息查詢圖書信息查詢讀者信息管理工作人員查詢工作人員管理借閱信息確認借閱信息查詢借閱信息管理圖書信息管理

7、借閱信息查詢圖書信息查詢3.2.2系統(tǒng)的結(jié)構(gòu)描述在本系統(tǒng)中,首先在登錄模塊為不同用戶設(shè)置不同的登錄級別,并對用戶信息進行驗證,不同的用戶登錄進入主界面。主界面分為登錄系統(tǒng),查詢系統(tǒng)(包括讀者信息查詢和圖書信息查詢等),管理系統(tǒng)(包括讀者信息管理和圖書信息管理),工作人員管理和退出。普通用戶登錄系統(tǒng)后,只能進行查詢圖書信息和自己的借閱信息。工作人員登錄系統(tǒng)后,只能進行查閱圖書信息和讀者借閱信息的確認操作。系統(tǒng)管理員登錄系統(tǒng)后可以對系統(tǒng)進行一切操作。包括對圖書的查詢與管理,工作人員的查詢與管理等。4 數(shù)據(jù)庫設(shè)計4.1 數(shù)據(jù)表設(shè)計 本系統(tǒng)的數(shù)據(jù)庫結(jié)構(gòu)表主要包括,讀者信息表(reader_n31)、圖

8、書信(book_n31)、借閱信息表(lend_n31)、工作人員表(worker_n31)、管理員表 (manager_n31),下面列出各表的結(jié)構(gòu)說明: 讀者信息表:本表主要存儲讀者的基本信息,如下表:字段名數(shù)據(jù)類型可否為空說明借書證號char(10)not null 主鍵 姓名 char(10)not null 性別defaultnull默認1(1或0)出生日期datenull 年齡intnull 系別 char(10)null 專業(yè) char(12)null結(jié)束數(shù)量intnull 照片varbiarynull圖書信息表:本表主要存儲圖書的基本信息,如下表:字段名數(shù)據(jù)類型可否為空說明is

9、bn號char(20)not null 主鍵圖書名稱char(20)not null 出版社char(20)null作者char(10)null 價格floatnull 復(fù)本量 intnull 庫存量intnull備注summarynull 圖書借閱信息表:本表主要存儲圖書借閱的基本信息,如下表:字段名數(shù)據(jù)類型可否為空說明isbn號char(20)not null 主鍵借書證號char(12)not null 圖書編號char(20)null借書日期datenull 圖書借閱歷史信息表:本表主要存儲讀者借閱歷史的基本信息,如下表:字段名數(shù)據(jù)類型可否為空說明isbn號char(20)not nu

10、ll 主鍵借書證號char(12)not null 圖書編號char(20)null借書日期datenull借書日期datenull 工作人員信息表:本表主要存儲借閱工作人員的基本信息,如下表:字段名數(shù)據(jù)類型可否為空說明賬號 char(10)not null主鍵 密碼 char(10)not null 姓名char(10)not null性別defaultnull默認1(1或0)管理人員信息表:本表主要存儲管理人員的基本信息,如下表:字段名數(shù)據(jù)類型可否為空說明賬號 char(10)not null主鍵 密碼 char(10)not null 姓名char(10)not null性別defaul

11、tnull默認1(1或0)4.2 存儲過程與觸發(fā)器設(shè)計數(shù)據(jù)庫設(shè)計存儲過程及觸發(fā)器主要目的是方面數(shù)據(jù)的查找更新和修改,以及通過前臺的操作將修改后的信息存入到后臺數(shù)據(jù)庫中,本系統(tǒng)主要用到了讀者信息表、圖書信息表、圖書借閱表的存儲過程,將后臺數(shù)據(jù)庫中的表中信息通過sql語句調(diào)入到vb前臺界面進行顯示,本系統(tǒng)的主要存儲過程和觸發(fā)器如下:4.2.1 存儲過程查詢指定讀者當前的借書情況的存儲過程,如下圖:表reader_n31的增刪改的存儲過程,如下圖: 4.4.2 觸發(fā)器向借閱信息表插入記錄并判斷插入條件的觸發(fā)器,如下圖:4.3 索引設(shè)計數(shù)據(jù)庫的索引設(shè)計主要是對信息的規(guī)范以及方便用戶使用數(shù)據(jù)庫能方便的進

12、行查詢,輸入與輸出。本數(shù)據(jù)庫設(shè)計的索引如下:reader_n31表中的readerid字段的唯一索引屬性,如下圖:book_n31表中的bname字段的非聚集索引屬性,如下圖:4.4 安全性設(shè)計圖書借閱管理系統(tǒng)的安全性通過設(shè)置用戶等級和權(quán)限來實現(xiàn)的,本系統(tǒng)分為三級用戶,一級用戶為圖書為具有很高專業(yè)技術(shù)和很好的素質(zhì)修養(yǎng)的系統(tǒng)管理員,他的權(quán)限是對整個系統(tǒng)操作;二級用戶為技術(shù)維護人員,他們的權(quán)限是負責數(shù)據(jù)庫的部分表的功能操作;三級用戶為借閱工作人員和普通的讀者,他們的權(quán)限僅僅是對表進行查詢。下面僅列出設(shè)置系統(tǒng)管理員的級別和權(quán)限。系統(tǒng)管理員的對某一表的操作權(quán)限,如下圖:5 詳細設(shè)計5.1 登錄模塊5.

13、1.1功能設(shè)計登錄模塊是進入主界面的接口,主要功能是對用戶的登錄進行識別和分級,分為三級用戶,主要包括普通讀者和借閱工作人員以及系統(tǒng)管理員,不同的用戶調(diào)入后臺數(shù)據(jù)表中的信息進行登錄,然后進入主界面進行相應(yīng)的操作。5.1.2.界面設(shè)計登錄界面,如下圖用戶登錄后進入主界面,如下圖:5.1.3模塊算法(重要代碼段)private sub command5_click()if text1.text = or text2.text = then msgbox 用戶名或密碼為空!, 48, 警告else adodc1.connectionstring = provider=sqloledb.1;integ

14、rated security=sspi;persist security info=false;initial catalog=圖書借閱系統(tǒng)n31 adodc1.recordsource = select readerid from reader_n31 where readerid= & trim(text1.text) & and readerid= & text2.text & adodc1.refresh if adodc1.recordset.eof then msgbox 用戶名或密碼不正確,重新輸入!, 48, 警告 text1.text = text2.text = text1

15、.setfocus else formmain.show formmain.manage.enabled = false formmain.worker.enabled = false formmain.lselect.enabled = false unload me end ifend ifprivate sub command2_click()a = msgbox(真的要退出嗎?, 1 + 32, 提示)if a = vbok then unload meend ifend sub5.1.4調(diào)試與測試 登錄系統(tǒng)通過調(diào)用模塊實現(xiàn)數(shù)據(jù)庫的鏈接,然后運行結(jié)果,調(diào)試過程中出現(xiàn)數(shù)據(jù)庫連接不上的提示

16、,經(jīng)過查閱資料才得到解決。5.2 查詢模塊5.2.1功能設(shè)計查詢模塊主要功能是提供給用戶查詢界面讓用戶可以根據(jù)自己的需要進行相應(yīng)的查詢,這里主要列出讀者信息查詢和圖書信息查詢界面。5.2.2界面設(shè)計讀者信息查詢界面,讀者可以進行條件查詢,如下圖:5.2.3模塊算法(重要代碼段)option explicitpublic txtsql as stringdim mrc as adodb.recordsetprivate sub command1_click() if combo2.text = 借書證號查詢 then txtsql = select * from reader_n31 where

17、 readerid like % + trim(text1.text) + % adodc2.connectionstring = str adodc2.recordsource = txtsql adodc2.refresh end if if combo2.text = 姓名 then txtsql = select * from reader_n31 where rname like % + trim(text1.text) + % adodc2.connectionstring = str adodc2.recordsource = txtsql adodc2.refreshend i

18、f.private sub form_load() str = provider=sqloledb.1;integrated security=sspi;persist security info=false;initial catalog=圖書借閱系統(tǒng)n31;data source=localhost;set cnn = new adodb.connectioncnn.connectionstring = strcnn.openadodc2.cursorlocation = aduseclientadodc2.commandtype = adcmdtextadodc2.connections

19、tring = stradodc2.recordsource = select * from lend_n31adodc2.refreshend subprivate sub command2_click()formmain.showunload meend sub5.2.4調(diào)試與測試查詢系統(tǒng)主要是提供用戶查詢的界面,再設(shè)計功能實現(xiàn)時首先利用模塊進行數(shù)據(jù)庫連接,然后通過sql語句將表中的數(shù)據(jù)調(diào)入到前臺界面,調(diào)試過程中有時會出現(xiàn)“事實事錯誤91:with 變量未定義”以及“select語法附近有錯誤”等錯誤,最后通過上網(wǎng)查資料以及向同學(xué)詢問,把問題給逐一排除了。5.3 管理模塊5.3.1 功能設(shè)

20、計管理模塊主要包括讀者信息管理,圖書信息管理以及圖書借閱信息管理,這一模塊主要功能是提供系統(tǒng)管理員使用,一般用戶和工作人員沒有權(quán)限對此模塊進行操作,這里只列出圖書信息管理模塊界面5.3.2 界面設(shè)計圖書信息管理界面,如下圖:點擊更新按鈕,可以查詢到添加的結(jié)果,如下圖:5.3.3模塊算法(重要代碼段)option explicitpublic txtsql as stringdim id as stringdim mrc as adodb.recordsetprivate sub showdata() dim j as integer dim i as integer dim msgtext,

21、txtsql as string dim cnn as adodb.connection txtsql = select * from book_n31set cnn = new adodb.connectioncnn.connectionstring = concnn.openset datagrid1.datasource = adodc1adodc1.cursorlocation = aduseclientadodc1.commandtype = adcmdtextadodc1.connectionstring = cnnadodc1.recordsource = txtsqladodc

22、1.refreshdatagrid1.refreshend subprivate sub command1_click()dim str as stringdim cnn as new adodb.connection command1.caption = 添加 set cnn = new adodb.connection cnn.connectionstring = con cnn.open cnn.execute exec book_do_insert & val(1) & , & trim(text1.text) & , & trim(text2.text) & , & trim(tex

23、t3.text) & , & trim(text4.text) & , & val(trim(text5.text) & , & val(text6.text) & , & val(text7.text) & , & trim(text8.text) & , & str & cnn.close msgbox 添加成功!, vbexclamation id = trim(text1) showdataend subprivate sub command2_click()dim str as stringdim cnn as new adodb.connection command2.captio

24、n = 修改 set cnn = new adodb.connection cnn.connectionstring = con cnn.open cnn.execute exec book_do_insert & val(2) & , & trim(text1.text) & , & trim(text2.text) & , & trim(text3.text) & , & trim(text4.text) & , & val(trim(text5.text) & , & val(text6.text) & , & val(text7.text) & , & trim(text8.text)

25、 & , & str & cnn.close msgbox 修改成功!, vbexclamation id = trim(text1) showdataend subprivate sub command3_click()dim str as stringdim cnn as new adodb.connection command1.caption = 刪除 set cnn = new adodb.connection cnn.connectionstring = con cnn.open cnn.execute exec book_do_insert & val(3) & , & trim

26、(text1.text) & , & trim(text2.text) & , & trim(text3.text) & , & trim(text4.text) & , & val(trim(text5.text) & , & val(text6.text) & , & val(text7.text) & , & trim(text8.text) & , & str & cnn.close msgbox 刪除成功!, vbexclamation id = trim(text1) showdataend subprivate sub command4_click()showdataend subprivate sub command5_click()formmain.showunload meend subprivate sub form_load() text1.text = text2.text = text3.text = text4.text = text5.text = text6.text = text7.text = text8.text = end sub5.2.4調(diào)試與測試管理界面的設(shè)計以及功能的實現(xiàn)遇到了些問題,本功能的主要是通過是通過連接數(shù)據(jù)庫,然后利用sql語句調(diào)用數(shù)據(jù)庫中的存儲過程“book_do_insert” 然后將添加的信息寫入到數(shù)據(jù)庫中的

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論