网上订餐系统数据库设计
一、需求分析
网上订餐系统是针对当今世界高速发展的经济需求、人们日益加快的生活节奏及为迎合
饮食行业越来越便捷的服务趋势而设计的。网上订餐是一个专门面向餐饮企业的业务,它给
那些正处于不同发展阶段的各种餐饮企业全面提供餐饮信息化服务 。本文讨论了餐厅预约
点菜系统的设计与实现 。该系统主要分为网站前台管理 ( 包括网站首页 、登录 、购物车
管理等 ) 和系统后台管理 ( 包括管理员登录操作 、订单管理、配送管理、菜品管理等 ),
基本实现了网上预约点菜的功能 ,基本实现了消费者网上预约点餐的功能。
根据用户的主要需求,得到系统的主要功能要求如下:
(1) 用户信息管理。管理员能有效进行用户信息 、对用户注册的信息进行有效的核
实和管理
(2 ) 分类管理。能够对菜品的分类进行添加、修改和删除,方便菜品通过分类添
加。
(3 ) 食品管理。能够利用系统对系统的食品信息进行计算机管理 、方便用户互联网
可以直观了解需要预定的食品信息。
(4) 订单管理。通过本系统用户可以方便的提交订餐信息 ,订单的信息会及时的显
示到后台方便餐厅进行处理
(5) 留言管理。用户可以通过留言给网站的管理员进行留言信息
二、概念设计
2.1 总体 E-R 图设计
登 录 密 码
用 户 名
用 户 姓 名
类 型
联 系 方 式
地 址
用 户 编 号
订 单 编 号
下 单 时 间
单 价
数 量
食 品 编 号
标 题
用 户
mm
订 单
nn
11
食 品 信 息
留 言 编 号
留 言
留 言 时 间
留 言 内 容
11
评 价
mm
是 否 结 算
配 送 地 址
收 货 电 话
配 送
配 送 编 号
配 送 人
11
描 述
类 型
价 格
过 期 日 期
配 送 信 息
派 送 地 址
配 送 时 间
配 送 状 态
配 送 状 态
三、逻辑结构设计
逻辑结构设计阶段根据 E-R 图转换为关系模式的原则,把网上订餐销售管理系统的 E
R 图转换为 5 个相应的关系模式分别为 :
用户表(用户编号,用户名,登录密码,用户姓名,类型,联系方式,地址,备注,积分)
食品信息表(食品编号,标题,描述,类型,价格,过期日期,销量)
订单表(订单编号,用户编号,食品编号,下单时间,单价,数量,是否结算,配送地址)
配送信息表(配送编号,订单编号,配送人,派送地址,时间,配送费,状态)
留言表(留言编号,用户编号,留言时间,内容)
四、物理设计
4.1 用户表(Users)
字段名
Userld
UserName
UserPwrd
RealName
UserType
UserTel
UserAddress
UserScore
UserMemo
类型
varchar(10)
varchar(10)
varchar(10)
varchar(20)
varchar(8)
varchar(20)
varchar(15)
Int
varchar(100)
4.2 食品信息表(foodInfo)
字段名
foodId
title
fdesc
ftype
fprice
expireDate
sellCount
类型
int
varchar(10)
varchar(30)
Varchar(10)
Decimal(8,2)
date
int
4.3 订单表(orders)
字段名
OrderId
UserId
FoodId
OrderDate
UnitPrice
Quantity
HasPaid
类型
int
varchar(10)
int
Date
Decimal(8,2)
Int
int
DeliverAddress
varchar(60)
字段属性
主键
默认为 0
字段属性
主键
字段属性
主键
外键
外键
字段含义
用户编号
用户名
登录密码
用户姓名
类型
联系方式
地址
积分
备注
字段含义
食品编号
标题
描述
类型
价格
过期日期
销量
字段含义
订单编号
用户编号
食品编号
下单时间
单价
数量
是否结算
配送地址
字段属性
主键
外键
字段属性
主键
外键
字段含义
留言编号
用户编号
留言时间
内容
字段含义
配送编号
订单编号
配送人
派送地址
时间
配送费
状态
4.4 留言表(Comments)
字段名
commetId
UserId
ComDate
Content
类型
int
int
Datetime
Varchar(200)
4.5 配送信息表(DeliverInfo)
字段名
DeliId
OrderId
Deliveror
Address
DeliTime
Fee
Status
类型
int
int
Varchar(20)
Varchar(50)
Datetime
Decimal(3,2)
int
五、数据库实施
5.1 数据库建立
create database FoodOrder;
5.2 数据表建立
5.2.1 建立用户表
create table users(
Userld int not null primary key,
UserName varchar(10) not null,
UserPwrd varchar(10) not null,
RealName varchar(30),
UserType varchar(20),
UserTel varchar(20),
UserAddress varchar(50),
UserMemo varchar(50),
UserScore int
)
5.2.2 建立食品信息表
create table foodInfo(
fid int not null primary key,
title varchar(10) not null,
fdesc varchar(30),
ftype varchar(10),
fprice varchar(20),
expireDate date,
sellCount int
)
5.2.3 建立订单表
create table Orders(
OrderId int not null primary key,
UserId int references users(Userld),
FoodId int references foodInfo(fid),
OrderDate datetime,
UnitPrice decimal(8,2),
Quantity int,
HasPaid int,
DeliverAddress varchar(60)
)
5.2.4 建立配送表
create table DeliverInfo(
DeliId int not null primary key,
OrderId int references Orders(OrderId),
Deliveror Varchar(20) not null,
Address Varchar(50) not null,
DeliTime datetime null,
Fee Decimal(4,2),
Status int
)
5.2.5 建立评论表
create table Comments(
commetId int not null primary key,
UserId int references Users(Userld),
ComDate datetime null,
Content varchar(200)
)
5.3 插入数据
5.3.1 用户表添加数据
5.3.2 食品表添加数据