版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、 計算機科學與技術(shù)學院課程設(shè)計 圖書館管理信息系統(tǒng)班 級 學 號 姓 名 指 導 教 師 成 績 2010年 12月 目 錄1、前言 11.1項目意義11.2問題描述12、系統(tǒng)功能13、概念設(shè)計13.1系統(tǒng)分析 13.1.1數(shù)據(jù)需求23.1.2事物需求23.1.3關(guān)系模式23.1.4數(shù)據(jù)流程圖23.1.5數(shù)據(jù)字典33.2概要設(shè)計 93.3邏輯設(shè)計123.4 關(guān)系圖144、物理設(shè)計145、詳細設(shè)計145.1數(shù)據(jù)庫設(shè)計155.2數(shù)據(jù)初始化175.3數(shù)據(jù)庫用戶權(quán)限管理175.4建立觸發(fā)器,存儲過程186、系統(tǒng)實現(xiàn)187、總結(jié)26參考文獻27致謝271、前言1.1項目意義數(shù)據(jù)庫課程設(shè)計是為數(shù)據(jù)庫原理及
2、應用課程而獨立開設(shè)的實踐性課程,對于鞏固數(shù)據(jù)庫知識,加強學生的實際動手能力和提高學生綜合素質(zhì)十分必要。通過本實驗達到以下目的:(1) 培養(yǎng)學生具有c/s和b/s/s模式的數(shù)據(jù)庫應用軟件系統(tǒng)的設(shè)計和開發(fā)能力。(2) 熟練掌握一種數(shù)據(jù)庫系統(tǒng)(如sql server)的使用。(3) 熟練掌握一種數(shù)據(jù)庫應用軟件開發(fā)工具(如c#)的使用。通過設(shè)計實際的數(shù)據(jù)庫系統(tǒng)應用課題,進一步熟悉數(shù)據(jù)庫管理系統(tǒng)的操作技術(shù),提高動手能力,提高分析問題和解決問題的能力。1.2問題描述1) 學校圖書室有各種圖書一萬多冊。2) 每種圖書都有書名、書號(isbn)、一名或多名作者(譯者)、出版社等。3) 借書證記錄有借閱者的借書
3、證編號,讀者姓名,讀者性別,讀者種類,登記時期等。4) 憑借書證借書,學生每次最多能借5本書,借書期限最長為30天,老師每次做多能借10本,借書期限最長為60天。2、系統(tǒng)功能 實現(xiàn)新進圖書的數(shù)據(jù)錄入和下架圖書的數(shù)據(jù)刪除。1) 實現(xiàn)借閱者圖書證信息的錄入和刪除。2) 實現(xiàn)對所有購進圖書的分類查詢和分類統(tǒng)計。3) 能夠按書名、作者等分類查詢現(xiàn)有圖書的數(shù)量。4) 能夠記錄借閱者的個人資料和所借圖書的書名、書號、借書時間等5) 能夠進行借書還書處理。6) 能夠進行借書逾期罰款處理。7) 能夠進行用戶管理。9)設(shè)計一完整的數(shù)據(jù)庫。要求掌握數(shù)據(jù)庫的設(shè)計的每個步驟;掌握數(shù)據(jù)設(shè)計各階段的輸入、輸出、設(shè)計環(huán)境、
4、目標和方法;熟練的使用sql語言實現(xiàn)數(shù)據(jù)庫以及數(shù)據(jù)庫重要對象的建立、應用和維護。 3概念設(shè)計3.1需求分析3.1.1數(shù)據(jù)需求圖書館管理信息系統(tǒng)需要完成功能主要有:讀者基本信息的輸入,包括借書證編號、讀者姓名、讀者性別等。讀者基本信息的查詢、修改,包括讀者借書證編號、讀者姓名、讀者性別等。書籍類別標準的制定、類別信息的輸入,包括類別編號、類別名稱。書籍類別信息的查詢、修改,包括類別編號、類別名稱。書籍庫存信息的輸入,包括書籍編號、書籍名稱、書籍類別、作者姓名、出版社名稱、出版日期、登記日期。書籍庫存信息的查詢,修改,包括書籍編號、書籍名稱、書籍類別、作者姓名、出版社名稱、出版日期登記日期等。借書
5、信息的輸入,包括讀者借書證編號、書籍編號、借書日期。借書信息的查詢、修改,包括借書證編號、借書證編號、讀者姓名、書籍編號、書籍名稱、借書日期等。還書信息的輸入,包括借書證編號、書籍編號、還書日期。 還書信息的查詢和修改,包括還書讀者借書證編號、讀者姓名、書籍編號、書籍名稱、借書日期、還書日期等。超期還書罰款輸入,還書超出期限包括超出期限還書的讀者借書證號,書籍編號,罰款金額。超期還書罰款查詢,刪除,包括讀者借書證編號、讀者姓名、書籍編號、書籍名稱,罰款金額等管理員管理:包括創(chuàng)建讀者用戶信息、刪除讀者用戶信息、添加圖書信息、刪除圖書信息。超級管理員管理:包括創(chuàng)建管理員用戶信息、刪除管理員用戶信息
6、、創(chuàng)建讀者用戶信息、刪除讀者用戶信息、添加圖書信息、刪除圖書信息。3.1.2事物需求在讀者信息管理部分,要求:a.可以查詢讀者信息。b.可以對讀者信息進行添加及刪除的操作。在書籍信息管理部分,要求:a.可以瀏覽書籍信息,要求:b.可以對書籍信息進行維護,包括添加及刪除的操作。在借閱信息管理部分,要求:。a.可以瀏覽借閱信息。b.可以對借閱信息進行維護操作。在歸還信息管理部分,要求:a.可以瀏覽歸還信息b.對歸還信息可修改維護操作在管理者信息管理部分,要求:a.顯示當前數(shù)據(jù)庫中管理者情況。b.對管理者信息維護操作。在罰款信息管理部分,要求:a.可以瀏覽罰款信息b.對罰款信息可以更新3.1.3關(guān)系
7、模式(1)書籍類別(類別編號,類別名)(2)讀者(借書證編號,讀者姓名,讀者性別,讀者種類,登記時期,可借書數(shù) , 已借書數(shù),逾期未還書數(shù))(3) 管理員(管理員編號,管理員姓名,管理員密碼,管理員權(quán)限)(4) 超級管理員(管理員編號,管理員姓名,管理員密碼,管理員權(quán)限)(5)書籍(書籍編號,書籍名稱,書籍類別,書記作者,出版社名稱,出版日期,登記日期)(6)借閱(借書證編號,書籍編號,讀者借書時間)(7)還書(借書證編號,書籍編號,讀者還書時間)(8)罰款(借書證編號,讀者姓名,借書證編號,書籍編號,讀者借書時間)3.1.4數(shù)據(jù)流程圖(dfd)通過對系統(tǒng)需求的調(diào)查分析,細化軟件功能,把系統(tǒng)劃
8、分幾四個子系統(tǒng),明確每個子系統(tǒng)所要完的主要邏輯功能,采用以圖形的方式描繪數(shù)據(jù)在系統(tǒng)中流動和處理。數(shù)據(jù)流圖是用來表示系統(tǒng)的邏輯模型。電子圖書管理系統(tǒng)讀者超級管理員查詢信息圖書信息圖書信息息圖書信息息圖書管理員讀者圖1-1頂層數(shù)據(jù)流圖f5p3d1d5f6借還圖書管 理p4d2d3d4登 錄p1圖書查詢p2f4f1f2f3f7圖1-2一層數(shù)據(jù)流圖注:d1 圖書數(shù)據(jù)庫d2 讀者數(shù)據(jù)庫 d3 管理員數(shù)據(jù)庫p2.1選擇查詢f4.1f4p2.2直接查詢d1p2.3多條件查詢f7f4.2d4 圖書分類數(shù)據(jù)庫d5 借書記錄數(shù)據(jù)庫f1-f3 登錄信息f4,f5圖書信息f6 各種管理信息f7 圖書信息圖1-3二層數(shù)
9、據(jù)流圖f5d3p3.1選擇p3.2借書d1p3.3還書d4f5f5圖1-4三層數(shù)據(jù)流圖3.1.5數(shù)據(jù)字典 為了使各數(shù)據(jù)流,數(shù)據(jù)處理過程,存儲過程不能反映其中的數(shù)據(jù)成,數(shù)據(jù)項目,數(shù)據(jù)特性,所以用數(shù)據(jù)字典來對數(shù)據(jù)流圖中的各成份進行具體的定義,為系統(tǒng)的分析,設(shè)計及以后的實現(xiàn)提供供有關(guān)元素一致性定義和詳細的描述:數(shù)據(jù)流字典數(shù)據(jù)流名稱:讀者登錄 標志符:f1別名:無來源:讀者去向:查詢處理過程(p2)數(shù)據(jù)組成:編號+姓名數(shù)據(jù)流名稱:管理員登錄(p3) 標志符:f2別名:無來源:管理員去向:借還處理過程數(shù)據(jù)組成:編號+姓名+密碼+登錄權(quán)限數(shù)據(jù)流名稱:超級管理員登錄 標志符:f3別名:無來源:超級管理員去向
10、:系統(tǒng)管理處理過程(p4)數(shù)據(jù)組成:編號+姓名+密碼+登錄權(quán)限數(shù)據(jù)流名稱:圖書查詢 標志符:f4別名:無來源:讀者去向: 查詢處理過程(p2)數(shù)據(jù)組成:圖書編號|圖書書名|圖書作者|圖書出版社數(shù)據(jù)流名稱:直接圖書查詢 標志符:f4.1別名:無來源:讀者去向: 直接查詢處理過程(p4.2)數(shù)據(jù)組成:圖書編號|圖書書名|圖書作者|圖書出版社數(shù)據(jù)流名稱:多條件圖書查詢 標志符:f4.2別名:無來源:讀者去向: 多條件查詢處理過程(p4.3) 數(shù)據(jù)組成:圖書編號+圖書書名+作者+出版社+圖書所屬大類+圖書屬小類數(shù)據(jù)流名稱:圖書借還 標志符:f5別名:無來源:管理員去向: 借還處理過程(p3)數(shù)據(jù)組成:
11、圖書編號+借書證編號+借書日期+逾期標識數(shù)據(jù)流名稱:系統(tǒng)管理 標志符:f6別名:無來源:超級管理員去向: 查詢處理過程(p4)數(shù)據(jù)組成:各種管理信息,詳情見f6.1-f6.5數(shù)據(jù)流名稱:書類管理 信息 標志符:f6.1別名:無來源:超級管理員去向: 書類管理處理過程(p4.2)數(shù)據(jù)組成:圖書大類名+0圖書類名30數(shù)據(jù)流名稱:圖書管理信息 標志符:f6.2別名:無來源:超級管理員去向: 圖書管理處理過程(p4.3)數(shù)據(jù)組成:書編號+書名+庫存數(shù)據(jù)量+作者+所屬書大類+所屬圖書小類|出版社|價格數(shù)據(jù)流名稱:逾期圖書管理信息 標志符:f6.3別名:無來源:超級管理員去向: 逾期圖書管理處理過程(p4
12、.4)數(shù)據(jù)組成:借書期限數(shù)據(jù)流名稱:讀者管理信息 標志符:f6.4別名:無來源:超級管理員去向: 書類管理處理過程(p4.5)數(shù)據(jù)組成:借書證編號 + 讀者姓名 + 可借書數(shù) + 已借書數(shù)+ 逾期未還書數(shù)+性別+職務+工作單位+聯(lián)系電話數(shù)據(jù)流名稱:管理員管理信息 標志符:f6.5別名:無來源:超級管理員去向: 管理員管理處理過程(p4.6)數(shù)據(jù)組成:管理員編號+管理員姓名+登錄密碼+授權(quán)等級數(shù)據(jù)存儲字典:數(shù)據(jù)存儲名稱:圖書數(shù)據(jù)庫 標志符:d1描述:圖書的詳細資料流入數(shù)據(jù)流:f6.2涉及處理:p4.2,p2.2,p2.3,p3.2,p3.3,p4.4數(shù)據(jù)組成:圖書編號+圖書書名+作者+出版社+圖
13、書所屬大類+圖書屬小類數(shù)據(jù)存儲名稱:讀者數(shù)據(jù)庫 標志符:d2描述:讀者的詳細資料流入數(shù)據(jù)流:f6.4涉及處理:p4.4,p2.2,p2.3,p3.2,p3.3,p4.4數(shù)據(jù)組成:借書證編號 + 讀者姓名 + 可借書數(shù) + 已借書數(shù)+ 逾期未還書數(shù)+性別+讀者種類+登記時間數(shù)據(jù)存儲名稱:管理員數(shù)據(jù)庫 標志符:d3描述:管理員的詳細資料流入數(shù)據(jù)流:f6.5涉及處理:p1,p4.6數(shù)據(jù)組成:管理員編號+管理員姓名+登錄密碼+授權(quán)等級數(shù)據(jù)存儲名稱:圖書分類數(shù)據(jù)庫 標志符:d4描述:圖書分類的詳細資料流入數(shù)據(jù)流:f6.3涉及處理:p4.4,p5.2,p5.3數(shù)據(jù)組成:圖書大類名+0圖書類名30 數(shù)據(jù)存儲
14、名稱:借書記錄數(shù)據(jù)庫 標志符:d5描述:借書所記錄的詳細資料流入數(shù)據(jù)流:f6.1涉及處理:p4.2數(shù)據(jù)組成:圖書編號+借書證編號+借書日期+逾期標識數(shù)據(jù)處理字典:數(shù)據(jù)處理名稱:用戶登錄 標志符:p1處理定義:登錄系統(tǒng) 激發(fā)條件:所輸入的編號和密碼正確輸入:f1,f2,f3輸出:f4,f5,f6數(shù)據(jù)處理名稱:讀者查詢 標志符:p2處理定義:查詢圖書信息 激發(fā)條件:所輸入圖書信息找到輸入:f4輸出:f7數(shù)據(jù)處理名稱:查詢選擇 標志符:p2.1處理定義:選擇查詢方式 激發(fā)條件:已選擇查詢方式輸入:f4輸出:f4.1,f42數(shù)據(jù)處理名稱:多條件查詢 標志符:p2.2處理定義:查詢圖書信息 激發(fā)條件:所
15、輸入圖書信息找到輸入:f4.2輸出:f7數(shù)據(jù)處理名稱:直接查詢 標志符:p2.3處理定義:直接查詢圖書信息 激發(fā)條件:所輸入圖書信息找到輸入:f4.1輸出:f7數(shù)據(jù)處理名稱:借還書 標志符:p3處理定義:借書和還書 激發(fā)條件:所輸入圖書信息找到輸入:f5輸出:d4數(shù)據(jù)處理名稱:選擇 標志符:p3.1處理定義:選擇借書還是還書 激發(fā)條件:選擇輸入:f5輸出:d1、d4數(shù)據(jù)處理名稱:借書 標志符:p3.2處理定義:借書 激發(fā)條件:圖書編號輸入:f5輸出:d1、d4數(shù)據(jù)處理名稱:管理系統(tǒng) 標志符:p4處理定義:管理系統(tǒng)和各種信息 激發(fā)條件:選擇管理子功能輸入:f6輸出:f6.1-f6.5數(shù)據(jù)處理名稱
16、:管理選擇 標志符:p4.1處理定義:選擇管理功能 激發(fā)條件:選擇輸入:f6輸出:d1-d5數(shù)據(jù)處理名稱:圖書分類管理 標志符:p4.2處理定義:圖書分類增加,修改,刪除 激發(fā)條件:輸入圖書分類信息輸入:f6.1輸出:d5數(shù)據(jù)處理名稱:圖書管理 標志符:p4.3處理定義:圖書信息增加,修改,刪除激發(fā)條件:輸入各種圖書信息輸入:f6.2輸出:d1數(shù)據(jù)處理名稱:圖書逾期管理 標志符:p4.4處理定義:查詢逾期圖書的編號或讀者 激發(fā)條件:選擇查詢方式輸入:f6.3輸出:d4,d2數(shù)據(jù)處理名稱:讀者管理 標志符:p4.5處理定義:讀者信息增加,修改,刪除 激發(fā)條件:輸入各種讀者信息輸入:f6.4輸出:
17、d2數(shù)據(jù)處理名稱:管理員登錄管理 標志符:p4.6處理定義:管理員信息增加,修改,刪除激發(fā)條件:輸入各種管理員信息輸入:f6.5輸出:d33.2 概要設(shè)計根據(jù)1)所要實現(xiàn)的功能設(shè)計,可能建立它們之間的關(guān)系,進而實現(xiàn)邏輯結(jié)構(gòu)功能。圖書管理信息系統(tǒng)可以劃分的實體有:書籍類別信息實體、讀者信息實體、書籍信息實體、借閱記錄信息實體,歸還記錄信息實體。用e-r圖一一描述這些實體。書籍類別類別編號類別名稱類別實體圖:圖2-1書籍類別實體及其屬性圖讀者信息實體圖:可借書數(shù)已借書數(shù)逾期未還書數(shù)讀者讀者姓名讀者性別讀者種類e登記時間讀者借書證編號圖2-2 讀者實體及其屬性圖管理員實體圖管理員管理員姓名管理員編號
18、管理員密碼管理員權(quán)限圖2-3管理員實體及其屬性圖超級管理員管理員姓名管理員編號管理員密碼管理員權(quán)限超級管理員實體圖圖2-4超級管理員實體及其屬性圖書籍書籍編號書籍名稱書籍類別編號書籍作者出版時間收錄時間是否被借出版社書籍實體圖:圖2-5書籍實體及其屬性圖借閱記錄信息實體圖:讀者借書證編號書籍類別編號借閱時間隔借閱記錄信息圖2-6 借閱記錄信息實體及其屬性圖歸還記錄信息讀者借書證編號書籍類別編號歸還時間隔歸還記錄信息實體圖:圖2-7記錄信息實體及其屬性圖罰款信息實體圖:書籍類別編號罰款信息實體實體罰款金額讀者姓名讀者借書證編號書籍名稱借閱時間隔圖2-8罰款信息實體及其屬性圖總的信息實體e-r圖:
19、11n信息登記讀者書籍書類別歸還借閱罰款罰款信息還書信息借閱信息實體mnmnmnn1m創(chuàng)建1管理nnn管理m管理員超級管理員創(chuàng)建1mn出具罰款單圖2-9總的信息實體e-r圖3.3邏輯設(shè)計表3-1 book_sytle 書籍類別信息表表中列名數(shù)據(jù)類型可否為空說明bookstylenovarcharnot null(主鍵)種類編號bookstylevarcharnot null種類名稱表3-2system_readers讀者信息表格表中列名數(shù)據(jù)類型可否為空說明readeridvarcharnot null(主鍵)讀者借書證號readernamevarcharnot null讀者姓名readerse
20、xvarcharnot null讀者性別readertypevarcharnot null讀者種類regdatedatetimenull登記日期booktotalintnull可借書數(shù)borrowednumintnull已借書數(shù)overduenoreturnnumintnull逾期未還書數(shù)表3-3system_book書籍信息表表中列名數(shù)據(jù)類型可否為空說明bookidvarcharnot null(主鍵)書籍編號booknamevarcharnot null書籍名稱續(xù)表3-3bookstylevarcharnot null書籍類別bookauthorvarcharnot null書籍作者boo
21、kpubvarcharnull出版社名稱bookpubdatedatetimenull出版日期bookindatedatetimenull登記日期isborrowedbitnot null是否被借出表3-4borrow_record 借閱記錄信息表表中列名數(shù)據(jù)類型可否為空說明readeridvarcharnot null(外主鍵)讀者借閱證編號bookidvarcharnot null(外主鍵)書籍編號borrowdatedatetimenot null讀者借書時間表3-5return_record 借閱記錄信息表表中列名數(shù)據(jù)類型可否為空說明readernamevarcharnot null(
22、外主鍵)讀者借閱證編號readeridvarcharnot null(外主鍵)書籍編號returndatedatetimenot null讀者還書時間表3-6reader_fee 罰款記錄信息表表中列名數(shù)據(jù)類型可否為空說明readeridvarcharnot null讀者借書證編號readernamevarcharnot null讀者姓名bookidvarcharnot null(外主鍵)書籍編號booknamevarcharnot null書籍名稱bookfeesmallmoneynot null罰款金額borrowdatedatetimenot null借閱時間表3-7system_adm
23、inistrator管理員信息表表中列名數(shù)據(jù)類型可否為空說明administratoridvarcharnot null(主鍵)管理員編號administratornamevarcharnot null管理員姓名administratorpasswordvarcharnot null管理員密碼administratorpermissionvarcharnot null管理員權(quán)限表3-8 system_super_administrator管理員信息表表中列名數(shù)據(jù)類型可否為空說明superadministratoridvarcharnot null(主鍵)管理員編號superadministra
24、tornamevarcharnot null管理員姓名superadministratorpasswordvarcharnot null管理員密碼superadministratorpermissionvarcharnot null管理員權(quán)限3.4 關(guān)系圖圖-數(shù)據(jù)庫存表關(guān)系圖四、物理設(shè)計數(shù)據(jù)庫物理設(shè)計階段的任務是根據(jù)具體計算機系統(tǒng)(dbms和硬件等)的特點,為給定的數(shù)據(jù)庫模型確定合理的存儲結(jié)構(gòu)和存取方法。所謂的“合理”主要有兩個含義:一個是要使設(shè)計出的物理數(shù)據(jù)庫占用較少的存儲空間,另一個對數(shù)據(jù)庫的操作具有盡可能高的速度。主要體現(xiàn)在后者。(1)建立索引:對book_style表在bookstyl
25、eno屬性列上建立聚集索引,在bookstyle屬性列上建立非聚集索引。對system_book表在bookid上建立聚集索引,在bookname、bookstyleno、boookauther、bookpub上建立非聚集索引。對return_record表在bookid上建立聚集索引,在readerid上建立非聚集索引對reader_fee表在bookid上建立聚集索引,在readerid上建立非聚集索引。對system_reader表在readerid列上建立聚集索引對boorow_record表在bookid上建立聚集所以,在readerid上建立非聚集索引對system_adminis
26、trator表在administratorid列上建立聚集索引。對system_super_administrator表在superadministratorid 上建立聚集索引。(2)存儲結(jié)構(gòu)確定數(shù)據(jù)庫的存儲結(jié)構(gòu)主要指確定數(shù)據(jù)的存放位置和存儲結(jié)構(gòu),包括確定關(guān)系、索引、日志、備份等的存儲安排及存儲結(jié)構(gòu),以及確定系統(tǒng)存儲參數(shù)的配置。 將日志文件和數(shù)據(jù)庫對象(表、索引等)分別放在不同的磁盤可以改進系統(tǒng)的性能。所以系統(tǒng)將日志文件和數(shù)據(jù)文件存放在不同磁盤上。五、詳細設(shè)計5.1數(shù)據(jù)庫設(shè)計-(1)創(chuàng)建數(shù)據(jù)庫use mastergocreate database librarysystemon
27、( name = librarysystem, filename = 'd:librarysystem.mdf', size = 10, maxsize = 50, filegrowth = 5 )log on( name = 'library', filename = 'e:librarysystem.ldf', size = 5mb, maxsize = 25mb, filegrowth = 5mb )go-(2)書本類別表建立use librarysystemgocreate table book_style( bookstyleno va
28、rchar(30) primary key, bookstyle varchar(30)go-(3)創(chuàng)建書庫表create table system_books( bookid varchar(20) primary key, bookname varchar(30) not null, bookstyleno varchar(30) not null, bookauthor varchar(30), bookpub varchar(30) , bookpubdate datetime, bookindate datetime , isborrowed bit,foreign key (boo
29、kstyleno) references book_style (bookstyleno),)go-(4)借書證表建立create table system_readers ( readerid varchar(9)primary key, readername varchar(9)not null , readersex varchar(2) not null, readertype varchar(10), regdate datetime,booktotal int,borrowednum int,overduenoreturnnum int )go-(5)借書記錄表建立create t
30、able borrow_record( bookid varchar(20) primary key, readerid varchar(9), borrowdate datetime, foreign key (bookid) references system_books(bookid), foreign key (readerid) references system_readers(readerid),)go-(6)還書記錄表建立create table return_record( bookid varchar(20) primary key, readerid varchar(9)
31、, returndate datetime, foreign key (bookid) references system_books(bookid), foreign key (readerid) references system_readers(readerid) go-(7)罰款單表建立create table reader_fee( readerid varchar(9)not null, readername varchar(9)not null , bookid varchar(20) primary key, bookname varchar(30) not null, boo
32、kfee smallmoney, borrowdate datetime, foreign key (bookid) references system_books(bookid), foreign key (readerid) references system_readers(readerid)go-(8) 管理員表建立create table system_administrator (administratorid varchar(9)primary key, administratorname varchar(9)not null , administratorpassword va
33、rchar(2) not null, administratorpermission varchar(10) )go-(9)超級管理員表建立create table system_super_administrator (superadministratorid varchar(9) primary key, superadministratorname varchar(9) not null , superadministratorpassword varchar(2) not null, superadministratorpermission varchar(10) )go (10)索引
34、的創(chuàng)建use librarysystemgocreate index bookstyle_index_style on book_style(bookstyle)create index borrow_record_index_readerid on borrow_record(readerid)create index reader_fee_index_readerid on reader_fee (readerid)create index return_record_index_readerid on return_record(readerid)create index system_
35、books_index_bookname on system_books(bookname)create index system_books_index_styleno on system_books(bookstyleno)create index system_books_index_bookauthor on system_books(bookauthor)5. 2數(shù)據(jù)初始化(1)將書籍類別加入表book_style中(2)將已有的圖書加入system_books表中(定義相同的作者出版社的書本編號不一樣)5.3.數(shù)據(jù)庫用戶權(quán)限管理該系統(tǒng)設(shè)置四種類型的用戶(1) 超級管理員(
36、superadministrator) 即系統(tǒng)管理員擁有所有的權(quán)限。(2) 管理員(administrator) 可以進行借還書處理;(3) 教師(teacher) :只能瀏覽圖書信息,可借書數(shù)為10本,借書時間長為2個月。(4) 學生(student):只能瀏覽圖書信息,可借書5本,借書時間長為1個月。5.4.建立觸發(fā)器,存儲過程-建立借書記錄存貯過程create procedure sp_borrowbook bookid char(20), readerid char(9) asinsert into borrow_record (bookid,readerid,borrowdate)v
37、alues(bookid,readerid,getdate()go-建立還書記錄存貯過程create procedure sp_returnbook bookid char(20),readerid char(9)asdelete from retun_recordwhere bookid=bookid and readerid=readeridgo-建立罰款單存貯過程create procedure sp_ readerfee readerid, borrowdate asupdate reader_feeset bookfee=0.1*(day(getdate()-day(borrowda
38、te)where reader=readeridand borrowdate=borrowdate-建立借書記錄表增加觸發(fā)器create trigger tr_addlend on dbo. borrow_record for insertasupdate system_booksset isborrowed =1where bookid in (select bookid from inserted)update readerset borrowednum = borrowednum +1where readerid in (select readerid from inserted)-建立
39、還書記錄刪除觸發(fā)器create trigger tr_dellend on dbo. return_record for deleteasupdate system_booksset isborrowed =0where bookid in (select bookid from deleted)update system_readersset borrowednum = borrowednum -1where readerid in (select readerid from deleted)-建立刪除圖書觸發(fā)器create trigger tr_dellendbook on dbo.sys
40、tem_books for deleteasdelete reader_feewhere bookid in (select bookid from deleted)delete return _recordwhere bookid in (select bookid from deleted)六系統(tǒng)實現(xiàn)系統(tǒng)功能模塊圖如圖圖書管理系統(tǒng)借還書子系統(tǒng)查詢子系統(tǒng)管理子系統(tǒng)圖書類管理圖書管理讀者管理逾期圖書管理管理員管理直接查詢多條件查詢借 書還 書幫助子系統(tǒng)登錄子系統(tǒng)系統(tǒng)功能模塊圖 書管理系統(tǒng)登錄界面如圖 圖10-1圖書管理系統(tǒng)登錄界面圖 書管理系統(tǒng)主界面如圖圖10-2圖書管理系統(tǒng)主界面 查找界面如
41、圖 圖10-3查找界面查找代碼如下:dim datacommand as sqlcommanddim myreader as sqldatareaderprivate sub btnsearch_click(byval sender as system.object, byval e as system.eventargs) handles btnsearch.click if chkbookname.checked = true then findbyname() else if chckauthor.checked = true then findbybookauthor () else
42、if chkisdn.checked = true then findbyisdn() else end if end if end if end subsub findbyname() dbset.clear() dataconnection.open() datacommand = new sqlcommand("select * from system_books where bookname like '" & txtcondition.text & "%'", dataconnection) dataadapte
43、r = new sqldataadapter(datacommand) dataadapter.fill(dbset, "system_books") dgresult.readonly = true dgresult.datasource = dbset.tables("system_books") myreader = datacommand.executereader() while myreader.read end while dataconnection.close() myreader.close() datacommand.dispose
44、() end sub sub findbybookauthor() dbset.clear() dataconnection.open() datacommand = new sqlcommand("select * from system_books where bookauthor like '" & txtcondition.text & "%'", dataconnection) dataadapter = new sqldataadapter(datacommand) dataadapter.fill(dbset
45、, "system_books") dgresult.readonly = true dgresult.datasource = dbset.tables("system_books") myreader = datacommand.executereader() while myreader.read end while dataconnection.close() myreader.close() datacommand.dispose() end sub sub findbyisdn() dbset.clear() dataconnection.o
46、pen() datacommand = new sqlcommand("select * from system_books where bookid = '" & txtcondition.text & "'", dataconnection) dataadapter= new sqldataadapter(datacommand) dataadapter.fill(dbset, "system_books") dgresult.readonly = true dgresult.datasource = dbset.tables("system_books") myreader = datacommand.executereader() while myreader.read end while dataconnection.close() myreader.close() datacommand.dis
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024版二手房獨家授權(quán)銷售合同3篇
- 2025年度出租車充電樁建設(shè)與維護合同3篇
- 二零二五年酒店宴會部經(jīng)理招聘與服務質(zhì)量提升合同3篇
- 二零二五版房產(chǎn)中介傭金結(jié)算及售后服務合同范本3篇
- 2024年船舶制造與維修合同
- 2025年新型紗窗產(chǎn)品研發(fā)與知識產(chǎn)權(quán)保護協(xié)議2篇
- 2025年散裝糧食海運協(xié)議6篇
- 專業(yè)質(zhì)量檢測服務工程協(xié)議樣本版
- 二零二五版合同部合同管理流程再造與效率提升合同3篇
- 二零二五年度消防設(shè)施安全檢測與維護服務協(xié)議
- 啤酒糖化車間物料衡算與熱量衡算
- 畢淑敏心理咨詢手記在線閱讀
- 亞硝酸鈉安全標簽
- pcs-985ts-x說明書國內(nèi)中文版
- 小品《天宮賀歲》臺詞劇本手稿
- 醫(yī)院患者傷口換藥操作課件
- 欠薪強制執(zhí)行申請書
- 礦山年中期開采重點規(guī)劃
- 資源庫建設(shè)項目技術(shù)規(guī)范匯編0716印刷版
- GC2級壓力管道安裝質(zhì)量保證體系文件編寫提綱
- 預應力混凝土簡支小箱梁大作業(yè)計算書
評論
0/150
提交評論