1.3 管理员需求分析
管理员模块的功能包括菜品管理,订单管理,会员信息管理三大功能。其
中,在个菜品管理中可以对菜品信息进行添加、修改和查询操作;在订单管理中
可以通过未确认、已确认、已下单三种形式进行管理、也可查看所有订单信息;
会员信息管理中,可以添加会员信息和修改会员信息,进而方便顾客网上订购美
食,并享有优惠,这一做法人性化的完成网站的推广,避免了顾客的抵触情绪。
2.3 数据字典
2.3.1 数据项
数据项编号
DI-0
DI-1
DI-2
DI-3
DI-4
DI-5
DI-6
DI-7
DI-8
DI-9
DI-10
DI-11
DI-12
DI-13
DI-14
DI-15
DI-16
DI-17
DI-18
DI-19
DI-20
DI-21
DI-22
DI-23
DI-24
DI-25
DI-26
DI-27
DI-28
DI-29
DI-30
DI-31
数据项名
用户编号
用户名
用户密码
用户姓名
用户性别
用户手机
数据项含义说明
用户的唯一标识
用户登陆时的名称
用户登陆时的密码
用户的真实姓名
用户的性别
用户的联系电话
用户固定电话
用户的联系电话
用户地址
用户邮箱
用户年龄
用户生日
餐馆编号
餐馆名称
餐馆地址
餐馆电话
用户的送货地址
用户的个人邮箱
用户的真实年龄
用户的出生日期
餐馆的唯一标识
餐馆的全称
餐馆的详细地址
餐馆的联系电话
餐馆联系人
餐馆联系人的姓名
菜品编号
菜名名称
菜品类别
菜品的唯一标识
菜品的名称
菜品所属的类别名称
菜品类别编号
菜品类别的唯一标识
菜品价格
菜品折扣
菜品份数
订单编号
订单日期
订单总额
送餐编号
送餐地址
送餐日期
送餐员名称
送餐员电话
省份编号
菜品的单价
菜品的折扣率
菜品的份数
订单的唯一标识
订单产生的日期
订单所有菜品的总额
送餐的唯一标识
送餐的详细地址
送餐的日期
送餐员的真实姓名
送餐员的联系电话
省份的唯一标识
数据类型
长度
int
char
char
char
char
char
char
char
char
int
date
int
char
char
char
char
int
char
char
int
float
float
int
int
date
float
int
char
date
char
char
int
17
17
20
2
40
40
100
50
50
100
40
20
40
20
100
20
40
数据项编号
DI-32
DI-33
DI-34
数据项名
省份名称
城市编号
城市名称
数据项含义说明
数据类型
省份的名称
城市的唯一标识
城市的名称
char
int
char
长度
20
20
2.3.2 数据结构
数据结构编号 数据结构名
DS-1
DS-2
DS-3
DS-4
DS-5
DS-6
Class
User
Restaurant
Meal
Order
DeliveryNote
2.3.3 处理过程
含义说明
组成
菜品分类信息
DI-18,DI-19
用户信息
餐馆信息
菜品信息
订单信息
送餐信息
DI-0 至 DI-10
DI-11 至 DI-15
DI-16 至 DI-22
DI-23、DI-24、DI-25、DI-27、DI-0
DI-26 至 DI-30,DI-1、DI-14、DI-15
处理过程编号 处理过程名
说明
输入
输出
处理
P-1
注册
所有用户 用户详细信息
P-2
登录
所有用户 用户名和密码
注册成功信息
或失败信息
登陆成功信息
或失败信息
成功:跳转到
登陆页面
失败:重新注
册
成功:跳转到
首页
失败:重新登
陆
P-3
修改账号
已 经 登 陆
的用户
原用户名、新的
用户名、确认新
用户名、密码
修改成功或失
败信息
修改数据库信
息
P-4
P-5
P-6
P-7
修改密码
已 经 登 陆
的用户
原来的密码、新
的密码、确认新
密码
修改成功或失
败信息
修改数据库信
息
修 改 常 用 收
货信息
已 经 登 陆
的用户
新的收货地址、
新的联系方式
添 加 收 获 信
息
已 经 登 陆
的用户
新的收货信息
修 改 用 户 信
息
已 经 登 陆
的用户
用户信息
- 2 -
修改数据库信
息
修改数据库信
息
修改数据库信
息
处理过程编号 处理过程名
说明
输入
输出
处理
P-8
P-9
添 加 到 购 物
车
所有用户
修改购物车
所有用户
P-10
下订单
已 登 录 用
户
P-11
查 看 并 确 认
订单
已 登 录 用
户
P-12
提交订单
已 登 录 用
户
订餐成功信息
P-13
接收订单
客服人员
将用户所选的
菜品添加到购
物车
修改购物车信
息
根据购物车和
用户信息自动
生成订单
修改数据库信
息
将订单信息传
送给相关工作
人员
P-14
信息检索
所有用户 要检索的内容 检索信息内容
P-15
P-16
P-17
P-18
发布信息
已 登 录 用
户
要发布的信息
修改数据库信
息
系统维护
管理员
信息更新
管理员
需 要 更 新 的 信
息
修改数据库信
息
用 户 投 诉 与
评价
已 登 录 的
用户
投诉/评价内容
投 诉 / 评 价 内
容
修改数据库信
息
- 3 -
第三章 数据库逻辑结构设计阶段
3.1 数据库逻辑模式初步构思
根据 ER 图转换成基本表的思想,即每个实体转换成基本表,而 1 对多的联
系根据实际需要可以转换或不转换为基本表,按照图 2-1 所示的 ER 图,该系统
的基本表应为 5 个,分别为:
管理员编号
姓名
密码
登陆 IP
最后登录时间
表 3-1 管理员表
主码
用户编号
姓名
地址
手机
注册时间
表 3-2 用户表
主码
表 3-3 订单表
手机号 地址 总金额 下单
订单状态 订单改
备注 会员编
时间
变时间
号
外码
订单
编号
主码
编号
菜名
原价
优惠价 菜名的介绍 图片 创建时间
表 3-4 菜谱表
主码
订单项编号
订单编号
姓名
状态
表 3-5 订单项表
主码
- 4 -
3.2 具体逻辑模式设计
表的具体结构
表名
字段名
字段类型
关键字
约束说明
是
是
是
是
是
不允许空值
参照用户信息表的用户编
号,不允许空值
参照订单信息表的订单编
号,不允许空值
菜谱信息
用户信息
管理员信息
订单信息
菜谱编号
菜名
原价
10 个字符
20 个字符
20 个字符
20 个字符
50 个字符
姓名
优惠价
菜名介绍
图片
创建时间
用户编号
姓名
地址
手机
注册时间
管理员编号
10 个字符
10 个字符
10 个字符
50 个字符
20 个字符
10 个字符
10 个字符
10 个字符
10 个字符
管理员密码
20 个字符
登录 IP
10 个字符
最后登录时间
15 个字符
订单编号
20 个字符
手机号
20 个字符
地址
10 个字符
总金额
10 个字符
下单时间
10 个字符
订单状态
订单改变时间 10 个字符
50 个字符
备注
10 个字符
会员编号
订单项信息
订单项编号
订单编号
姓名
状态
10 个字符
15 个字符
10 个字符
10 个字符
- 5 -
第四章 数据库的物理结构设计
4.1 设计表间关系
在网上订餐系统中,存在着参照关系和被参照关系。
用户信息表
参照关系
地址
手机
姓名
用户编号
2010010001 王丽萍 山东济南 13223235656
2010010002 李杜娟 江西南昌 15146854236
2010010003 黄大洲 广东佛山 18775692584
2010010004 张子将 湖南长沙 18023652541
注册时间
20100910
20081231
20090423
20110814
外部关键字
主关键字
订单信息表
被参照关系
订单编号 用户编号
地址
总金额 下单时间 订单状态 订 单 改
手机
备注
11122301
11122302
11122303
11122304
2010010001 山东济南 28.00
2010010002 江西南昌 42.00
2010010003 广东佛山 13.00
2010010004 湖南长沙 25.00
1223 11:23 等待付款
1223 14:42 货到付款
1223 15:33 已付款
1223 17:52 货到付款
13223235656
15146854236
18775692584
18023652541
变时间
图 4-1 参照关系与被参照关系
4.2 完整性设计
4.2.1 主要字段完整性的字段名、完整性约束条件
关系模型的完整性约束包括实体完整性、参照完整性和用户定义完整性。主要字段完整
性的字段名、完整性约束条件指的是实体完整性。其中实体完整性的规则如下:
1. 实体完整性规则是针对关系而言的,而关系则对应一个现实世界中的实体集。
2. 现实世界中的实体是可区分的,它们具有某种标识特征;相应地,关系中的元组也
是可区分的,在关系中用主关键字作唯一性标识。
3. 主关键字中的属性,即主属性不能取空值。
在网上订餐系统中,管理员表(管理员编号,名称,密码,登陆 IP,最后登录时间)中,
管理员编号是主关键字,不可以取空值;用户表(用户编号,姓名,地址,手机,注册
时间)中,用户编号是主关键字,不可以取空值;订单表(订单编号,手机号,地址,
- 6 -
总金额,下单时间,订单状态,订单改变时间,备注,会员编号)中,订单编号是主关
键字,不可以取空值;菜谱表(菜谱编号,菜名,原价,优惠价,菜名的介绍,图片,创
建时间)中,菜谱编号是主关键字,不可以取空值;订单项表(订单项编号,订单编号,
姓名,状态)中,订单项编号是主关键字,不可以取空值。
4.2.2 记录完整性约束及其约束条件
除了实体完整性之外还有其他与应用密切相关的数据完整性约束,例如某个属性的值必
须唯一,某个属性的取值必须在某个范围内,某些属性值之间应该满足一定的函数关系等。
类似这些方面的约束不是关系数据模型本身所要求的,而是为了满足应用方面的语义要求提
出来的,这些完整性需求需要用户来定义,所以称为用户定义完整性。数据库管理系统需提
供定义这些数据完整性的功能和手段,以便统一进行处理和检查,而不是由应用程序去实现
这些功能。
在用户定义完整性中最常见的是限定属性的取值范围,即对值域的约束,这包括说明属
性的数据类型、精度、取值范围、是否允许空值等。在网上订餐系统中,订单信息表中的订
单编号不允许为空值,用户表中的用户编号为唯一值都是用了用户定义完整性约束。
4.2.3 参照完整性表
现实世界中的实体之间存在着某种联系,而在关系模型中实体是用关系描述的,实体之间的
联系也是用关系描述的,这样就自然存在着关系和关系之间的参照或引用。网上订餐系统参
照完整性表如下:
用户编号
姓名
地址
手机 注册时间
用户信息表
n:n
n: n
订单编号 手机号 地址 总金额 下单时间 订单状态 用户编号
订单信息表
订单项编号
订单编号
姓名
状态
订单项信息表
图 4-2 说明关联和参照关
- 7 -
第五章 数据库系统的实现
5.1 数据库的建立
启动服务管理器,打开查询分析器,在调试程序窗口输入下列语句:
Create database 网上订餐系统
On
(name=网上订餐系统_dat,
Filename='d:\program files\lzysql\网上订餐系统_dat.mdf',
Size=5mb
Maxsize=100mb,
Filegrowth=5mb)
Log on
(name=网上订餐系统_log,
Filename='d:\program files\lzysql\网上订餐系统_log.ldf',
Size=5mb
Maxsize=100mb,
Filegrowth=5mb)
5.2 数据载入
在网上订餐系统数据库中分别新建菜谱信息表、用户信息表、管理员信息表、订
单信息表、订单项信息表,再陆续载入数据:
菜谱信息表的数据:
- 8 -