《數據庫課程設計》論文-圖書租賃管理系統(tǒng)數據庫設計_第1頁
《數據庫課程設計》論文-圖書租賃管理系統(tǒng)數據庫設計_第2頁
《數據庫課程設計》論文-圖書租賃管理系統(tǒng)數據庫設計_第3頁
《數據庫課程設計》論文-圖書租賃管理系統(tǒng)數據庫設計_第4頁
《數據庫課程設計》論文-圖書租賃管理系統(tǒng)數據庫設計_第5頁
已閱讀5頁,還剩50頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、信息工程學院?數據庫課程設計?論文題 目:圖書租賃管理系統(tǒng)數據庫設計學 號:專業(yè)班級:姓 名:指導老師:完成日期:圖書租賃管理系統(tǒng)數據庫設計學生姓名:摘 要隨著科學的開展,人類知識的范圍在不斷增長,書籍一直是人們獲取并增長知識的主要途徑,而各類書店在人們的學習生活中也逐漸占據了重要的位置。擺脫傳統(tǒng)的人工管理方式,實現(xiàn)科學、有效地管理書店不僅能提高書店自身的開展,也能極大的方便各類讀者的需求。因此,開發(fā)一個完善的圖書租賃管理系統(tǒng)是十分必要的。本文介紹了在SQL Server2021和ORACLE環(huán)境下,設計開發(fā)一個圖書租賃管理系統(tǒng)的星系過程。本系統(tǒng)采用自頂向下地分析與設計,自下而上地應用開發(fā)的策

2、略,實現(xiàn)如下功能:對書籍信息的管理,對借閱者類別及信息,借書、還書的管理。形成了一個比擬全面系統(tǒng)的管理模式。關鍵字:圖書租賃;SQL Sever2021;ORACLE;讀者管理;書籍管理 TOC o 1-3 h z u HYPERLINK l _Toc298494962 引言 PAGEREF _Toc298494962 h 1 HYPERLINK l _Toc298494963 開發(fā)背景 PAGEREF _Toc298494963 h 1 HYPERLINK l _Toc298494964 開發(fā)目標及意義 PAGEREF _Toc298494964 h 1 HYPERLINK l _Toc29

3、8494965 1需求分析 PAGEREF _Toc298494965 h 1 HYPERLINK l _Toc298494966 處理對象及組織 PAGEREF _Toc298494966 h 1 HYPERLINK l _Toc298494967 信息處理及系統(tǒng)功能 PAGEREF _Toc298494967 h 1 HYPERLINK l _Toc298494968 數據庫系統(tǒng)分析 PAGEREF _Toc298494968 h 2 HYPERLINK l _Toc298494969 數據庫性能需求分析 PAGEREF _Toc298494969 h 2 HYPERLINK l _Toc

4、298494970 1.3.2 數據庫系統(tǒng)開發(fā)環(huán)境需求 PAGEREF _Toc298494970 h 2 HYPERLINK l _Toc298494971 2數據庫結構設計 PAGEREF _Toc298494971 h 2 HYPERLINK l _Toc298494972 2.1 概念設計 PAGEREF _Toc298494972 h 2 HYPERLINK l _Toc298494973 2.1.1 分E-R圖建立 PAGEREF _Toc298494973 h 3 HYPERLINK l _Toc298494974 2.1.2 全局/整體E-R圖 PAGEREF _Toc2984

5、94974 h 6 HYPERLINK l _Toc298494975 2.2 邏輯設計 PAGEREF _Toc298494975 h 6 HYPERLINK l _Toc298494976 2.2.1 建立關系模式 PAGEREF _Toc298494976 h 7 HYPERLINK l _Toc298494977 2.2.2 關系模式標準化處理 PAGEREF _Toc298494977 h 8 HYPERLINK l _Toc298494978 2.2.3 用戶子模式建立 PAGEREF _Toc298494978 h 8 HYPERLINK l _Toc298494979 2.2.

6、4 關系模式邏輯結構定義 PAGEREF _Toc298494979 h 8 HYPERLINK l _Toc298494980 3 數據庫物理設計 PAGEREF _Toc298494980 h 11 HYPERLINK l _Toc298494981 3.1 物理設計的內容 PAGEREF _Toc298494981 h 11 HYPERLINK l _Toc298494982 3.2索引的建立 PAGEREF _Toc298494982 h 11 HYPERLINK l _Toc298494983 4數據庫實施與測試 PAGEREF _Toc298494983 h 11 HYPERLIN

7、K l _Toc298494984 4.1 數據庫實施 PAGEREF _Toc298494984 h 12 HYPERLINK l _Toc298494985 4.1.1 數據庫及數據庫對象建立 PAGEREF _Toc298494985 h 12 HYPERLINK l _Toc298494986 4.1.2 數據入庫 PAGEREF _Toc298494986 h 12 HYPERLINK l _Toc298494987 4.2 數據庫測試 PAGEREF _Toc298494987 h 12 HYPERLINK l _Toc298494988 5總結 PAGEREF _Toc29849

8、4988 h 12 HYPERLINK l _Toc298494989 6附錄 PAGEREF _Toc298494989 h 13 HYPERLINK l _Toc298494990 附錄1 數據流程圖 PAGEREF _Toc298494990 h 13 HYPERLINK l _Toc298494991 附錄2 數據字典 PAGEREF _Toc298494991 h 17 HYPERLINK l _Toc298494992 附錄3 數據庫及數據庫對象建立 PAGEREF _Toc298494992 h 21 HYPERLINK l _Toc298494993 3.1 數據庫及數據表的建

9、立SQL Server2021 PAGEREF _Toc298494993 h 21 HYPERLINK l _Toc298494994 3.2 數據庫及數據表的建立Oracle PAGEREF _Toc298494994 h 23 HYPERLINK l _Toc298494995 3.3 數據表視圖的建立SQL Server2021 PAGEREF _Toc298494995 h 25 HYPERLINK l _Toc298494996 數據表視圖的建立Oracle PAGEREF _Toc298494996 h 28 HYPERLINK l _Toc298494997 附錄4 觸發(fā)器及存

10、儲過程 PAGEREF _Toc298494997 h 30 HYPERLINK l _Toc298494998 4.1 存儲過程的定義SQL Server2021 PAGEREF _Toc298494998 h 30 HYPERLINK l _Toc298494999 存儲過程的定義Oracle PAGEREF _Toc298494999 h 37 HYPERLINK l _Toc298495000 4.3 觸發(fā)器的定義SQL Server2021 PAGEREF _Toc298495000 h 39 HYPERLINK l _Toc298495001 4.4 觸發(fā)器的定義Oracle PA

11、GEREF _Toc298495001 h 41 HYPERLINK l _Toc298495002 附錄5 數據查詢及存儲過程功能驗證 PAGEREF _Toc298495002 h 43 HYPERLINK l _Toc298495003 數據查詢及存儲過程運行截圖SQL Server2021 PAGEREF _Toc298495003 h 43 HYPERLINK l _Toc298495004 數據查詢及存儲過程運行截圖Oracle PAGEREF _Toc298495004 h 48 HYPERLINK l _Toc298495005 參考文獻 PAGEREF _Toc2984950

12、05 h 52引言開發(fā)背景隨著科學的開展,人類知識的范圍在不斷增長,書籍一直是人們獲取并增長知識的主要途徑,而各類書店在人們的學習生活中也逐漸占據了重要的位置。擺脫傳統(tǒng)的人工管理方式,實現(xiàn)科學、有效地管理書店不僅能提高書店自身的開展,也能極大的方便各類讀者的需求。因此,開發(fā)一個完善的圖書租賃管理系統(tǒng)是十分必要的。開發(fā)目標及意義該圖書租賃管理系統(tǒng)基于計算機技術,實現(xiàn)查詢、借閱、歸還的操作以及對收入信息、讀者信息管理和書籍信息管理的功能??梢詽M足中小型書店的租書業(yè)務的順利有效的進行。保證了數據的實時更新,不僅方便了書店工作人員對系統(tǒng)的管理,也利于人們更好的借閱書籍,歸還書籍,滿足讀者的不同的需要。

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

14、信息的更新,查詢;借閱歸還系統(tǒng):實現(xiàn)不同類別讀者的借閱和歸還圖書的管理;收入管理系統(tǒng):實現(xiàn)不同情況下書店的收入情況詳情見附錄一中的數據流程圖和數據字典數據庫性能需求分析該圖書租賃管理系統(tǒng)可以提供書籍信息的查詢和更新、讀者信息主要是會員信息的查詢和更新、借閱和歸還書籍信息的查詢和更新以及收入情況的查詢和更新。 數據庫系統(tǒng)開發(fā)環(huán)境需求該數據庫系統(tǒng)是在SQL Server2021的數據庫應用軟件環(huán)境下開發(fā)的,用數據庫DDL語言定義數據庫及數據庫對象,用DML語言實現(xiàn)數據庫中數據的查詢和更新操作。2數據庫結構設計主要包括概念設計和邏輯設計兩個局部。概念結構設計是整個數據庫設計的關鍵,它通過對用戶需求進

15、行綜合、歸納與抽象,形成一個獨立于具體DBMS的概念模型;而邏輯結構設計是將概念結構轉換為某個DBMS所支持的數據模型,并對其進行優(yōu)化。2.1 概念設計概念設計主要是將需求分析階段得到的用戶需求抽象為信息結構(概念模型),它是整個數據庫設計的關鍵,包括概念模型設計和新系統(tǒng)流程兩個階段。設計概念結構通常有四類方法:自頂向下。即首先定義全局概念結構的框架,然后逐步細化。自底向上。即首先定義各局部應用的概念結構,然后將它們集成起來,得到全局概念結構。逐步擴張。首先定義最重要的核心概念結構,然后向外擴充,以滾雪球的方式逐步生成其他概念結構,直至總體概念結構?;旌喜呗浴<磳⒆皂斚蛳潞妥缘紫蛏舷嘟Y合,用自

16、頂向下策略設計一個全局概念結構的框架,以它為骨架集成由自底向上策略中設計的各局部概念結構。 分E-R圖建立根據某個系統(tǒng)的具體情況,在多層的數據流圖中選擇一個適當層次的數據流圖,作為設計分E-R圖的出發(fā)點,讓這組圖中每一局部對應一個局部應用。先選擇好局部應用后,對每一個局部應用逐一設計分ER圖。將局部應用所包含的數據從數據字典中抽取出來,參照數據流圖,標定局部應用中的實體、實體的屬性、標識實體的碼,確定實體之間的聯(lián)系及其類型。(如圖1到圖3)圖1 借閱歸還系統(tǒng)分E-R圖圖2 讀者信息管理系統(tǒng)分E-R圖圖3書籍信息管理系統(tǒng)分E-R圖圖4收入信息管理系統(tǒng)分E-R圖各分E-R圖每個實體的屬性如下所示:

17、收入信息:Mno,Ddate,Trent,Efine,Bdfine,Lfine,DIncomeSum書籍信息:Bsno,Bname,Bprice,Bwriter,Bsort,Bscount,Bnowcount,Bnewcount系統(tǒng)管理員: Mno,Mname,Mphno會員信息: Vno,Vname,Vsex,Vphno ,Vwexpired,Vfee,Vacount,Vbcount,Waexit,Vmdate 全局/整體E-R圖圖5圖書租賃管理系統(tǒng)總E-R圖2.2 邏輯設計邏輯結構設計的任務就是把概念結構設計階段設計好的根本E-R圖轉換為與選用DBMS產品所支持的數據模型相符合的邏輯結構。

18、邏輯結構設計一般要分3步進行:將概念結構轉換為一般的關系、網狀、層次模型;將轉換來的關系、網狀、層次模型向特定的DBMS支持下的數據模型轉換;對數據模型進行優(yōu)化。闡述邏輯設計階段目標、任務和方法,重點介紹邏輯設計的主要內容。 建立關系模式將E-R圖向關系模型的轉換一般遵循如下原那么:一個實體型轉換為一個關系模式;實體的屬性就是關系的屬性;實體的碼就是關系的碼。對于實體型間的聯(lián)系有以下不同情況:一個1:1聯(lián)系可以轉換為一個獨立的關系模式,也可以與任意一段對應的關系模式合并。如果轉換為一個獨立的關系模式,那么與該聯(lián)系相連的各實體的碼以及聯(lián)系本身的屬性轉換為關系的屬性,每個實體的碼均是該關系的候選碼

19、。如果與某一端實體對應的關系模式合并,那么需要在該關系模式的屬性中參加另一個關系模式的碼和聯(lián)系本身的屬性。一個1:n聯(lián)系可以轉換為一個獨立的關系模式,也可以與n端對應的關系模式合并,如果轉換為一個獨立的關系模式,那么與該聯(lián)系相連的各實體的碼以及聯(lián)系本身的屬性均轉換為關系的屬性,而關系的碼為n端實體的碼。一個m:n聯(lián)系轉換為一個關系模式。與該聯(lián)系相連的各實體的碼以及本身的屬性均轉換為關系的屬性,各實體的碼組成關系的碼或關系碼的一局部。3各或3個以上實體間的一個多元聯(lián)系可以轉換為一個關系模式。與該多元聯(lián)系相連的各實體的碼以及聯(lián)系本身的屬性均轉換為關系的屬性,各實體的碼組成關系的碼或關系碼的一局部。

20、具有下溝通嗎的關系模式可合并。關系模式表示形式為 RU,F(xiàn)由E-R圖轉換得到的關系模式如下:書籍信息書的店內編號,書名,書的定價,書的作者,書的類別,書的總數量,目前庫存量,新進書數量會員信息會員卡編號,會員姓名,會員性別,會員聯(lián)系 ,會員費,會員允許借書最大量,會員已借冊數,會員到期日期會員借書書的店內編號,會員卡編號,借出日期,應還日期非會員借書書的店內編號,非會員聯(lián)系 ,借出日期,應還日期 ,押金會員還書會員卡編號,書的店內編號,應還日期,歸還日期,是否過期,過期罰款,書受損罰款,書喪失賠償金非會員還書書的店內編號,非會員聯(lián)系 ,應還日期,歸還日期,是否過期,非會員租金,過期罰款,書受損

21、罰款,書喪失賠償金 系統(tǒng)管理員管理員工號,管理員姓名,管理員聯(lián)系 收入管理管理員工號,管理日期,非會員租金,過期罰款,書受損罰款,書喪失賠償金,當天收入總計 關系模式標準化處理根據關系標準化理論,在關系數據庫中,對關系模式的根本要求是滿足第一范式。在一范式的根底上,消除非主屬性對碼的局部函數依賴就轉換為二范式,在二范式的根底上再消除非主屬性對碼的傳遞函數依賴就轉換為三范式。依次關系標準化理論分析,以上由E-R圖轉換得到的關系模式均滿足三范式模式的要求。 用戶子模式建立根據需求分析,建立滿足不同需求的用戶子模式,子模式表示形式為如下:表1 用戶子模式編號視圖名稱數據項簡介V-1BookinfoB

22、name,Bwriter,Bsno,Bnowcount查詢書籍信息V-2VBBinfoBsno,Vno,Ldate查詢非會員借閱信息V-3TRBinfoBsno, Tphno,Trent,Tdeposit,Bdfine,Efine查詢會員還書信息V-4InmanagerInfoMname, Mno,Mphno,DIncomeSum,Ddate查詢進行收入管理的系統(tǒng)管理員信息 關系模式邏輯結構定義表1 Book編號名稱含義類型長度取值范圍DL-1Bname書名varchar20DL-2Bsno書的店內編號char10000000-111111DL-3Bwriter書的作者varchar20DL-

23、4Bprice書的定價numeric10DL-5Bsort書的類別char10DL-6BScount書的總數量smallintDL-7Bnowcount目前庫存量smallintDL-8Bnewcount新進書的數量smallint表2 Vip編號名稱含義類型長度取值范圍DL-10Vname會員姓名varchar20DL-11Vno會員卡編號char10000-999DL-12Vsex會員性別char10DL-13Vphno會員聯(lián)系 char15DL-14VMdate會員到期日期datetimeDL-15Vsort會員類別char10DL-16Vwexpired會員是否過期char2DL-17

24、Waexit是否允許會員退會char2DL-18Vfee會員費smallintDL-19VBcount會員已借冊數smallintDL-20VAcount會員允許借書最大量samllint表3 SystemManager編號名稱含義類型長度取值范圍DL-33Mno管理員工號char4DL-35Mname管理員姓名varchar20DL-36Mphno管理員聯(lián)系 char15表4 會員借書編號名稱含義類型長度取值范圍DL-2Bsno書的店內編號char10000000-111111DL-11Vno會員卡編號char10000-999DL-23Ldate借出日期datetimeDL-25Rdead

25、line應還日期datetime表5 非會員借書編號名稱含義類型長度取值范圍DL-2Bsno書的店內編號char10000000-111111DL-23Ldate借出日期datetimeDL-25Rdeadline應還日期datetimeDL-20Tphno非會員聯(lián)系 char15DL-21Tdeposit非會員押金smallint表6 會員還書編號名稱含義類型長度取值范圍DL-2Bsno書的店內編號char10000000-111111DL-10Vno會員卡編號char10000-999DL-19Wrexpired是否過期還書char2DL-24Rdate歸還日期datetimeDL-25R

26、deadline應還日期datetimeDL-26Efine過期還書的罰款numericDL-27Bdfine由于書籍損壞交的罰款smallintDL-28Lfine由于喪失而繳納的賠償金smallint表7 非會員還書編號名稱含義類型長度取值范圍DL-2Bsno書的店內編號char10000000-111111DL-19Wrexpired是否過期還書char2DL-24Rdate歸還日期datetimeDL-25Rdeadline應還日期datetimeDL-26Efine過期還書的罰款numericDL-27Bdfine由于書籍損壞交的罰款smallintDL-28Lfine由于喪失而繳納

27、的賠償金smallintDL-22Trent非會員租金smallint表8 收入信息編號名稱含義類型長度取值范圍DL-16Vfee會員費smallintDL-26Efine過期還書的罰款numeric10,0DL-27Bdfine由于書籍損壞交的罰款smallintDL-28Lfine由于喪失而繳納的賠償金smallintDL-22Trent非會員租金smallintDL-29Mno管理員工號char4DL-30Ddate管理日期datetime3 數據庫物理設計數據庫在物理設備上的存儲結構與存取方法稱為數據庫的物理結構,它依賴于選定的數據庫管理系統(tǒng)。為一個給定的邏輯數據模型選取一個最適合應用

28、要求的物理結構的過程,就是數據庫的物理設計。3.1 物理設計的內容通常關系數據庫物理設計的內容主要包括:為關系模式選擇存儲方法;設計關系、索引等數據庫文件的物理存儲結構數據庫存儲位置在SQL Server2021默認路徑下,采用B+樹索引方法作為數據庫的存取方法。索引的建立為了提高對書籍信息的查詢速度,對書的店內編號建立聚簇索引;對會員卡號建立唯一索引。4數據庫實施與測試完成數據庫的物理設計之后,設計人員就要用RDBMS提供的數據定義語言和其他實用程序將數據庫邏輯設計和物理設計結果嚴格描述出來,成為DBMS可以接受的源代碼,再經過調試產生目標模式。然后就可以組織數據入庫了,這就是數據庫實施階段

29、。該階段主要包括數據庫實施和測試兩個局部。4.1 數據庫實施 數據庫及數據庫對象建立主要包括:數據庫、根本表、視圖、索引、觸發(fā)器以及存儲過程;對于具體的DDL語句以及相關代碼。詳見附錄3 數據入庫對各個主要數據表要錄入20條以上的記錄,方法可用EXCEL批量導入,也可以逐條錄入。4.2 數據庫測試主要內容是對建立的數據庫及數據庫對象進行測試詳見附錄5及附錄6。5總結在此次數據庫實習過程中,我開發(fā)的是一個圖書租賃管理系統(tǒng)。當初最終選擇這個題目的原因是多方面的,主要的有一點就是我以前有過類似的經歷,所以覺得可能能設計出更合理的同時又符合設計要求的數據庫系統(tǒng)。而萬事開頭難,在需求分析環(huán)節(jié)主要考慮了圖

30、書租賃模式中最主要的三個流水業(yè)務:書籍管理、借閱歸還圖書業(yè)務和讀者信息管理業(yè)務。就整個系統(tǒng)的完成情況來看,在需求分析階段設計的各個查詢和更新操作均已通過存儲過程和觸發(fā)器實現(xiàn)。對該系統(tǒng)中的各個功能實現(xiàn)分為SQL實現(xiàn)和Oracle實現(xiàn),其中,在SQL下,由于對于環(huán)境和語法結構比擬熟悉,因此編寫觸發(fā)器和存儲過程還算比擬順利。然而在Oracle下,剛開始簡直寸步難行,Oracle的語法結構和SQL幾乎完全不同,除了數據表的建立較為簡單,在Oracle中寫存儲過程和觸發(fā)器給我留下了很深的印象,特別是在調試的過程中出現(xiàn)了很多讓我匪夷所思的錯誤,最后在老師和同學的幫助下算是根本上解決了。通過此次數據庫實習,

31、首先使我充分了解了開發(fā)數據庫系統(tǒng)的根本流程,在各個環(huán)節(jié)的根本任務和根本方法,與此同時,我也體會到了在開發(fā)數據庫系統(tǒng)的過程中,要養(yǎng)成書寫文檔的好習慣,隨時記錄工程開發(fā)的進度和內容,以便催促我們在規(guī)定的時間內完成規(guī)定的任務。除此之外,通過在不同的環(huán)境下編寫存儲過程和觸發(fā)器,使我對這兩者有了更深入的理解,能夠用根本的查詢和判斷來實現(xiàn)復雜的功能,特別是SQl和Oracle中內置函數的調用。但是,在實習的過程中,不可防止的出現(xiàn)了很多錯誤,特別是需求分析階段所做的數據流圖、數據字典等,它們既是整個數據庫開發(fā)的根底,也為后面實施各種結構設計提供參考,好多錯誤都是在進行到后面的結構設計時發(fā)現(xiàn)后又要返回重新定義

32、需求分析。我覺得這次最大的收獲除了知識的掌握和能力得到培養(yǎng)鍛煉之外,懂得了一個道理,凡事細節(jié)決定了事情的成敗,因為一個小小的錯誤卻可能導致其他的問題需要重頭來過。還有就是要抱著一顆虛心學習的心,對于不懂的問題要及時與老師和同學溝通,才能更好的促進學習。在這樣學習的過程中,老師們總是耐心的為我們答疑解惑,非常感謝老師們。尤其是宋老師,從來都那么有耐心,無論我們的問題在老師看來是多么的簡單,她都從來是耐心的為我們一一解答,謝謝宋老師。6附錄附錄1 數據流程圖圖1 頂層數據流程圖表2 第一層數據流程圖表3 第二層數據流程圖書籍管理表4 第二層數據流程圖讀者信息管理表5 第二層數據流程圖圖書借閱表6

33、第二層數據流程圖圖書歸還附錄2 數據字典表1 數據項列表編號名稱含義類型長度取值范圍DL-1Bname書名varchar20DL-2Bsno書的店內編號char10000000-111111DL-3Bwriter書的作者varchar20DL-4Bprice書的定價numeric10DL-5Bsort書的類別char10DL-6BScount書的總數量smallintDL-7Bnowcount目前庫存量smallintDL-8Bnewcount新進書的數量smallintDL-9Vname會員姓名varchar20DL-10Vno會員卡編號char10000-999DL-11Vsex會員性別c

34、har10DL-12Vphno會員聯(lián)系 char15DL-13VMdate會員到期日期datetimeDL-14Vwexpired會員是否過期char2DL-15Waexit是否允許會員退會char2DL-16Vfee會員費smallintDL-17VBcount會員已借冊數smallintDL-18VAcount會員允許借書最大量samllintDL-19Wrexpired是否過期還書char2DL-20Tphno非會員聯(lián)系 char15DL-21Tdeposit非會員押金smallintDL-22Trent非會員租金smallintDL-23Ldate借出日期datetimeDL-24Rd

35、ate歸還日期datetimeDL-25Rdeadline應還日期datetimeDL-26Efine過期還書的罰款numericDL-27Bdfine由于書籍損壞交的罰款smallintDL-28Lfine由于喪失而繳納的賠償金smallintDL-29Mno管理員工號char4DL-30Ddate管理日期datetimeDL-31Mname管理員姓名varchar20DL-32Mphno管理員聯(lián)系 char15表2 數據結構列表編號名稱含義組成DS-1IBookRecord進書記錄書的店內編號,書名,書的作者DS-2Reader讀者讀者類別,非會員聯(lián)系 ,會員聯(lián)系 ,會員編號DS-3Sys

36、temManager系統(tǒng)管理員管理員號,值班日期,聯(lián)系 表3 處理邏輯的描述編號名稱簡述輸入的數據流處理輸出的數據流抽取書籍編號將外來的書籍進行分類,假設有店內編號那么為還回的書,否那么是新進書書號在書號書的店內編號表中查找所給書號的店內編號書的店內編號登記入庫將還回的書放回書籍流水找到書的店內編號的書號將找到書籍編號的書的信息放回書庫書籍信息,S2借閱流水創(chuàng)立店內編號根據將要被編號的書籍的書的編號和書的類別賦予新的店內編號沒有找到書的店內編號的書號為其創(chuàng)立店內編號新書的店內編號,S2借閱流水,S1書店臺賬檢查書的狀況管理員根據讀者的將還的書的情況,以及是否過期,來決定是否需要罰款,然后進行更

37、新借書記錄讀者即將還書的書的店內編號檢查是否需要罰款罰款單,將還書的書目讀者分類將書籍按照會員和非會員所借來卻分,從而進行不同的還書操作。讀者信息分類會員借書記錄,和非會員借書記錄會員還書會員還書時,只需消除該條借書記錄,同時更新該書在書庫的信息會員所借書的店內編號消除該條借書記錄,并更新該書的書庫信息書的信息,S2借閱流水非會員還書非會員還書時,除了消除該書的借閱記錄,還需要收取租金,退回其押金。非會員所借書的店內編號消除該條借書記錄,并更新該書的書庫信息。同時,收取租金,和返回讀者的押金。書的信息,租金,S2借閱流水分類根據系統(tǒng)管理員提供的借書記錄,進行分類得到會員借書登記表和非會員借書登

38、記表借書登記根據是否有會員卡編號,將借書記錄分為會員的和非會員的會員借書記錄,和非會員借書記錄查詢會員根據得到的會員借書登記表查詢會員,從而得到會員借書信息會員借書登記表根據會員卡編號查詢相應的會員借書信息某個會員的借書信息判斷權限根據某個會員的借書信息,根據會員類別,已借冊數決定是否還有權限再借,還可再借幾本某個會員借書信息判斷權限還可再借閱的冊數允許借書從上一步完了之后得到的還可再借閱的冊數進行借書登記還可再借閱的冊數,借閱書的店內編號進行借閱登記 會員借書信息,S2借閱流水,S1書店臺賬非會員借書根據得到的非會員借書登記表,對非會員借書進行登記非會員借書登記表 登記非會員的借書信息非會員

39、的借書信息,S2借閱流水,S1書店臺賬會員還書經過權限判斷之后,如果會員想要再借,需要先將之前借的書還回,所以要進行會員還書的操作未還回的書目進行還書登記還回書的信息,S2借閱流水,S1書店臺賬查找通過系統(tǒng)管理員提供的讀者信息,查找得到有借閱記錄的讀者信息,從而得到欲借書的非會員讀者的信息讀者信息按照是否有借閱歷史來得到有借閱記錄的讀者信息有借閱記錄的讀者信息判斷是否是會員根據給出的有借閱記錄的讀者信息中,根據是否有會員卡編號來判斷是否是會員有借閱記錄的讀者信息判斷是否是會員會員信息查看借書記錄根據所得的會員借書記錄,得到所借書目均已還回的會員的名單,和超出期限的會員的名單會員借書記錄根據會員

40、類別所決定的最大借書量,和已借冊數的大小關系,判斷得到所借書目均已還回的會員名單;根據會員到期日期,得到超出期限的會員名單所借書目均已還回的會員名單,超出期限的會員名單刪除會員將超出期限的會員和允許退回的會員的會員信息從會員信息表中刪除超出期限的會員信息,將要退會的會員的會員信息將所輸入的可以退出的會員信息從會員信息表中刪除刪除相應會員信息后的會員信息,S3會員流水決定是否成為會員讀者根據自己想要借書的情況,比方由于時間等的考慮,決定是否成為會員欲借書的非會員讀者信息讀者做選擇選擇入會的讀者的信息獲取會員號記錄將入會的讀者的信息,同時賦予其 會員卡編號,同時選擇會員類別等入會者的信息賦予其會員

41、卡編號,選擇會員類別新會員的信息更新會員信息將新入會的讀者的信息作為會員信息記錄記入會員信息表中新會員的信息更新會員信息表添加會員后的會員信息,S3會員流水附錄3 數據庫及數據庫對象建立3.1 數據庫及數據表的建立SQL Server2021create database BBScreate table Book(Bsno char(15) primary key,Bname varchar (30)not null,Bprice numeric (10)not null,Bwriter varchar (20)unique,Bsort char (10)not null,BScount sm

42、allint not null,BNowcount smallint ,BNewcount smallint)create table Vip(Vno char (10) primary key,Vname varchar (20)unique,Vsex char (5)check(vsex=男or vsex=女),Vphno varchar(11)not null,Vwexpired char (2)check(vwexpired=是or vwexpired=否),Vfee smallint,VAcount smallint,VBcount smallint,Waexit char (10)

43、check(waexit=允許or waexit=不允許),VMdate datetime )create table VBorrowBook(Bsno char(15)primary key,Vno char(10),Ldate datetime,Rdeadline datetime,foreign key(Vno)references Vip(Vno),foreign key(Bsno)references Book(Bsno)create table TBorrowBook(Bsno char(15),Tphno char(15),Ldate datetime,ReadLine date

44、time,Tdeposit smallint,primary key (Bsno,Tphno),foreign key(Bsno)references Book(Bsno)create table VReturnBook(Vno char(10),Bsno char(15),Rdeadline datetime,Rdate datetime,Wrexpired char(2),Bdfine smallmoney,Lfine smallmoney,Efine smallmoney,primary key(Bsno,Vno),foreign key(Vno)references Vip(Vno),

45、foreign key(Bsno)references Book(Bsno)create table TReturnBook(Bsno char(15),Tphno char(15),Readline datetime,Rdate datetime,Wrexpired char(2),Trent smallint,Efine smallint,Bdfine smallint,Lfine smallint,primary key(Bsno,Tphno),foreign key(Bsno)references Book(Bsno)create table SystemManager(Mno cha

46、r(4)primary key,Mname varchar(20),Mphno char(15)not null)create table Income(Mno char(4) primary key,Ddate datetime,Trent smallint,Efine smallint,Bdfine smallint,Lfine smallint,Vfee smallint,DIncomeSum smallint,foreign key(Mno)references SystemManager(Mno)3.2 數據庫及數據表的建立Oraclecreate database BBScreat

47、e table Book(Bsno char(15) primary key,Bname varchar (30)not null,Bprice numeric (10)not null,Bwriter varchar (20)unique,Bsort char (10)not null,BScount smallint not null,BNowcount smallint ,BNewcount smallint)create table Vip(Vno char (10) primary key,Vname varchar (20)unique,Vsex varchar (5)check(

48、vsex=男or vsex=女),Vphno varchar(11)not null,Vwexpired varchar (2)check(vwexpired=是or vwexpired=否),Vfee smallint,VAcount smallint,VBcount smallint,Waexit varchar (10)check(waexit=允許or waexit=不允許),VMdate date )create table VBorrowBook(Bsno varchar(15)primary key,Vno varchar(10),Ldate date,Rdeadline dat

49、e,foreign key(Vno)references Vip(Vno),foreign key(Bsno)references Book(Bsno)create table TBorrowBook(Bsno varchar(15),Tphno varchar(15),Ldate date,ReadLine date,Tdeposit smallint,primary key (Bsno,Tphno),foreign key(Bsno)references Book(Bsno)create table VReturnBook(Vno varchar(10),Bsno varchar(15),

50、Rdeadline date,Rdate date,Wrexpired varchar(2),Bdfine number,Lfine number,Efine number,primary key(Bsno,Vno),foreign key(Vno)references Vip(Vno),foreign key(Bsno)references Book(Bsno)create table TReturnBook(Bsno char(15),Tphno char(15),Readline date,Rdate date,Wrexpired char(2),Trent smallint,Efine

51、 smallint,Bdfine smallint,Lfine smallint,primary key(Bsno,Tphno),foreign key(Bsno)references Book(Bsno)create table SystemManager(Mno char(4)primary key,Mname varchar(20),Mphno char(15)not null)create table Income(Mno char(4) primary key,Ddate datet,Trent smallint,Efine smallint,Bdfine smallint,Lfin

52、e smallint,Vfee smallint,DIncomeSum smallint,foreign key(Mno)references SystemManager(Mno)3.3 數據表視圖的建立SQL Server20211. 查詢會員所借書的信息表create view VBBinfo as select Book.Bsno,Vno,Bwriter,BnameFROM Book,VBorrowBook create view TBBinfo as select Book.Bsno,Tphno from Book,TBorrowBook whe 3.查詢進行收入管理的系統(tǒng)管理員的信息

53、create view InmanagerInfoas select Mname,SystemManager.Mno,Mphno,DIncomeSum,Ddate from SystemManager,Income 3.4數據表視圖的建立Oraclecreate view VBBinfoasselect Book.Bsno,Vno,Bwriter,BnameFROM Book,VBorrowBookcreate view TBBinfoasselect Book.Bsno,Tphnofrom Book,TBorrowBookcreate view InmanagerInfoasselect M

54、name,SystemManager.Mno,Mphno,DIncomeSum,Ddatefrom SystemManager,Income附錄4 觸發(fā)器及存儲過程4.1 存儲過程的定義SQL Server2021 create procedure P1_Book_Insert Bsno char(15) , Bname char (30), Bprice numeric (10), Bwriter char (20), Bsort char (10), BScount smallint, BNowcount smallint , BNewcount smallint as insert in

55、to Book values(Bsno,Bname,Bprice,Bwriter, Bsort,Bscount,Bnowcount,Bnewcount); create procedure P2_Vip_Insert Vno char (10) , Vname varchar (20), Vsex char (5), Vphno varchar(11), Vwexpired char (2), Vfee smallint, VAcount smallint, VBcount smallint, Waexit char (10), VMdate datetime as insert into V

56、ip values(Vno,Vname,Vsex,Vphno,Vwexpired,vfee, Vacount,Vbcount,Waexit,Vmdate);create procedure P3_SystemManager_InsertMno char(4),Mname varchar(20),Mphno char(15)asinsert into SystemManagervalues(Mno,Mname,Mphno)create procedure P4_Income_InsertMno char(4),Ddate datetime,Trent smallint,Efine smallin

57、t,Bdfine smallint,Lfine smallint,Vfee smallint,DIncomeSum smallintasinsert into Incomevalues(Mno,Ddate,Trent,Efine,Bdfine,Lfine,Vfee,DIncomeSum)create procedure P5_VBorrowBook_InsertBsno char(15),Vno char(10),Ldate datetime,Rdeadline datetimeasinsert into VBorrowBookvalues(Bsno,Vno,Ldate,Rdeadline)c

58、reate procedure P6_VReturnBook_InsertVno char(10),Bsno char(15),Rdeadline datetime,Rdate datetime,Wrexpired char(2),Bdfine smallmoney,Lfine smallmoney,Efine smallmoneyasinsert into VReturnBookvalues(Vno,Bsno,Rdeadline,Rdate,Wrexpired,Efine,Bdfine,Lfine)create procedure P7_TBorrowBook_InsertBsno char

59、(15),Tphno char(15),Ldate datetime,ReadLine datetime,Tdeposit smallintasinsert into TBorrowBookvalues(Bsno,Tphno,Ldate,Readline,Tdeposit)create procedure P8_TReturnBook_InsertBsno char(15),Tphno char(15),Readline datetime,Rdate datetime,Wrexpired char(2),Trent smallint,Efine smallint,Bdfine smallint

60、,Lfine smallintasinsert into TReturnBookvalues(Bsno,Tphno,Readline,Rdate,Wrexpired,Trent,Efine,Bdfine,Lfine)create procedure P9_Book_DeleteBname char(30)asdeletefrom Bookwhere Bname=RTRIM(LTRIM(Bname);create procedure P10_SystemManager_DeleteMno char(4)asdeletefrom SystemManagerwhere Mno=RTRIM(LTRIM

溫馨提示

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

最新文檔

評論

0/150

提交評論