圖書管理系統(tǒng)數(shù)據(jù)庫設計_第1頁
圖書管理系統(tǒng)數(shù)據(jù)庫設計_第2頁
圖書管理系統(tǒng)數(shù)據(jù)庫設計_第3頁
圖書管理系統(tǒng)數(shù)據(jù)庫設計_第4頁
圖書管理系統(tǒng)數(shù)據(jù)庫設計_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、信息工程學院數(shù)據(jù)庫原理與應用課程設計論文題 目:圖書管理系統(tǒng)數(shù)據(jù)庫設計姓 名: 許珂 09104054 專 業(yè): 計算機科學與技術 指導老師: 楊曉琿 完成日期: 二零零五年七月 i摘 要目前圖書館進行信息管理的主要方式是基于手工處理,最多是用計算機的文本系統(tǒng)打印一些清單,信息處理工作量大,容易出錯,缺乏系統(tǒng)、規(guī)范的信息管理手段。在電腦技術高速發(fā)展的今天,迫切需要充分利用計算機實現(xiàn)自動化管理?,F(xiàn)在準備建立的圖書管理系統(tǒng),要把圖書館的圖書管理、讀者管理、圖書借閱管理等日常管理工作實行計算機統(tǒng)一管理,以提高工作效率和管理水平。此圖書管理系統(tǒng),主要是基于大學圖書館的管理業(yè)務而設計的,是基于微軟的sq

2、l server 2000建立的,可用于各種中小型的圖書館。關鍵字:圖書;借書卡; 圖書管理;借書;還書目 錄1 引言11.1 本課題(項目)的研究意義11.2 本論文的目標與任務11.2.1圖書管理和維護11.2.2 圖書信息服務12 數(shù)據(jù)庫設計12.1 需求設計12.1.1目標與任務22.1.2 業(yè)務流程22.1.3 數(shù)據(jù)流程22.1.4 數(shù)據(jù)字典22.2 概念設計42.2.1概念設計任務42.2.2 er圖設計42.3 邏輯設計52.3.1 邏輯設計任務52.3.2關系模式的設計52.3.3視圖的設計62.3.4 功能模塊設計92.4 物理設計92.4.1物理設計任務與目標92.4.2索

3、引存取方法92.4.3功能模塊分析102.5 數(shù)據(jù)庫實施103 數(shù)據(jù)庫調試與試運行114 收獲與體會115 存在問題與建議11附錄12附錄112附錄215附錄317附錄417附錄53104級計算機科學與技術專業(yè)2班數(shù)據(jù)庫原理與應用課程設計論文1 引言目前圖書館進行信息管理的主要方式是基于手工處理,最多是用計算機的文本系統(tǒng)打印一些清單,信息處理工作量大,容易出錯,缺乏系統(tǒng)、規(guī)范的信息管理手段。在電腦技術高速發(fā)展的今天,迫切需要充分利用計算機實現(xiàn)自動化管理。1.1 本課題(項目)的研究意義現(xiàn)在準備建立的圖書管理系統(tǒng),要把圖書館的圖書管理、讀者管理、圖書借閱管理等日常管理工作實行計算機統(tǒng)一管理,以提

4、高工作效率和管理水平。1.2 本論文的目標與任務1.2.1圖書管理和維護(1)圖書信息入庫(建立信息庫,以便查詢和借閱)。(2)管理圖書庫(包括刪除圖書信息和統(tǒng)計圖書信息)。(3)查看圖書信息。(4)查詢圖書的借閱情況(包括借出情況查詢、未借出情況查詢和超時情況查詢,同時還要知道:如果某本圖書被借出,那么可直接查詢到借閱者的信息,以便催還等)。(5)圖書館的規(guī)則管理和維護(包括每人可借閱圖書數(shù)目、每人每本書可持有天數(shù)以及每超時一天的罰金數(shù)目等)。(6) 用戶信息的管理和維護(例如刪除已畢業(yè)學生信息、增加新生信息等)。1.2.2 圖書信息服務 (1)圖書信息的查詢(例如在借書前可先查詢某本圖書是

5、否被借出)。 (2)圖書的借閱(按圖書館的規(guī)則進行借閱,例如不超過4本,如果已有超時借閱的圖書,則在歸還前不允許再借閱等等)。 (3)圖書的歸還。2 數(shù)據(jù)庫設計2.1 需求設計需求分析階段是圖書管理系統(tǒng)開發(fā)的第一個階段,也是非常重要的一個階段。這是設計數(shù)據(jù)庫的起點,需求分析的結果是否準確地反映了用戶的實際要求,將直接影響后面各個階段的設計,并影響到設計結果是否合理和實用。它也是我們系統(tǒng)開發(fā)過程當中最困難、最耗費時間的一步,作為地基的需求分析做的是否充分和準確,決定了在其上構建數(shù)據(jù)庫大廈的速度和質量。2.1.1目標與任務主要任務是通過詳細調查圖書館的詳細業(yè)務情況,了解原系統(tǒng)的工作情況,明確用戶的

6、各項需求,在此基礎上確定新系統(tǒng)的功能,完成數(shù)據(jù)字典的建立。正是上述所說的重要性,我耗費了相當長的時間親自去圖書館各部門進行實地考察,了解了用戶的需求、認清了業(yè)務的流程和業(yè)務活動情況,確定了系統(tǒng)的邊界。2.1.2 業(yè)務流程 學生可以進入查詢處查詢自己需借圖書的是否在館情況和是否存在記錄情況,若在館可進行借書;若不在館,說明此書已經(jīng)注銷;若不存在,需要進行缺書登記。學生憑借相關票據(jù),進入相關部門辦理借書、還書、注銷等圖書流通業(yè)務;學生憑借學生證可辦理借書卡或離校進行注銷卡業(yè)務。(業(yè)務流程圖見附錄1)2.1.3 數(shù)據(jù)流程數(shù)據(jù)流圖表達了數(shù)據(jù)和處理的關系,此系統(tǒng)主要是學生進行各種業(yè)務,圖書館各相關部門對

7、業(yè)務的處理,以及圖書館對新書入庫和需購書籍的統(tǒng)計(數(shù)據(jù)流程圖見附錄)2.1.4 數(shù)據(jù)字典數(shù)據(jù)字典是我在數(shù)據(jù)流程圖中選取的一些中層數(shù)據(jù)流,我把我所抽去的數(shù)據(jù)列出以下表來。 數(shù)據(jù)項數(shù)據(jù)項名數(shù)據(jù)類型長度別名取值范圍sno字符型10學號sname字符型10姓名ssex字符型2性別男、女sgrade字符型10年級sdept字符型10學院smajor字符型10專業(yè)sclass字符型10班級bno字符型10條碼號bname字符型10書名bahthor字符型10作者bpress字符型10出版社bprice浮點型(單精度)10定價pno字符型10館藏地編號110bstate字符型10圖書狀態(tài) bb

8、state字符型10借閱狀態(tài)cno字符型10卡號bno字符型10條碼號bbno字符型10借書代號bbtime日期型10借書時間(應還時間借書時間)小于一個月brtime日期型10應還時間pno字符型10館藏地編號110pname字符型10館藏地名稱cno字符型10卡號rtime日期型10時間rstate字符型10欠書狀態(tài)rfine浮點型(單精度)10超時罰款cno字符型10卡號cstate字符型10卡狀態(tài)sno字符型10學號qname字符型10書名qahthor字符型10作者qpress字符型10出版社qprice浮點型(單精度)4定價qfrequence整型4搜索頻率 數(shù)據(jù)結構

9、數(shù)據(jù)結構名含義說明組成 學生信息記錄學生的基本信息學號、姓名、性別、年級、學院、專業(yè)、班級 圖書信息記錄圖書的基本信息條碼號、書名、作者、出版社、定價、館藏地編號、圖書狀態(tài)、借閱狀態(tài) 借閱信息記錄學生借書信息卡號、條碼號、借書代號、借書時間、應還時間 館藏地信息圖書的分布情況館藏地編號、館藏地名稱學生日常事務信息反映學生借書狀態(tài),如是否允許借書等卡號、時間、欠書狀態(tài)、超時罰款 借書卡信息學生借書卡基本信息,放映學生借書卡狀態(tài)卡號、卡狀態(tài)、學號缺書登記記錄學生需要圖書(館內沒有)信息書名、作者、出版社、搜索頻率、定價2.2 概念設計數(shù)據(jù)庫概念模型設計階段是數(shù)據(jù)庫設計的關鍵階段,在這一階段里,主要

10、是以需求分析中所識別的數(shù)據(jù)項、設計任務和現(xiàn)行系統(tǒng)的管理操作規(guī)則與策略為基礎,確定圖書管理系統(tǒng)中的實體和實體間聯(lián)系,建立此系統(tǒng)的信息模式,準確描述此系統(tǒng)的信息結構,建立一個獨立與各dbms的高級概念模型。2.2.1概念設計任務識別圖書管理系統(tǒng)中的實體,識別實體的屬性,識別實體的關鍵字,識別實體間的聯(lián)系,利用實體關系圖(er圖)來描述圖書管理相關實體、屬性及關系,從而達到為圖書管理系統(tǒng)建立良好的數(shù)據(jù)模型的目的。2.2.2 er圖設計根據(jù)前面的需求分析,可以將圖書管理系統(tǒng)數(shù)據(jù)庫實體劃分為圖書信息實體集、學生信息實體集、館藏地實體集、借書卡信息實體集、缺書信息實體集,各實體集里還包含不同的實體。學生在

11、圖書館中必須持卡辦理一切業(yè)務,新生必須首先辦理借書卡,當借書卡丟失時需辦理掛失業(yè)務,畢業(yè)生或中途退學者必須辦理注銷卡業(yè)務,以防止借書卡的流失。學生在圖書館中持卡可以進行以下業(yè)務:查詢自己借書狀態(tài),借書,還書,當所借書籍丟失時需辦理注銷業(yè)務。學生需要查詢自己所需書籍時,若館中有則直接借書;若館中沒有,可以進行缺書登記。管理員可以定時對缺書信息表中搜索頻率到達某一數(shù)字以上的圖書派人進行采購。當新書通知到達,由管理員進行新書入庫工作。(各er圖見附錄2)每個實體定義的屬性如下:學生:學號,姓名,性別,年級,學院,專業(yè),班級圖書:條碼號,書名,作者,出版社,定價,館藏地編號,圖書狀態(tài),借閱狀態(tài)館藏地:

12、館藏地編號,館藏地名稱借書卡:卡號,卡狀態(tài),學號缺書:書名,作者,出版社,定價,搜索頻率學生日常事務信息:卡號,時間,欠書狀態(tài),超時罰款2.3 邏輯設計邏輯結構設計是將概念結構轉換為某個dbms所支持的數(shù)據(jù)模型,并對其進行優(yōu)化。2.3.1 邏輯設計任務將e-r圖轉換為關系模型,即將實體、實體的屬性和實體之間的聯(lián)系轉化為關系模式,為應用程序建立專門的視圖而不必要應用程序直接訪問數(shù)據(jù)表2.3.2關系模式的設計student數(shù)據(jù)項名數(shù)據(jù)類型長度別名是否為空主外鍵sno字符型10學號否主鍵sname字符型10姓名ssex字符型2性別sgrade字符型10年級sdept字符型10學院smajor字符型1

13、0專業(yè)sclass字符型10班級book數(shù)據(jù)項名數(shù)據(jù)類型長度別名是否為空主外鍵bno字符型10條碼號否主鍵bname字符型10書名否bahthor字符型10作者否bpress字符型10出版社否bprice浮點型(單精度)4定價否pno字符型10館藏地編號否外鍵bstate字符型10圖書狀態(tài)否bbstate字符型10借閱狀態(tài)否jieyue數(shù)據(jù)項名數(shù)據(jù)類型長度別名是否為空主外鍵cno字符型10卡號否外鍵主鍵bno字符型10條碼號否外鍵bbno字符型10借書代號否bbtime日期型10借書時間否brtime日期型10應還時間否btime日期型10還書時間注: (應還時間借書時間)等于一個月place

14、數(shù)據(jù)項名數(shù)據(jù)類型長度別名是否為空主外鍵pno字符型10館藏地編號否主鍵pname字符型10館藏地名稱否rountin數(shù)據(jù)項名數(shù)據(jù)類型長度別名是否為空主外鍵cno字符型10卡號否外鍵主鍵rtime日期型10時間否rstate字符型10欠書狀態(tài)否rfine浮點型(單精度)10超時罰款否注:對時間的檢查,當借還書中的還書時間小于應還時間時,超時罰款為零;當超過應還時間未還書時,開始計費,超時罰款=(時間-應還時間)*0.03;當借還書中的還書時間確定時,超時罰款=(還書時間-應還時間)*0.03。card數(shù)據(jù)項名數(shù)據(jù)類型長度別名是否為空主外鍵cno字符型10卡號否主鍵cstate字符型10卡狀態(tài)否s

15、no字符型10學號否外鍵linkbook數(shù)據(jù)項名數(shù)據(jù)類型長度別名是否為空主外鍵qname字符型10書名否主鍵qahthor字符型10作者否qpress字符型10出版社否qprice浮點型(單精度)4定價qfrequence整型4搜索頻率2.3.3視圖的設計為學生進行圖書查詢建立視圖:v-bookselect數(shù)據(jù)項名數(shù)據(jù)類型長度別名是否為空bname字符型10書名否bahthor字符型10作者否bpress字符型10出版社否bprice浮點型(單精度)4定價否pno字符型10館藏地編號否bstate字符型10圖書狀態(tài)否bbstate字符型10借閱狀態(tài)否建立學生、借書卡以及日常事務信息的聯(lián)系視圖,

16、供借書處檢查學生詳細信息時使用:v-scr數(shù)據(jù)項名數(shù)據(jù)類型長度別名是否為空cno字符型10卡號否sname字符型10姓名ssex字符型2性別sgrade字符型10年級sdept字符型10學院smajor字符型10專業(yè)sclass字符型10班級cstate字符型10卡狀態(tài)否rstate字符型10欠書狀態(tài)否rfine浮點型(單精度)10超時罰款否注:當卡掛失時,不能進行借書業(yè)務。憑借學生證可以進行圖書注銷處理。建立學生日常事務信息、借閱信息、圖書的聯(lián)系視圖,供借書處、還書處、注銷處處理相關業(yè)務時使用:v-sbb1數(shù)據(jù)項名數(shù)據(jù)類型長度別名是否為空bname字符型10書名否bahthor字符型10作者

17、否bpress字符型10出版社否bprice浮點型(單精度)4定價否bstate字符型10圖書狀態(tài)否bbstate字符型10借閱狀態(tài)否bbno字符型10借書代號否bbtime日期型8借書時間否brtime日期型8應還時間否rstate字符型10欠書狀態(tài)否rfine浮點型(單精度)4超時罰款否v-sbb2數(shù)據(jù)項名數(shù)據(jù)類型長度別名是否為空bname字符型10書名否bahthor字符型10作者否bpress字符型10出版社否bprice浮點型(單精度)4定價否pno字符型10館藏地編號否bstate字符型10圖書狀態(tài)否bbstate字符型10借閱狀態(tài)否brtime日期型10應還時間否btime日期型

18、10還書時間rstate字符型10欠書狀態(tài)否rfine浮點型(單精度)4超時罰款否v-sbb3數(shù)據(jù)項名數(shù)據(jù)類型長度別名是否為空bname字符型10書名否bahthor字符型10作者否bpress字符型10出版社否bprice浮點型(單精度)4定價否pno字符型10館藏地編號否bstate字符型10圖書狀態(tài)否bbstate字符型10借閱狀態(tài)否brtime日期型10應還時間否rstate字符型10欠書狀態(tài)否rfine浮點型(單精度)4超時罰款否建立學生的累計借書視圖:v-allborrow數(shù)據(jù)項名數(shù)據(jù)類型長度別名是否為空bno字符型10條碼號否bname字符型10書名否bahthor字符型10作者

19、否bpress字符型10出版社否bprice浮點型(單精度)4定價否bbno字符型10借書代號否bbtime日期型10借書時間否btime日期型10還書時間建立借書卡、日常事務信息的聯(lián)系視圖,為罰款處處理相關業(yè)務時使用:v-fine數(shù)據(jù)項名數(shù)據(jù)類型長度別名是否為空sno字符型10學號否rtime日期型10時間否rfine浮點型(單精度)4超時罰款否建立缺書和圖書丟失視圖,為購書時提供信息: v-buybook1數(shù)據(jù)項名數(shù)據(jù)類型長度別名是否為空qname字符型10書名否qahthor字符型10作者否qpress字符型10出版社否qprice浮點型(單精度)4定價v-buybook2數(shù)據(jù)項名數(shù)據(jù)類

20、型長度別名是否為空bname字符型10書名否bahthor字符型10作者否bpress字符型10出版社否bprice浮點型(單精度)4定價否2.3.4 功能模塊設計將圖書管理系統(tǒng)業(yè)務分為四個大的方面:學生數(shù)據(jù)管理、圖書征訂管理、圖書典藏管理、圖書流通管理。(具體業(yè)務見附錄)2.4 物理設計2.4.1物理設計任務與目標 為上一階段的關系模型選取一個最適合的應用要求的物理結構,即確定存取方法和存儲結構。2.4.2索引存取方法 為了提高檢查圖書借閱情況的速度,對借閱信息中的借書代號建立聚簇索引;為了提高檢查圖書位置的速度,對館藏地編號建立聚簇索引。2.4.3功能模塊分析辦卡、掛失、注銷

21、學生在圖書館中必須持卡辦理一切業(yè)務,新生必須首先辦理借書卡,當借書卡丟失時需辦理掛失業(yè)務,畢業(yè)生或中途退學者必須辦理注銷卡業(yè)務,以防止借書卡的流失。查詢、借書、環(huán)書、注銷學生在圖書館中持卡可以進行以下業(yè)務:查詢自己借書狀態(tài),借書,還書,當所借書籍丟失時需辦理注銷業(yè)務。圖書查詢、缺書登記學生需要查詢自己所需書籍時,若館中有則直接借書;若館中沒有,可以進行缺書登記。2.5 數(shù)據(jù)庫實施根據(jù)關系模式建立基本表、視圖和索引,并完成存取過程的設計。存取過程編號存取過程名作用1狀態(tài)查詢查詢學生狀態(tài)2借書完成借書過程3還書 完成還書過程4注銷完成丟失圖書注銷過程5辦卡辦理新借書卡6

22、掛失完成借書卡掛失過程7用戶注銷離校學生辦理注銷過程8圖書查詢需要圖書查詢9缺書登記查詢查看圖書館中沒有書籍登記情況10追加缺書對館中沒有圖書進行登記11修改缺書對已有缺書進行修改12罰款查詢查看個人罰款情況13累計借書查詢查看個人累計借書情況3 數(shù)據(jù)庫調試與試運行數(shù)據(jù)庫系統(tǒng)測試與試運行已在實施階段初步完成,主要是通過對存取過程的調用來完成相關業(yè)務。(見附錄4)4 收獲與體會通過本次實習,我對數(shù)據(jù)庫理論知識有了更深一層的認識,也讓我對數(shù)據(jù)庫的創(chuàng)建過程更加透徹的了解。我越來越感覺到基礎的重要性,這不僅來源于我在第一階段的辛苦,更加體會深刻的是我在后面的實習中,不斷的發(fā)現(xiàn)不足,不斷的更改前一階段的

23、相關內容。同時,由于設備問題,有時候導致數(shù)據(jù)丟失。在這種時刻,只有重頭再來,才能按時,及時的完成任務。5 存在問題與建議本系統(tǒng)在借還書時,每借一本或還一本書便需要輸入一次卡號和書號,不能實現(xiàn)只輸入一次卡號,循環(huán)借書的功能。有些功能沒有很好的完成使命,出現(xiàn)了一些限制。這些都需要我在以后的學習中慢慢積累知識,尋找解決的辦法。附錄附錄1圖1 業(yè)務流程圖圖2 中層數(shù)據(jù)流程圖圖3 借書數(shù)據(jù)流程圖圖4 還書數(shù)據(jù)流程圖圖5注銷數(shù)據(jù)流程圖圖6罰款數(shù)據(jù)流程圖圖7新書入庫數(shù)據(jù)流程圖圖8 用戶注銷數(shù)據(jù)流程圖圖9 用戶辦卡、補辦數(shù)據(jù)流程圖圖10 用戶掛失卡數(shù)據(jù)流程圖附錄2圖11學生實體集與借書卡實體集聯(lián)系e-r圖 圖

24、12狀態(tài)查詢、借書、還書、注銷業(yè)務e-r圖圖13 新書入庫e-r圖圖14 圖書搜索e-r圖圖15圖書管理系統(tǒng)全局e-r圖附錄3圖16 圖書功能模塊圖附錄4創(chuàng)建數(shù)據(jù)庫create database 圖書管理系統(tǒng)創(chuàng)建基本表create table student(sno char(10) not null unique, sname char(10),ssex char(2),sgrade char(10),sdept char(10),smajor char(10),sclass char(10),primary key(sno)create table place(pno char(10) n

25、ot null unique,pname char(10) not null,primary key(pno)create table book(bno char(10) not null primary key nonclustered,bname char(10) not null,bahthor char(10) not null,bpress char(10) not null,bprice numeric(9) not null,pno char(10) not null,bstate char(10) not null,bbstate char(10) not null,forei

26、gn key(pno) references place(pno)create index 書名on book(bname)create table card(cno char(10) not null unique,cstate char(10) not null,sno char(10) not null,primary key (cno),foreign key(sno) references student(sno)create table jieyue(cno char(10) not null,bno char(10) not null,bbno char(10) not null

27、,bbtime date(10) not null,brtime date(10) not null,btime date(10) ,primary key(cno,bno,bbno,bbtime),foreign key(cno) references card(cno),foreign key(bno) references book(bno)create table linkbook(qname char(10) not null,qahthor char(10) not null,qpress char(10) not null,qprice float(4),qfrequence f

28、loat(4) ,primary key(qname,qahthor,qpress)create table rountin(cno char(10) not null,rtime datetime,rstate int not null,rfine numeric(9) ,primary key(cno,rtime),foreign key(cno) references card(cno) 創(chuàng)建視圖create view v_bookselect(bname,bahthor,bpress,bprice,pno,bstate,bbstate)asselect bname,bahthor,bp

29、ress,bprice,pno,bstate,bbstatefrom bookwhere bstate=在館create view v_buybook1(qname,qahthor,qpress,qprice)asselect qname,qahthor,qpress,qpricefrom linkbookwhere qfrequence10create view v_buybook2(bname,bahthor,bpress,bprice)asselect bname,bahthor,bpress,bpricefrom bookwhere bstate=丟失create view v_fin

30、e(cno,sno,rtime,rfine)asselect card.cno,sno,rtime,rfinefrom card,rountinwhere card.cno=rountin.cnocreate view v_sbb1(cno,bno,bname,bahthor,bpress,bprice,bstate,bbstate,bbno,bbtime,brtime,btime,rstate,rfine)asselect jieyue.cno,book.bno,bname,bahthor,bpress,bprice,bstate,bbstate,bbno,bbtime,brtime,bti

31、me,rstate,rfinefrom jieyue,rountin,bookwhere jieyue.cno=rountin.cnoand jieyue.bno=book.bnocreate view v_sbb2(cno,bno,bname,bborrowno,bahthor,bpress,bprice,pno,bbno,bstate,bbstate,bbtime,brtime,btime,rtime,rstate,rfine)asselect jieyue.cno,book.bno,bname,bbno,bahthor,bpress,bprice,pno,bbno,bstate,bbst

32、ate,bbtime,brtime,btime,rtime,rstate,rfinefrom jieyue,rountin,bookwhere btime is nulland jieyue.cno=rountin.cnoand jieyue.bno=book.bnocreate view v_sbb3(cno,bno,bname,bahthor,bpress,bprice,pno,bstate,bbstate,brtime,rstate,rfine)asselect jieyue.cno,book.bno,bname,bahthor,bpress,bprice,pno,bstate,bbst

33、ate,brtime,rstate,rfinefrom jieyue,rountin,bookwhere jieyue.cno=rountin.cnoand jieyue.bno=book.bnocreate view v_scr(cno,sname,ssex,sgrade,sdept,smajor,sclass,cstate,rtime,rstate,rfine)asselect card.cno,sname,ssex,sgrade,sdept,smajor,sclass,cstate,rtime,rstate,rfinefrom student,card,rountinwhere stud

34、ent.sno=card.snoand card.cno=rountin.cnocreate view v_allborrow(cno,bname,bahthor,bpress,bprice,bbno,bbtime,btime)asselect jieyue.cno,bname,bahthor,bpress,bprice,bbno,bbtime,btimefrom book,jieyuewhere book.bno=jieyue.bno創(chuàng)建存取過程create procedure 狀態(tài)查詢 kahao char(10)asselect *from v_scrwhere cno=kahao cr

35、eate procedure 借書 kahao char(10), tiaomahao char(10) asdeclare cishu1 int,benshu1 int,shijian datetime,cishu int,benshu intset cishu1=0set benshu1=0declare cursor_bbtime cursor scroll for select bbno from v_sbb2 where cno=kahao and bno=tiaomahaodeclare cursor_rstate cursor scroll for select rstate f

36、rom rountin where cno=kahaoopen cursor_bbtimeopen cursor_rstatefetch first from cursor_bbtime into cishu1fetch first from cursor_rstate into benshu1close cursor_bbtimeclose cursor_rstatedeallocate cursor_bbtimedeallocate cursor_rstateset cishu=cishu1+1set benshu=benshu1+1set shijian=getdate() update

37、 bookset book.bbstate=不可借where kahao in(select cnofrom card) and bno=tiaomahao insert into jieyue(bbno,cno,bno,bbtime,brtime) values(cishu,kahao,tiaomahao,shijian,dateadd(day, 30, shijian)insert into rountin(cno,rstate,rtime) values(kahao,benshu,shijian)select distinct cno,bno,bname,bborrowno,bahtho

38、r,bpress,bprice,pno,bbno,bstate,bbstate,bbtime,brtime,btime,rstate,rfinefrom v_sbb2where cno=kahaocreate procedure 還書 kahao char(10), tiaomahao char(10) asdeclare time datetime,benshu int,benshu1 intdeclare cursor_time cursor scroll for select brtime from v_sbb2 where cno=kahao and bno=tiaomahaodecl

39、are cursor_rstate cursor scroll for select rstate from rountin where cno=kahaoopen cursor_timeopen cursor_rstatefetch first from cursor_time into timefetch cursor_rstate into benshuset benshu1=benshu-1close cursor_timeclose cursor_rstatedeallocate cursor_timedeallocate cursor_rstate update rountin s

40、et rfine=datediff(day,time,getdate()*0.03 where cno=kahao and tiaomahao in (select bno from book) and datediff(day,time,getdate()0 update book set bbstate=可借 where kahao in(select cnofrom card) and bno=tiaomahao update jieyue set btime=getdate() where cno=kahao and bno=tiaomahao update rountin set r

41、state=benshu1 where cno=kahao select distinct cno,sname,ssex,sgrade,sdept,smajor,sclass,cstate,rtime,rstate,rfinefrom v_scrcreate procedure 注銷kahao char(10), tiaomahao char(10) asdeclare time datetime,benshu int,benshu1 int,price numericdeclare cursor_time cursor scroll for select brtime from v_sbb3

42、 where cno=kahao and bno=tiaomahaodeclare cursor_rstate cursor scroll for select rstate from rountin where cno=kahaodeclare cursor_price cursor scroll for select bprice from book where bno=tiaomahaoopen cursor_timeopen cursor_rstateopen cursor_pricefetch cursor_time into timefetch cursor_rstate into

43、 benshufetch cursor_price into priceset benshu1=benshu-1close cursor_timeclose cursor_rstateclose cursor_pricedeallocate cursor_timedeallocate cursor_pricedeallocate cursor_rstateupdate book set bstate=不在館,bbstate=不可借 where kahao in (select cno from card) and bno=tiaomahao update rountin set rstate=benshu1, rfine=datediff(day,time,getdate()*0.03+price*3 where cno=kahao and tiaoma

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論