《數(shù)據(jù)庫設計--《網上書店系統(tǒng)》(共14頁)》由會員分享,可在線閱讀,更多相關《數(shù)據(jù)庫設計--《網上書店系統(tǒng)》(共14頁)(15頁珍藏版)》請在裝配圖網上搜索。
1、精選優(yōu)質文檔-----傾情為你奉上
目錄
1
專心---專注---專業(yè)
1 系統(tǒng)需求分析
1.1 系統(tǒng)基本功能描述
網上書店系統(tǒng)是依據(jù)網上書店能夠在線出售圖書和管理需求而進行設計的,目的是實現(xiàn)在線接受客戶訂單、書店信息管理的功能。
需要在線購買圖書的客戶能夠通過網上書店系統(tǒng)查詢所需要的圖書是否有售并能夠查詢有售圖書的基本信息(比如圖書名稱、作者、出版社等)。如果客戶查詢到所需并且有售的圖書,能夠在線下達訂單,然后提交給數(shù)據(jù)庫,并且客戶能夠查詢自己的訂單的處理情況。同時,客戶應該能夠維護自己的信息(比如修改自己的收貨地址、聯(lián)系方式等)
2、。
網上書店系統(tǒng)應該至少擁有一個管理員。管理員能夠維護在售圖書的基本信息(比如圖書信息的增加、刪除、修改等),并且能夠對圖書進行分類管理。同時,管理員能夠維護客戶的信息,能夠審核客戶提交的訂單以確認或刪除訂單。
1.2 系統(tǒng)數(shù)據(jù)流圖
通過對系統(tǒng)需求進行分析,我們確定系統(tǒng)中有兩類用戶:管理員和客戶。
各類用戶的具體描述如下:
(1) 管理員
描述:管理員負責后臺管理。包括增加、刪除、修改圖書信息,對
圖書進行分類管理;維護客戶信息(增加和刪除客戶賬號);審核訂單并確認合法訂單或刪除非法訂單。
(2) 客戶
描述:客戶可以查詢有售圖書的基本信息;可以維護自己的信息;可以進行網上
3、訂書;可以查詢訂單的處理情況。
1.2.1 數(shù)據(jù)流分析
根據(jù)分析,我們可以得到系統(tǒng)的數(shù)據(jù)流圖。
(1)網上書店系統(tǒng)頂層數(shù)據(jù)流圖如圖1-1所示。
1.2.2 數(shù)據(jù)字典
根據(jù)數(shù)據(jù)流程分析,對系統(tǒng)數(shù)據(jù)進行分析和匯總,建立系統(tǒng)數(shù)據(jù)字典。下面列出部分數(shù)據(jù)字典內容。
1.2.2.1 數(shù)據(jù)項
(1)管理員
① {管理員編號,每位管理員在系統(tǒng)中的唯一編號也是管理員登陸的賬號名,char(7)}
② {管理員姓名,char(10)}
③ {管理員登陸密碼,char(10)}
(2)客戶
① {客戶編號,每位客戶在系統(tǒng)中的唯一編號,char(7)}
②
4、 {客戶姓名,char(10)}
③ {地址編號,客戶有多個地址時每個地址的編號,char(7)}
④ {地址,客戶收貨地址中某個具體地址,varchar(20)}
⑤ {聯(lián)系方式,客戶的電話號碼,char(15)}
⑥ {賬戶余額,客戶購書賬戶的余額,float(7)}
⑦ {登陸密碼,char(10)}
(3)訂單
① {訂單號,唯一標識一張訂單的編號,char(7)}
② {訂單日期,生成訂單的時間,datetime,取值為提交訂單的時間}
③ {收貨人姓名,查收圖書的人的姓名,char(10),同客戶姓
5、名}
④ {收貨人聯(lián)系方式,收貨人的電話號碼,char(15),同聯(lián)系方式}
⑤ {發(fā)貨地址,圖書送達的目的地,varchar(100),是客戶收貨地址中的一個}
⑥ {管理員編號,審核該訂單的管理員的編號,char(7),同管理員編號}
(4)訂單細則
① {細則號,唯一標識一個訂單細則,char(7)}
② {圖書編號,訂單所包含的圖書的編號,char(7),同圖書信息中的圖書編號}
③ {訂購數(shù)量,購買同本圖書的數(shù)量,smallint,取值不大于此本圖書的庫存余量}
6、 ④ {發(fā)貨狀況,已訂購圖書的發(fā)貨情況,varchar(100)}
(5)圖書信息
① {圖書編號,唯一標識一款圖書的編號,char(7)}
② {圖書名,圖書的題名,varchar(20)}
③ {作者,圖書的作者,char(10)}
④ {出版社,圖書的出版方,varchar(20)}
⑤ {圖書類別,圖書的分類,varchar(20)}
⑥ {庫存余量,當前書店此款圖書的剩余量,smallint,當前庫存量=上次庫存量-售出數(shù)量}
⑦ {圖書價格,圖書的售價
7、,float(5),圖書價格大于零}
1.2.2.2 數(shù)據(jù)結構
(1){圖書信息,每本圖書的具體信息,組成:{圖書編號,圖書名,作者,出版社,圖書類別,庫存余量,圖書價格} }
(2){管理員,管理員的基本信息,組成:{管理員編號,管理員姓名} }
(3){客戶,客戶的基本信息,組成:{客戶編號,客戶姓名,收貨地址,賬戶余額,聯(lián)系方式} }
(4){收貨地址,客戶的收貨地址,組成:{地址編號,地址} }
(5){訂單,訂單的信息,組成:{訂單號,訂單日期,訂單細則,收貨人姓名,
發(fā)貨地址,管理員編號,收貨人聯(lián)系方式} }
(6){訂單細則,訂單的細節(jié)內容,組成:{細
8、則號,圖書編號,訂購數(shù)量,發(fā)貨狀況} }
2 系統(tǒng)設計
2.1 數(shù)據(jù)庫設計
2.1.1 概念結構設計
1.系統(tǒng)涉及到的實體
(1)管理員{管理員編號,管理員姓名}
(2)客戶{客戶編號,客戶姓名,收貨地址,賬戶余額,聯(lián)系方式}
(3)圖書{圖書編號,圖書名,作者,出版社,圖書類別,庫存余量,圖書價格}
(4)訂單{訂單號,訂單日期,訂單細則,收貨人姓名,發(fā)貨地址,管理員編號,收貨人聯(lián)系方式}
(5)訂單細則{細則號,圖書編號,訂購數(shù)量,發(fā)貨狀況}
(6)收貨地址{地址編號,地址}
2. 系統(tǒng)E-R模型設計
9、 A. 分E-R 模型設計
(1)每個客戶可以擁有多個收貨地址,這些地址只能被這個客戶使用。因此,客戶與收貨地址之間是一對多關系。E-R圖如下:
(2)一個客戶可以下達多個定單,一個訂單只能屬于一個客戶。因此,客戶與訂單是一對多關系。E-圖如下:
(3)一份訂單里可以包含若干個訂單細則。因此,訂單與訂單細則之間是一對多關系。E-R圖如下:
(4) 一個管理員可以審核多份定單,但是一份訂單只能被一個管理員審核。因此,管理員與訂單是一對多關系。E-R圖如下:
(5) 一個訂單細
10、則可以包含多本圖書,一本圖書也可以包含在多份訂單細則中。因此,圖書與訂單細則之間是多對多關系。E-R圖如下:
B. 系統(tǒng)的總E-R圖
合并以上E-R圖即得系統(tǒng)總E-R圖如下:
2.1.2 邏輯結構設計
根據(jù)以上的分析,將E-R模型轉換成邏輯模型,設計出本系統(tǒng)的數(shù)據(jù)庫。根據(jù)需要,設計了6個數(shù)據(jù)表,2個視圖。如下所示:
l 管理員信息表:該表記錄了管理員的相關信息,包括管理員編號,登陸密碼管理員姓名。
l 客戶信息表:該表記錄了客戶的相關信息,包括客戶編號,登錄密碼,客戶姓名,聯(lián)系方式,賬戶余額。
l 收貨地址表:該表記錄了客
11、戶的收貨地址信息,包括地址編號,客戶編號,地址。
l 訂單表:該表記錄了訂單的基本信息,包括訂單號,客戶編號,訂單日期,收貨人姓名,發(fā)貨地址,收貨人聯(lián)系方式,管理員編號。
l 訂單細則表:該表記錄了訂單的細則信息,包括細則號,訂單號,圖書編號,訂購數(shù)量,發(fā)貨狀況。
l 圖書信息表:該表記錄了圖書的基本信息,包括圖書編號,圖書名,作者,出版社,圖書類別,庫存余量,圖書價格。
(1)客戶購書信息視圖:包括圖書名,作者,出版社,訂購數(shù)量,訂單日期,發(fā)貨狀況,賬戶余額。
(2)管理員訂單審核視圖:包括訂單號,客戶號,圖書編號,訂購數(shù)量。
根據(jù)上面的邏輯結構設計,設計相應的表結構如下
12、所示。
1.管理員信息表(Ginfo)
該表記錄了管理員的相關信息,包括管理員編號,管理員姓名。其結構如表2-1所示:
表2-1 Ginfo
字段
說明
類型(長度)
備注
Gid
管理員編號
char(7)
主鍵,不為空
Gcode
登錄密碼
char(10)
不為空
Gname
管理員姓名
char(10)
不為空
2.客戶信息表(Kinfo)
該表記錄了客戶的相關信息,包括客戶編號,客戶姓名,聯(lián)系方式,賬戶余額。其結構如表2-2所示:
表2-2 Kinfo
字段
說明
類型(長度)
備注
Kid
客戶編號
char(
13、7)
主鍵,不為空
Kcode
登錄密碼
char(10)
不為空
Kname
客戶姓名
char(10)
不為空
Kcontact
聯(lián)系方式
char(15)
不為空
Ksave
賬戶余額
float(7)
不小于零
3.收貨地址表(ADinfo)
該表記錄了客戶的收貨地址信息,包括地址編號,客戶編號,地址。其結構如表2-3所示:
表2-3 ADinfo
字段
說明
類型(長度)
備注
ADid
地址編號
char(7)
主鍵,不為空
Kid
客戶編號
char(7)
主鍵,外鍵,不為空
Add
地址
varcha
14、r(100)
不為空
4.訂單表(Dinfo)
該表記錄了訂單的基本信息,包括訂單號,客戶編號,訂單日期,收貨人姓名,發(fā)貨地址,收貨人聯(lián)系方式,管理員編號。其結構如表2-4所示:
表2-4 Dinfo
字段
說明
類型(長度)
備注
Did
訂單號
char(7)
主鍵,不為空
Kid
客戶編號
char(7)
主鍵,外鍵,不為空
Dname
收貨人姓名
char(10)
不為空
Dadd
發(fā)貨地址
varchar(100)
外鍵,不為空
Dcontact
收貨人聯(lián)系方式
char(15)
外鍵,不為空
Gid
管理員編號
ch
15、ar(7)
外鍵,不為空
Ddate
訂單日期
datetime
不為空
5.訂單細則表(Xinfo)
該表記錄了訂單的細則信息,包括細則號,訂單號,圖書編號,訂購數(shù)量,發(fā)貨狀況。其結構如表2-5所示:
表2-5 Xinfo
字段
說明
類型(長度)
備注
Xid
細則號
char(7)
主鍵,不為空
Did
訂單號
char(7)
主鍵,外鍵,不為空
Tid
圖書編號
char(7)
外鍵,不為空
Xnum
訂購數(shù)量
smallint
大于零
Xdetail
發(fā)貨狀況
varchar(100)
默認未發(fā)貨
6.圖書信息表
16、(Tinfo)
該表記錄了圖書的基本信息,包括圖書編號,圖書名,作者,出版社,圖書類別,庫存余量,圖書價格。其結構如表2-6所示:
表 2-6 Tinfo
字段
說明
類型(長度)
備注
Tid
圖書編號
char(7)
主鍵,不為空
Tname
圖書名
varchar(20)
不為空
Twriter
作者
char(10)
不為空
Tpub
出版社
varchar(20)
不為空
Tnum
庫存余量
smallint
不小于零,不為空
Tprice
圖書價格
float(5)
不小于零,不為空
Tsort
圖書類別
varch
17、ar(20)
不為空
2.2 系統(tǒng)物理設計
1.存儲過程
(1)訂單處理系統(tǒng)是整個網上書店系統(tǒng)的核心。它的功能是檢查客戶欲提交的訂單細則數(shù)據(jù)的合法性。主要包括:檢查圖書的庫存余量是否為零、檢查客戶的賬戶余額是否足夠支付購書款。檢查訂單細則數(shù)據(jù)流程圖如圖3-1所示:
圖3-1 檢查訂單數(shù)據(jù)流程圖
小結
不足:如在訂單處理功能上應當增加發(fā)票處理功能,在圖書管理上應當增加圖書的倉儲管理功能等。