圖書租售數(shù)據(jù)庫系統(tǒng)設(shè)計課程設(shè)計_第1頁
圖書租售數(shù)據(jù)庫系統(tǒng)設(shè)計課程設(shè)計_第2頁
圖書租售數(shù)據(jù)庫系統(tǒng)設(shè)計課程設(shè)計_第3頁
圖書租售數(shù)據(jù)庫系統(tǒng)設(shè)計課程設(shè)計_第4頁
圖書租售數(shù)據(jù)庫系統(tǒng)設(shè)計課程設(shè)計_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、課 程 設(shè) 計題 目圖書租售數(shù)據(jù)庫系統(tǒng)設(shè)計學(xué) 院計算機(jī)科學(xué)與技術(shù)專 業(yè)物聯(lián)網(wǎng)工程班 級姓 名指導(dǎo)教師課程設(shè)計任務(wù)書學(xué)生姓名: 專業(yè)班級: 指導(dǎo)教師: 工作單位: 計算機(jī)學(xué)院 題目:圖書租售數(shù)據(jù)庫設(shè)計初始條件:1)書籍管理:待租書和待售書。2)會員管理:辦理會員卡。3)借閱管理:會員借書和還書管理。4)書籍銷售:會員售和零售。要求完成的主要任務(wù):1. 根據(jù)上述的初始條件,進(jìn)行調(diào)查分析并設(shè)計適當(dāng)?shù)膶傩?。設(shè)計一個圖書租售數(shù)據(jù)庫,DBMS可選Ms SQL Server、Oracle、MySQL等。2. 完成課程設(shè)計說明書,其格式遵守學(xué)校今年的新規(guī)定。主要內(nèi)容包括:需求分析,概念設(shè)計,邏輯設(shè)計,物理實(shí)現(xiàn)

2、等。3. 基于該數(shù)據(jù)庫,最好實(shí)現(xiàn)一個或多個應(yīng)用程序(自己確定功能),程序設(shè)計語言(工具)任選。這一項是選作,不作硬性要求。時間安排:本學(xué)期第19周:1、理解課程設(shè)計任務(wù),消化資料、系統(tǒng)調(diào)查1天2、系統(tǒng)分析,總體設(shè)計1天3、詳細(xì)設(shè)計及實(shí)施,撰寫課程設(shè)計報告2天4、課程設(shè)計驗(yàn)收1天指導(dǎo)教師簽名:年月日系主任(或責(zé)任教師)簽名:年月題目:圖書租售數(shù)據(jù)庫設(shè)計21、需求分析21.1處理對象及組織21.2信息處理及系統(tǒng)功能21.3數(shù)據(jù)庫系統(tǒng)分析22數(shù)據(jù)庫結(jié)構(gòu)設(shè)計22.1概念設(shè)計33 邏輯設(shè)計63.1建立關(guān)系模式63.2關(guān)系模式規(guī)范化處理73.3關(guān)系模式邏輯結(jié)構(gòu)的定義74、 數(shù)據(jù)庫的物理設(shè)計104.1物理設(shè)

3、計的內(nèi)容104.2索引的建立105、數(shù)據(jù)庫的實(shí)施與測試115.1數(shù)據(jù)庫實(shí)施115.2數(shù)據(jù)入庫165.3數(shù)據(jù)庫測試175.4安全控制196、 總結(jié)20引言隨著科學(xué)技術(shù)的進(jìn)步,人類社會的信息呈指數(shù)級增長,互聯(lián)網(wǎng)上的海量信息,各種終端設(shè)備每天產(chǎn)生的大量數(shù)據(jù)。21世紀(jì)的社會是信息、數(shù)據(jù)的社會,近段時間來人們更加注重數(shù)據(jù)的挖掘和管理,更有人說數(shù)據(jù)就是“金子”,誰能更好的利用這些數(shù)據(jù)誰就有可能成為世界的主宰。作為人類最古老的的信息的承載,對于圖書的管理,人們也更加迫切的能夠與時俱進(jìn),實(shí)現(xiàn)圖書的信息化管理。人們可以從繁重的記錄和查找計算中解放出來,這樣可以節(jié)省更多的勞動力促進(jìn)生產(chǎn),更重要的是能夠輕松的實(shí)現(xiàn)資

4、源的管理?,F(xiàn)在在各個城市有很多的圖書租賃商店或者自動圖書租賃站,通過建立圖書租賃系統(tǒng)可以輕松實(shí)現(xiàn)圖書的租借和管理,滿足商店和讀者的要求。本系統(tǒng)采取自頂向下的分析與設(shè)計,分為目錄、需求分析、概要設(shè)計、邏輯設(shè)計、物理設(shè)計,以及系統(tǒng)的實(shí)現(xiàn)等全過程。在程序設(shè)計與調(diào)試上采用了自上而下,逐步細(xì)化,逐步完善的原則。采用結(jié)構(gòu)化的功能模塊設(shè)計系統(tǒng)功能,可讀性好,易于擴(kuò)充?;竟δ苋妫到y(tǒng)可讀性好,易于維護(hù)、更新,安全性好。實(shí)現(xiàn)的功能有:1)書籍管理:待租書和待售書。2)會員管理:辦理會員卡。3)借閱管理:會員借書和還書管理。4)書籍銷售:會員售和零售。從而形成一個比較全面的并且能夠滿足客戶需求的圖書租賃數(shù)據(jù)庫

5、系統(tǒng)。1、需求分析需求分析就是分析用戶的需求,通過詳細(xì)調(diào)查現(xiàn)實(shí)世界要處理的對象(組織、部門、企業(yè)等),充分了解原系統(tǒng)(工業(yè)系統(tǒng)或計算機(jī)系統(tǒng))工作概況,明確用戶的各種需求,然后在此基礎(chǔ)上確定系統(tǒng)的功能。新系統(tǒng)必須充分考慮今后可能的擴(kuò)充和改變,不能僅僅按當(dāng)前應(yīng)用需求來設(shè)計數(shù)據(jù)庫。1.1處理對象及組織系統(tǒng)要處理的對象包括書籍信息、讀者信息(會員信息)、借閱信息、歸還信息及收入信息等六個方面。(詳見附錄數(shù)據(jù)字典)1.2信息處理及系統(tǒng)功能該圖書租賃管理系統(tǒng)大體上分為四個部分-書籍信息管理系統(tǒng),讀者信息(會員信息)管理系統(tǒng)、借閱歸還系統(tǒng)和收入管理系統(tǒng)。書籍管理管理系統(tǒng):實(shí)現(xiàn)書籍信息的更新和查詢;讀者信息管

6、理系統(tǒng):實(shí)現(xiàn)會員信息的更新和查詢;借閱歸還系統(tǒng):實(shí)現(xiàn)不同類別讀者的借閱和歸還圖書的管理;購買記錄管理系統(tǒng):實(shí)現(xiàn)會員購買和普通顧客購買記錄收入管理系統(tǒng):實(shí)現(xiàn)不同情況下書店的收入情況。1.3數(shù)據(jù)庫系統(tǒng)分析1.3.1數(shù)據(jù)庫性能需求分析該圖書租賃系統(tǒng)可以提供書籍信息的查詢和更新,讀者信息(會員信息)的查詢和更新、借閱和歸還書籍信息的查詢和更新以及情況的查詢和更新。1.3.2數(shù)據(jù)庫系統(tǒng)開發(fā)環(huán)境需求該數(shù)據(jù)庫系統(tǒng)是在MySQL的數(shù)據(jù)庫應(yīng)用軟件環(huán)境下開發(fā)的,用數(shù)據(jù)庫DDL語言定義數(shù)據(jù)庫及數(shù)據(jù)庫對象,用sql語言實(shí)現(xiàn)數(shù)據(jù)庫中數(shù)據(jù)的查詢和更新。2數(shù)據(jù)庫結(jié)構(gòu)設(shè)計數(shù)據(jù)庫結(jié)構(gòu)設(shè)計主要包括概念設(shè)計和邏輯設(shè)計兩個部分,概念

7、設(shè)計是整個數(shù)據(jù)庫設(shè)計的關(guān)鍵,它通過對用戶需求進(jìn)行綜合、歸納與抽象,形成一個獨(dú)立于具體DBMS的概念模型;而邏輯結(jié)構(gòu)設(shè)計是將概念結(jié)構(gòu)轉(zhuǎn)換為某個DBMS所支持的數(shù)據(jù)模型,并對其進(jìn)行優(yōu)化。2.1概念設(shè)計概念設(shè)計主要是將需求根系階段得到的用戶需求抽象為信息結(jié)構(gòu)(概念模型),它是整個數(shù)據(jù)庫設(shè)計的關(guān)鍵,包括概念模型設(shè)計概念模型設(shè)計和新系統(tǒng)流程兩個階段,設(shè)計概念結(jié)構(gòu)通常是四類方法:自頂向下:即首先定義全局概念結(jié)構(gòu)的框架,然后逐步細(xì)化。自底向上:即首先定義各局部應(yīng)用的概念結(jié)構(gòu),然后將他們集成起來,得到全局概念結(jié)構(gòu)。逐步擴(kuò)張:首先定義最重要核心概念結(jié)構(gòu),然后向外擴(kuò)充,以滾雪球的方式逐步聲稱其他概念結(jié)構(gòu),直至總體

8、概念結(jié)構(gòu)。本次課程設(shè)計我們采用自底向上的方法來設(shè)計概念結(jié)構(gòu)。2.1.1分E-R圖nm管理日期書籍系統(tǒng)管理員管理 圖一圖書管理系統(tǒng)E-R圖nm管理日期讀者信息系統(tǒng)管理員管理 圖二 會員信息管理系統(tǒng)E-R圖會員卡號會員姓名會員費(fèi)購買記錄應(yīng)收費(fèi)用購買m讀者歸還歸還書籍借閱借閱書名應(yīng)還日期書籍m借閱日期歸還日期借閱書號nn圖三 圖書歸還管理系統(tǒng)nm記錄日期收入信息系統(tǒng)管理員記錄圖四 收入信息管理系統(tǒng)E-R圖2.1.2總E-R圖管理書籍管理日期記錄信息會員信息管理員記錄收入信息記錄信息管理員ID管理員姓名11n書ID價格書名出版社作者出版日期分類應(yīng)還時間零售價會員價待借書籍待售書籍借出時間nnnn非會員

9、售會員借非會員借會員售1111111會員普通顧客圖3 邏輯設(shè)計邏輯結(jié)構(gòu)設(shè)計的任務(wù)是把概念結(jié)構(gòu)設(shè)計階段設(shè)計好的基本E-R圖轉(zhuǎn)換為與之?dāng)?shù)據(jù)模型想匹配的邏輯結(jié)構(gòu)。3.1建立關(guān)系模式將E-R圖向關(guān)系模式轉(zhuǎn)換一般遵循的如下原則:1、 一個實(shí)體型轉(zhuǎn)換為一個關(guān)系模式;2、 實(shí)體的屬性為關(guān)系的屬性;3、 實(shí)體的碼就是關(guān)系的碼。對于實(shí)體型間的聯(lián)系有以下不同情況:(1) 一個1:1聯(lián)系可以轉(zhuǎn)換為一個獨(dú)立的關(guān)系模式,也可以與任意一段對應(yīng)的關(guān)系模式合并。如果轉(zhuǎn)換為一個獨(dú)立的關(guān)系模式,則與該聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的屬性轉(zhuǎn)換為關(guān)系的屬性,每個實(shí)體的碼均是該關(guān)系的候選碼。如果與某一端實(shí)體對應(yīng)的關(guān)系模式合并,則需要

10、在該關(guān)系模式的屬性中加入另一個關(guān)系模式的碼和聯(lián)系本身的屬性。(2) 一個1:n聯(lián)系可以轉(zhuǎn)換為一個獨(dú)立的關(guān)系模式,也可以與n端對應(yīng)的關(guān)系模式合并,如果轉(zhuǎn)換為一個獨(dú)立的關(guān)系模式,則與該聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,而關(guān)系的碼為n端實(shí)體的碼。(3) 一個m:n聯(lián)系轉(zhuǎn)換為一個關(guān)系模式,與該聯(lián)系相連的各實(shí)體的碼以及本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,各實(shí)體的碼組成關(guān)系的碼或關(guān)系碼的一部分。(4) 3個或者3個以上實(shí)體間的一個多元聯(lián)系可以轉(zhuǎn)換為一個關(guān)系模式,與該多元聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,各實(shí)體的碼組成關(guān)系的碼或者關(guān)系碼的一部分。由E-R圖轉(zhuǎn)換得到的

11、關(guān)系模式如下:書籍信息(書的編號,書名,價格,作者,出版社,類別,書的總量,目前庫存量,借出量)待售書信息(待售書編號,待售書書名,會員價格,普通價格)外碼為書籍信息表中的書的編號待借書信息(待借書編號,待借書書名,借出狀態(tài),借出時間,應(yīng)還時間)外碼為書籍信息表中的書的編號會員信息(會員卡編號,會員姓名,會員性別,會員年齡,會員聯(lián)系電話,會員費(fèi),會員允許借書最大量,會員已借冊數(shù),會員到期日期)會員借書記錄(書的編號,會員卡編號,借出日期,應(yīng)還日期)非會員借書(書的編號,非會員聯(lián)系電話,借出日期,應(yīng)還日期,押金) 會員還書(會員卡編號,書的編號,應(yīng)還日期,歸還日期,是否過期,過期罰款,書受損罰款

12、,書丟失賠償金)非會員還書(書的編號,非會員聯(lián)系電話,應(yīng)還日期,歸還日期,是否過期,非會員租金,過期罰款,書受損罰款,書丟失賠償金)非會員買書記錄(售出書的編號,售出書的書名)外碼為書籍信息表中的書的編號會員買書記錄(會員卡編號,售出書的編號)外碼為會員信息表中會員卡編號和書籍信息表中書籍編號。系統(tǒng)管理員(管理員工號,管理員姓名,管理員聯(lián)系電話)收入管理(管理員工號,管理日期,非會員租金,過期罰款,書受損罰款,書丟失賠償金,當(dāng)天總收入)3.2關(guān)系模式規(guī)范化處理根據(jù)規(guī)范化理論,在關(guān)系數(shù)據(jù)庫中,對關(guān)系模式的基本要求是滿足第一范式,在第一范式的基礎(chǔ)上,消除非主屬性對碼的部分函數(shù)依賴就符合第二范式,在

13、第二范式的基礎(chǔ)上再消除非主屬性對碼的傳遞函數(shù)依賴就轉(zhuǎn)換為第三范式。分析可得我們上面建立的E-R圖模型符合第三范式。3.3關(guān)系模式邏輯結(jié)構(gòu)的定義表1Book編號名稱含義類型長度DL-1Bookname書名varchar20DL-2BookID書的編號char10DL-3Bookwriter書的作者varchar20DL-4Bookprice書的價格numeric10DL-5Bookclass書的種類char10DL-6Bookscount書的總數(shù)量smallint2DL-7Booknowcount目前庫存量smallint2DL-8Booknewcount新進(jìn)書的數(shù)量smallint2表2 Se

14、elBook編號名稱含義類型長度DL-34SBname待售書名varchar20DL-35SBID待售書編號char10DL-36SBWriter待售書作者varchar20DL-37SBVPrice待售書會員價格numeric10DL-38SBRprice待售書普通價格量numeric10DL-39SBcount待售書總量smallintDL-40SBNowCount待售書目前庫存smallintDL-41SBClass待售書種類char10表3 RentBook編號名稱含義類型長度DL-42RBname待借書書名varchar20DL-43RBID待借書編號char10DL-44RBWri

15、ter待借書作者varchar20DL-45RBprice待借書價格numeric10DL-46RBcount待借書總量smallintDL-47RBnowcount待借書目前庫存smallintDL-47RBclass待借書種類char10表3 Vip編號名稱含義類型長度DL-9Vname會員姓名varchar20DL-10Vno會員卡編號char10DL-11Vphno會員聯(lián)系電話char11DL-12VMdate會員到期日期datetimeDL-13Vwexpired會員是否過期char2DL-14Waexit是否允許會員退會char2DL-15Vfee會員費(fèi)smallint2DL-16

16、VBcount會員已借冊數(shù)smallint2DL-17VAcount會員允許借書最大量smallint2DL-18Vsex會員性別char2DL-19Vclass會員類別char10表4 會員借書記錄編號名稱含義類型長度DL-2BookID書的編號char10DL-10Vno會員卡編號char10DL-24Ldate借出日期datetimeDL-26Rdeadline應(yīng)還日期datetime表5 非會員借書記錄編號名稱含義類型長度DL-2BookID書的編號char10DL-21Tphno非會員聯(lián)系電話char11DL-22Tdeposit非會員押金Smallint2DL-24Ldate借出日

17、期datetimeDL-26Rdeadline應(yīng)還日期datetime表6 會員還書編號名稱含義類型長度DL-2BookID書的編號char10DL-10Vno會員卡編號char10DL-25Rdate歸還日期datetimeDL-26Rdeadline應(yīng)還日期datetimeDL-20Wrexpired是否過期還書char2DL-27Efine過期還書的罰款smallint2DL-28Bdfine書籍損壞的罰款Smallint2DL-29Lfine丟失書籍的罰款smallint2表7 非會員還書編號名稱含義類型長度DL-2BookID書的編號char10DL-21Tphno非會員聯(lián)系電話ch

18、ar11DL-25Rdate歸還日期datetimeDL-26Rdeadline應(yīng)還日期datetimeDL-20Wrexpired是否過期還書char2DL-27Efee過期還書的罰款smallint2DL-28Bdfee書籍損壞的罰款Smallint2DL-29Lfee丟失書籍的罰款smallint2DL-23Trent非會員租金smllint2表8 管理員信息表編號名稱含義類型長度DL-30Mno管理員編號char6DL-32Mname管理員姓名varchar20DL-33Mphno管理員聯(lián)系電話char15表9 收入信息表編號名稱含義類型長度DL-15Vfee會員費(fèi)int2DL-27E

19、fee過期還書的罰款int2DL-28Bdfee書籍損壞的罰款int2DL-29Lfee丟失書籍的罰款int2DL-30Mno管理員編號char6DL-31Ddate管理日期datetimeDL-54SellFine買書款int表10 售書記錄(BookSelling)編號名稱含義類型長度外碼DL-48SellBookID售出書編號char20SBookIDDL-49SellPrice售出書的價格numeric10DL-50SellBookName售出書書名varchar20DL-52SellBookCount售書數(shù)量intDL-53VipPurchase是否會員購買char2DL-10Vno

20、會員卡編號char10DL-104、 數(shù)據(jù)庫的物理設(shè)計數(shù)據(jù)庫在物理設(shè)備上的存儲結(jié)構(gòu)與存取方法稱為數(shù)據(jù)庫的物理結(jié)構(gòu),它依賴于選定的數(shù)據(jù)庫管理系統(tǒng),為一個給定的邏輯數(shù)據(jù)模型選取一個最適合應(yīng)用要求的物理結(jié)構(gòu)的過程,就是數(shù)據(jù)庫的物理設(shè)計。4.1物理設(shè)計的內(nèi)容通常關(guān)系型數(shù)據(jù)庫的物理設(shè)計的被容主要包括:1、 為關(guān)系模式選擇存儲方法;2、 設(shè)計關(guān)系、索引等數(shù)據(jù)庫文件的物理存儲結(jié)構(gòu)數(shù)據(jù)庫存儲位置在MySQL默認(rèn)路徑下,采用B+樹索引方法作為數(shù)據(jù)庫的存取方法。4.2索引的建立為了提高對書籍信息的查詢速度,對書的編號建立聚簇索引,對會員卡號建立唯一索引。添加書籍的索引BookName和BookWriter同樣的方

21、法建立:待借圖書索引:待借圖書的書名和待借圖書作者和待租圖書的:待租圖書的書名和待租圖書的作者5、數(shù)據(jù)庫的實(shí)施與測試 完成數(shù)據(jù)庫的物理設(shè)計之后,設(shè)計人員就要用RDBMS提供的數(shù)據(jù)定義語言和其他使用程序?qū)?shù)據(jù)庫邏輯設(shè)計和物理設(shè)計結(jié)果嚴(yán)格描述出來,成為DBMS可以接受的源代碼,再經(jīng)過調(diào)試產(chǎn)生目標(biāo)模式,然后就可以組織數(shù)據(jù)入庫了,這就是數(shù)據(jù)庫實(shí)施階段,該階段主要包括數(shù)據(jù)庫實(shí)施和測試兩個部分。5.1數(shù)據(jù)庫實(shí)施主要包括:數(shù)據(jù)庫的建立、基本表、視圖、索引、觸發(fā)器以及存儲過程;具體步驟見附錄。5.1.1數(shù)據(jù)庫的建立Mysql主界面在MySQL workbench中建立一個新的模式Physical Schema

22、s Book Rental_Sell System5.1.2 數(shù)據(jù)庫基本表的建立書籍表:Book待售圖書表:SellBook待租圖書表:RentBook會員信息表Vip會員歸還書籍記錄:VReturnRecord銷售書籍記錄:SellRecord,其中外鍵為VID被參照表為Vip中Vno非會員借書記錄:Regular_RentRecord非會員還書記錄:5.2數(shù)據(jù)入庫對各個主要數(shù)據(jù)表要錄入20條以上的記錄,方法可用Excel批量導(dǎo)入,避免逐條錄入。連接數(shù)據(jù)庫在MySQL中插入數(shù)據(jù)5.3數(shù)據(jù)庫測試主要內(nèi)容是對建立的數(shù)據(jù)庫以及數(shù)據(jù)庫對象進(jìn)行測試。運(yùn)行數(shù)據(jù)庫后點(diǎn)擊DataBase-Connect t

23、o Database設(shè)置參數(shù)再點(diǎn)OK連接上數(shù)據(jù)庫在Navigator里找到對應(yīng)的數(shù)據(jù)庫查看數(shù)據(jù)庫信息建立視圖:5.4安全控制建立不同類別賬戶分配不同的執(zhí)行權(quán)限6、 總結(jié)這次課程設(shè)計老師很久之前就布置,我也一直在思考該怎么做好。從需求分析,概念設(shè)計物理設(shè)計一步步坐下來更深層次的理解了關(guān)系型數(shù)據(jù)庫的建立過程,同時也使用了MySQLworkbench這樣的開源數(shù)據(jù)庫軟件,圖形界面的MySQL還有很多需要改進(jìn)的地方,比如建立數(shù)據(jù)庫再連接上服務(wù)器同步出現(xiàn)了很多問題,后來還要在服務(wù)器端費(fèi)很多時間去改正。還有就是需求分析和概念設(shè)計階段的重要性,什么事情計劃一下才會做的更好。開始的時候只是簡單的看了需求分析,

24、只是以為要完成租賃圖書而沒有售賣,后來又花了一番力氣去改正概念設(shè)計E-R圖,這個課程設(shè)計讓我更加懂得一項工程前面的設(shè)計是多么重要,它起到提綱挈領(lǐng)的作用,如果前面的設(shè)計沒有做好后面會很混亂,造成數(shù)據(jù)庫關(guān)系復(fù)雜擴(kuò)展性不高。我再重新設(shè)計之后再做之后就簡單很多,比如圖書分為待租和待借表,使用觸發(fā)器可以只對待借待租圖書表修改就可以完成書籍總表的刪除、添加、更新等操作,而銷售記錄會員購買和非會員購買合在一個表里,將VID作為外碼可以記錄會員的購買記錄,再通過視圖來提取會員的購買的記錄。這樣整個系統(tǒng)的各個表的獨(dú)立性更加好,符合第三范式,還可以增加一些其他的擴(kuò)展項??傊?,這是一個很好地過程。我也還有很多需要做

25、的地方,數(shù)據(jù)庫還沒有實(shí)現(xiàn)和具體的應(yīng)用的結(jié)合,接下來我會繼續(xù)去完善這個方面的。附錄一數(shù)據(jù)字典編號名稱含義類型長度DL-1Bookname書名varchar20DL-2BookID書的編號char10DL-3Bookwriter書的作者varchar20DL-4Bookprice書的價格numeric10DL-5Bookclass書的種類char10DL-6Bookscount書的總數(shù)量smallint2DL-7Booknowcount目前庫存量smallint2DL-8Booknewcount新進(jìn)書的數(shù)量smallint2DL-9Vname會員姓名varchar20DL-10Vno會員卡編號ch

26、ar10DL-11Vphno會員聯(lián)系電話char11DL-12VMdate會員到期日期datetimeDL-13Vwexpired會員是否過期char2DL-14Waexit是否允許會員退會char2DL-15Vfee會員費(fèi)smallint2DL-16VBcount會員已借冊數(shù)smallint2DL-17VAcount會員允許借書最大量smallint2DL-18Vsex會員性別char2DL-19Vclass會員類別char10DL-20Wrexpired是否過期還書char2DL-21Tphno非會員聯(lián)系電話char11DL-22Tdeposit非會員押金Smallint2DL-23Tre

27、nt非會員租金smllint2DL-24Ldate借出日期datetimeDL-25Rdate歸還日期datetimeDL-26Rdeadline應(yīng)還日期datetimeDL-27Efine過期還書的罰款smallint2DL-28Bdfine書籍損壞的罰款Smallint2DL-29Lfine丟失書籍的罰款smallint2DL-30Mno管理員編號char6DL-31Ddate管理日期datetimeDL-32Mname管理員姓名varchar20DL-33Mphno管理員聯(lián)系電話char15DL-34SBname待售書名varchar20DL-35SBID待售書編號char10DL-36

28、SBWriter待售書作者varchar20DL-37SBVPrice待售書會員價格numeric10DL-38SBRprice待售書普通價格量numeric10DL-39SBcount待售書總量smallintDL-40SBNowCount待售書目前庫存smallintDL-41SBClass待售書種類char10DL-42RBname待借書書名varchar20DL-43RBID待借書編號char10DL-44RBWriter待借書作者varchar20DL-45RBprice待借書價格numeric10DL-46RBcount待借書總量smallintDL-47RBnowcount待借書

29、目前庫存smallintDL-48SellBookID售出書編號char20DL-49SellPrice售出書的價格numeric10DL-50SellBookName售出書書名varchar20DL-51SellBookID買的書編號char20附錄二:數(shù)據(jù)庫具體實(shí)現(xiàn)代碼SET OLD_UNIQUE_CHECKS=UNIQUE_CHECKS, UNIQUE_CHECKS=0;SET OLD_FOREIGN_KEY_CHECKS=FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;SET OLD_SQL_MODE=SQL_MODE, SQL_MODE=TRADIT

30、IONAL,ALLOW_INVALID_DATES;CREATE SCHEMA IF NOT EXISTS BookRentalSystem ;USE BookRentalSystem ;- - Table BookRentalSystem.Book- -CREATE TABLE IF NOT EXISTS BookRentalSystem.Book ( BookID CHAR(13) NOT NULL, BookName VARCHAR(20) NOT NULL, BookWriter VARCHAR(20) NOT NULL, BookPrice FLOAT NULL, BookPubli

31、sher VARCHAR(20) NULL, BookClass CHAR(10) NULL, BookCount INT NULL, BookNowCount INT NULL, BookNewCount INT NULL, PRIMARY KEY (BookID), INDEX BookName (BookName ASC), INDEX BookWriter (BookWriter ASC)ENGINE = InnoDB;- - Table BookRentalSystem.Vip- -CREATE TABLE IF NOT EXISTS BookRentalSystem.Vip ( V

32、no CHAR(10) NOT NULL, Vname VARCHAR(20) NOT NULL, Vsex CHAR(2) NULL, Vphon CHAR(10) NULL, Vclass CHAR(10) NULL, VMdate DATETIME NOT NULL, Vwexpired CHAR(2) NULL, Waexit CHAR(2) NULL, Vfee SMALLINT NOT NULL, VBcount SMALLINT NULL, VAcount SMALLINT NULL, PRIMARY KEY (Vno)ENGINE = InnoDB;- - Table Book

33、RentalSystem.RentBook- -CREATE TABLE IF NOT EXISTS BookRentalSystem.RentBook ( RBID CHAR(10) NOT NULL, RBname VARCHAR(20) NOT NULL, RBclass CHAR(10) NOT NULL, RBWriter VARCHAR(20) NOT NULL, RBprice FLOAT NOT NULL, RBcount INT NULL, RBnowcount INT NULL, PRIMARY KEY (RBID), INDEX RBWriter (RBWriter AS

34、C), INDEX RBName (RBname ASC)ENGINE = InnoDB;- - Table BookRentalSystem.VRentRecord- -CREATE TABLE IF NOT EXISTS BookRentalSystem.VRentRecord ( Vno CHAR(10) NOT NULL, BookID CHAR(13) NOT NULL, Ldate DATETIME NOT NULL, Rdeadline DATETIME NOT NULL, PRIMARY KEY (Vno, BookID), INDEX BookID_idx (BookID A

35、SC), CONSTRAINT Vno FOREIGN KEY (Vno) REFERENCES BookRentalSystem.Vip (Vno) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT BookID FOREIGN KEY (BookID) REFERENCES BookRentalSystem.RentBook (RBID) ON DELETE SET NULL ON UPDATE SET NULL)ENGINE = InnoDB;- - Table BookRentalSystem.Regular_RentRecord-

36、 -CREATE TABLE IF NOT EXISTS BookRentalSystem.Regular_RentRecord ( BooID CHAR(13) NOT NULL, Tphon CHAR(11) NOT NULL, Tdeposit SMALLINT NULL, Ldate DATETIME NOT NULL, Rdeadline DATETIME NOT NULL, PRIMARY KEY (BooID, Tphon)ENGINE = InnoDB;- - Table BookRentalSystem.VReturnRecord- -CREATE TABLE IF NOT

37、EXISTS BookRentalSystem.VReturnRecord ( Vno CHAR(10) NOT NULL, BookID CHAR(13) NOT NULL, Rdate DATETIME NOT NULL, Rdeadline DATETIME NOT NULL, Wrexpired CHAR(2) NULL, Efine SMALLINT NULL, Bdfine SMALLINT NULL, Lfine SMALLINT NULL, PRIMARY KEY (Vno, BookID), INDEX BookID_idx (BookID ASC), CONSTRAINT

38、Vno FOREIGN KEY (Vno) REFERENCES BookRentalSystem.Vip (Vno) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT BookID FOREIGN KEY (BookID) REFERENCES BookRentalSystem.RentBook (RBID) ON DELETE NO ACTION ON UPDATE NO ACTION)ENGINE = InnoDB;- - Table BookRentalSystem.Regular_ReturnRecord- -CREATE TAB

39、LE IF NOT EXISTS BookRentalSystem.Regular_ReturnRecord ( BookID CHAR(10) NOT NULL, Tphon CHAR(11) NOT NULL, Rdate DATETIME NULL, Rdeadline DATETIME NULL, Wrexpired CHAR(2) NULL, Efee INT NULL, Bdfee INT NULL, Lfee INT NULL, Trent INT NULL, PRIMARY KEY (BookID, Tphon), INDEX Tphon_idx (Tphon ASC), CO

40、NSTRAINT BookID FOREIGN KEY (BookID) REFERENCES BookRentalSystem.RentBook (RBID) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT Tphon FOREIGN KEY (Tphon) REFERENCES BookRentalSystem.Regular_RentRecord (Tphon) ON DELETE CASCADE ON UPDATE CASCADE)ENGINE = InnoDB;- - Table BookRentalSystem.SellBook- -

41、CREATE TABLE IF NOT EXISTS BookRentalSystem.SellBook ( SBID CHAR(13) NOT NULL, SBname VARCHAR(20) NOT NULL, SBWriter VARCHAR(20) NULL, SBClass CHAR(10) NULL, SBVprice FLOAT NULL, SBRprice FLOAT NOT NULL, SBCount FLOAT NULL, SBNowCount FLOAT NULL, PRIMARY KEY (SBID), INDEX SBWriter (SBWriter ASC), IN

42、DEX SBName (SBname ASC)ENGINE = InnoDB;- - Table BookRentalSystem.Manager- -CREATE TABLE IF NOT EXISTS BookRentalSystem.Manager ( Mno CHAR(6) NOT NULL, Mname VARCHAR(20) NOT NULL, Mphon CHAR(15) NULL, PRIMARY KEY (Mno)ENGINE = InnoDB;- - Table BookRentalSystem.SellRecord- -CREATE TABLE IF NOT EXISTS

43、 BookRentalSystem.SellRecord ( SellBookID CHAR(20) NOT NULL, SellPrice FLOAT NULL, SellBookName VARCHAR(20) NULL, SellBookCount INT NULL, VipPurchase CHAR(2) NULL, VID CHAR(10) NULL, PRIMARY KEY (SellBookID), INDEX Vno_idx (VID ASC), CONSTRAINT VID FOREIGN KEY (VID) REFERENCES BookRentalSystem.Vip (Vno) ON DELETE SET NULL ON UPDATE SET NULL, CONSTRAINT SellBookID FOREIGN KEY (SellBookID) REFERENCES BookRentalSystem.SellBook (SBID) ON DELETE NO ACTION O

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。