数据库设计《网上书店系统》.docx

上传人:b****0 文档编号:1013939 上传时间:2022-10-15 格式:DOCX 页数:10 大小:248.19KB
下载 相关 举报
数据库设计《网上书店系统》.docx_第1页
第1页 / 共10页
数据库设计《网上书店系统》.docx_第2页
第2页 / 共10页
数据库设计《网上书店系统》.docx_第3页
第3页 / 共10页
数据库设计《网上书店系统》.docx_第4页
第4页 / 共10页
数据库设计《网上书店系统》.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

数据库设计《网上书店系统》.docx

《数据库设计《网上书店系统》.docx》由会员分享,可在线阅读,更多相关《数据库设计《网上书店系统》.docx(10页珍藏版)》请在冰豆网上搜索。

数据库设计《网上书店系统》.docx

数据库设计《网上书店系统》

1系统需求分析

1.1系统基本功能描述

网上书店系统是依据网上书店能够在线出售图书和管理需求而进行设计的,目的是实现在线接受客户订单、书店信息管理的功能。

需要在线购买图书的客户能够通过网上书店系统查询所需要的图书是否有售并能够查询有售图书的基本信息(比如图书名称、作者、出版社等)。

如果客户查询到所需并且有售的图书,能够在线下达订单,然后提交给数据库,并且客户能够查询自己的订单的处理情况。

同时,客户应该能够维护自己的信息(比如修改自己的收货地址、联系方式等)。

网上书店系统应该至少拥有一个管理员。

管理员能够维护在售图书的基本信息(比如图书信息的增加、删除、修改等),并且能够对图书进行分类管理。

同时,管理员能够维护客户的信息,能够审核客户提交的订单以确认或删除订单。

1.2系统数据流图

通过对系统需求进行分析,我们确定系统中有两类用户:

管理员和客户。

各类用户的具体描述如下:

(1)管理员

描述:

管理员负责后台管理。

包括增加、删除、修改图书信息,对

图书进行分类管理;维护客户信息(增加和删除客户账号);审核订单并确认合法订单或删除非法订单。

(2)客户

描述:

客户可以查询有售图书的基本信息;可以维护自己的信息;可以进行网上订书;可以查询订单的处理情况。

1.2.1数据流分析

根据分析,我们可以得到系统的数据流图。

(1)网上书店系统顶层数据流图如图1-1所示。

1.2.2数据字典

根据数据流程分析,对系统数据进行分析和汇总,建立系统数据字典。

下面列出部分数据字典内容。

1.2.2.1数据项

(1)管理员

①{管理员编号,每位管理员在系统中的唯一编号也是管理员登陆的账号名,char(7)}

②{管理员姓名,char(10)}

③{管理员登陆密码,char(10)}

(2)客户

①{客户编号,每位客户在系统中的唯一编号,char(7)}

②{客户姓名,char(10)}

③{地址编号,客户有多个地址时每个地址的编号,char(7)}

④{地址,客户收货地址中某个具体地址,varchar(20)}

⑤{联系方式,客户的电话号码,char(15)}

⑥{账户余额,客户购书账户的余额,float(7)}

⑦{登陆密码,char(10)}

(3)订单

①{订单号,唯一标识一张订单的编号,char(7)}

②{订单日期,生成订单的时间,datetime,取值为提交订单的时间}

③{收货人姓名,查收图书的人的姓名,char(10),同客户姓名}

④{收货人联系方式,收货人的电话号码,char(15),同联系方式}

⑤{发货地址,图书送达的目的地,varchar(100),是客户收货地址中的一个}

⑥{管理员编号,审核该订单的管理员的编号,char(7),同管理员编号}

(4)订单细则

①{细则号,唯一标识一个订单细则,char(7)}

②{图书编号,订单所包含的图书的编号,char(7),同图书信息中的图书编号}

③{订购数量,购买同本图书的数量,smallint,取值不大于此本图书的库存余量}

④{发货状况,已订购图书的发货情况,varchar(100)}

(5)图书信息

①{图书编号,唯一标识一款图书的编号,char(7)}

②{图书名,图书的题名,varchar(20)}

③{作者,图书的作者,char(10)}

④{出版社,图书的出版方,varchar(20)}

⑤{图书类别,图书的分类,varchar(20)}

⑥{库存余量,当前书店此款图书的剩余量,smallint,当前库存量=上次库存量-售出数量}

⑦{图书价格,图书的售价,float(5),图书价格大于零}

1.2.2.2数据结构

(1){图书信息,每本图书的具体信息,组成:

{图书编号,图书名,作者,出版社,图书类别,库存余量,图书价格}}

(2){管理员,管理员的基本信息,组成:

{管理员编号,管理员姓名}}

(3){客户,客户的基本信息,组成:

{客户编号,客户姓名,收货地址,账户余额,联系方式}}

(4){收货地址,客户的收货地址,组成:

{地址编号,地址}}

(5){订单,订单的信息,组成:

{订单号,订单日期,订单细则,收货人姓名,

发货地址,管理员编号,收货人联系方式}}

(6){订单细则,订单的细节内容,组成:

{细则号,图书编号,订购数量,发货状况}}

2系统设计

2.1数据库设计

2.1.1概念结构设计

1.系统涉及到的实体

(1)管理员{管理员编号,管理员姓名}

(2)客户{客户编号,客户姓名,收货地址,账户余额,联系方式}

(3)图书{图书编号,图书名,作者,出版社,图书类别,库存余量,图书价格}

(4)订单{订单号,订单日期,订单细则,收货人姓名,发货地址,管理员编号,收货人联系方式}

(5)订单细则{细则号,图书编号,订购数量,发货状况}

(6)收货地址{地址编号,地址}

2.系统E-R模型设计

A.分E-R模型设计

(1)每个客户可以拥有多个收货地址,这些地址只能被这个客户使用。

因此,客户与收货地址之间是一对多关系。

E-R图如下:

(2)一个客户可以下达多个定单,一个订单只能属于一个客户。

因此,客户与订单是一对多关系。

E-图如下:

(3)一份订单里可以包含若干个订单细则。

因此,订单与订单细则之间是一对多关系。

E-R图如下:

(4)一个管理员可以审核多份定单,但是一份订单只能被一个管理员审核。

因此,管理员与订单是一对多关系。

E-R图如下:

 

(5)一个订单细则可以包含多本图书,一本图书也可以包含在多份订单细则中。

因此,图书与订单细则之间是多对多关系。

E-R图如下:

B.系统的总E-R图

合并以上E-R图即得系统总E-R图如下:

 

2.1.2逻辑结构设计

根据以上的分析,将E-R模型转换成逻辑模型,设计出本系统的数据库。

根据需要,设计了6个数据表,2个视图。

如下所示:

管理员信息表:

该表记录了管理员的相关信息,包括管理员编号,登陆密码管理员姓名。

客户信息表:

该表记录了客户的相关信息,包括客户编号,登录密码,客户姓名,联系方式,账户余额。

收货地址表:

该表记录了客户的收货地址信息,包括地址编号,客户编号,地址。

订单表:

该表记录了订单的基本信息,包括订单号,客户编号,订单日期,收货人姓名,发货地址,收货人联系方式,管理员编号。

订单细则表:

该表记录了订单的细则信息,包括细则号,订单号,图书编号,订购数量,发货状况。

图书信息表:

该表记录了图书的基本信息,包括图书编号,图书名,作者,出版社,图书类别,库存余量,图书价格。

(1)客户购书信息视图:

包括图书名,作者,出版社,订购数量,订单日期,发货状况,账户余额。

(2)管理员订单审核视图:

包括订单号,客户号,图书编号,订购数量。

根据上面的逻辑结构设计,设计相应的表结构如下所示。

1.管理员信息表(Ginfo)

该表记录了管理员的相关信息,包括管理员编号,管理员姓名。

其结构如表2-1所示:

表2-1Ginfo

字段

说明

类型(长度)

备注

Gid

管理员编号

char(7)

主键,不为空

Gcode

登录密码

char(10)

不为空

Gname

管理员姓名

char(10)

不为空

2.客户信息表(Kinfo)

该表记录了客户的相关信息,包括客户编号,客户姓名,联系方式,账户余额。

其结构如表2-2所示:

表2-2Kinfo

字段

说明

类型(长度)

备注

Kid

客户编号

char(7)

主键,不为空

Kcode

登录密码

char(10)

不为空

Kname

客户姓名

char(10)

不为空

Kcontact

联系方式

char(15)

不为空

Ksave

账户余额

float(7)

不小于零

3.收货地址表(ADinfo)

该表记录了客户的收货地址信息,包括地址编号,客户编号,地址。

其结构如表2-3所示:

表2-3ADinfo

字段

说明

类型(长度)

备注

ADid

地址编号

char(7)

主键,不为空

Kid

客户编号

char(7)

主键,外键,不为空

Add

地址

varchar(100)

不为空

4.订单表(Dinfo)

该表记录了订单的基本信息,包括订单号,客户编号,订单日期,收货人姓名,发货地址,收货人联系方式,管理员编号。

其结构如表2-4所示:

表2-4Dinfo

字段

说明

类型(长度)

备注

Did

订单号

char(7)

主键,不为空

Kid

客户编号

char(7)

主键,外键,不为空

Dname

收货人姓名

char(10)

不为空

Dadd

发货地址

varchar(100)

外键,不为空

Dcontact

收货人联系方式

char(15)

外键,不为空

Gid

管理员编号

char(7)

外键,不为空

Ddate

订单日期

datetime

不为空

5.订单细则表(Xinfo)

该表记录了订单的细则信息,包括细则号,订单号,图书编号,订购数量,发货状况。

其结构如表2-5所示:

表2-5Xinfo

字段

说明

类型(长度)

备注

Xid

细则号

char(7)

主键,不为空

Did

订单号

char(7)

主键,外键,不为空

Tid

图书编号

char(7)

外键,不为空

Xnum

订购数量

smallint

大于零

Xdetail

发货状况

varchar(100)

默认未发货

6.图书信息表(Tinfo)

该表记录了图书的基本信息,包括图书编号,图书名,作者,出版社,图书类别,库存余量,图书价格。

其结构如表2-6所示:

表2-6Tinfo

字段

说明

类型(长度)

备注

Tid

图书编号

char(7)

主键,不为空

Tname

图书名

varchar(20)

不为空

Twriter

作者

char(10)

不为空

Tpub

出版社

varchar(20)

不为空

Tnum

库存余量

smallint

不小于零,不为空

Tprice

图书价格

float(5)

不小于零,不为空

Tsort

图书类别

varchar(20)

不为空

2.2系统物理设计

1.存储过程

(1)订单处理系统是整个网上书店系统的核心。

它的功能是检查客户欲提交的订单细则数据的合法性。

主要包括:

检查图书的库存余量是否为零、检查客户的账户余额是否足够支付购书款。

检查订单细则数据流程图如图3-1所示:

 

 

图3-1检查订单数据流程图

 

小结

不足:

如在订单处理功能上应当增加发票处理功能,在图书管理上应当增加图书的仓储管理功能等。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1