资源描述
数据库设计说明书
1引言
1.1编写目的
a) 编写目的:数据库的表结构设计是整个项目开发中一个非常重要的环节,一个良好的数据库设计,可以提高开发效率,方便系统维护,并且为以后项目功能的扩展留下余地。我们通过书写这份文档说明,从各方面进行网上订餐系统的数据库设计规划,用它指导该系统在数据库各方面的内容,为系统开发的程序员、系统分析员提供基准文档。我们也希望通过写数据设计说明书,规范数据名称、数据范围、数据代码等。这份文档是项目小组今后共同作战的基础,有了开发规范、程序模块之间和项目成员之间的接口规则、数据方式,大家就有了共同的工作语言、共同的工作平台,使整个软件开发工作可以协调有序地进行。
b) 预期读者:项目开发的全体人员,项目评审人员,项目测试人员,指导老师X老师。
1.2背景
a) 待开发系统的名称:网上订餐系统;
b) 本项目的任务提出者:某某网店管理者;
c) 开发者:本人;
d) 用户:所有顾客;
1.3定义
在此我们列出本文件中用到的专门术语的定义、外文首字母组词的原词组:
词汇名称
词汇含义
备注
EC
Electronic Commerce的缩写,即电子商务
其内容包含两个方面:一是电子方式,二是商贸活动。电子商务指的是利用简单、快捷、低成本的电子通信方式,买卖双方不谋面地进行的各种商贸活动。
C/S
客户机/服务器
Client/Server的缩写
订餐车
消费者用于暂时存放中意物品的书签式存储变量
HTML
HTML(HyperText Mark-up Language)即超文本标记语言或超文本链接标示语言,是目前网络上应用最为广泛的语言,也是构成网页文档的主要语言。
SQL
SQL(Structured Query Language)是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
Microsoft Visual Studio 2008
Microsoft Visual Studio 2008是面向Windows Vista、Office 2007、Web 2.0的下一代开发工具,代号“Orcas”,是对Visual Studio 2005一次及时、全面的升级。VS2008引入了250多个新特性,整合了对象、关系型数据、XML的访问方式,语言更加简洁
E—R图
实体-联系图,提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。
Entity -Relationship 的缩写
1.4参考资料
a) XX网店提供的货品管理流程文件;
b) XX网店的货物信息;
c) 经核准的用户合同、《用户需求说明书》和《项目开发委托合同书》;
d) 《数据库设计说明书》(GB8567——88);
e) 李代平.软件工程.第二版.北京:冶金工业出版社,2006.11;
f) 《网上订餐系统数据库设计说明书》.doc 商丘师范大学22小组毕业设计
g) 《网上订餐系统毕业论文-郑光运》.doc
2外部设计
2.1标识符和状态
联系用途,详细说明用于唯一地标识该数据库的代码、名称或标识符,附加的描述性信息亦要给出。如果该数据库属于尚在实验中、尚在测试中或是暂时使用的,则要说明这一特点及其有效时间范围。
2.2使用它的程序
网上订餐系统
2.3约定
¨ 本系统的开发环境为:
编译器:SQL Sever 2005
数据库:Vs编译器
操作系统:Microsoft Windows XP
辅助软件:Power Designer12.
¨ 本项目用到的数据项:
在名称,范围,类型等方面的约定见数据字典。
2.4专门指导
系统使用ADO.NET.NET实现与数据库的接口,该接口基于.NET 框架建立的,是应用程序与数据库的桥梁,在ADO.NET上将建立与数据库的通讯连接、执行T-SQL,有关ADO.NET.NET的功能、特征的描述,我们也是参考其他的资料,并没有实践操作。
应用程序的数据变换,通过T-SQL相关的插入的信息来实现。
应用程序的数据查询,通过T-SQL相关的查询语句来实现,并且应用程序在其结果集上进行操作。
其他的数据项,来自于专门的设计文档等。
2.5支持软件
SQL Sever 2005,Vs编译器,windows xp和windows 7操作系统,Power Designer12.
3结构设计
3.1概念结构设计
清楚正确地表述本数据库反映的数据形式和联系:
菜品
用户
购买
ISBNN
名称
价格
简介
管理
管理员
添加
删除
修改
用户名
密码
日期
数量
总价格
用户号
密码
姓名
地址
电话
邮箱
1
n
m
n
3.2逻辑结构设计
3.2.1 数据库设计规范
数据库命名规则:db_数据库名称,每个英文单词第一个字母大写;
表命名规则:tb_表名称,每个英文单词第一个字母大写;
字段命名规则:每个英文单词第一个字母大写;
字段时间格式:所有时间格式采用2008-12-20 23:23:02的形式
3.2.2数据库逻辑设计
数据路设计图
3.3物理结构设计
3.3.1 数据表设计
参看数据字典。
3.3.2数据存取方面的设计
对经常在查询中出现的关系的码建立索引;
对经常进行连接操作的关系的码建立索引,比如员工号、货物号、商店号等;
对于更新频率很高的关系模型,所以没有定义索引,比如顾客(顾客编号、姓名、顾客级别,所选货品)由于技术不成熟,我们就不讨论存储位置的设计了。
3.3.3数据完整性设计
a) 主键约束、非空值约束:
员工:员工号为主键,所以此项非空
店铺:店铺名称为主键,所以此项非空
餐品:餐品号为主键,所以此项非空
订单:订单号为主键,所以此项非空
账单:账单号为主键,所以此项非空
b) 外键约束:
员工表中,员工号、店铺号为外键,
通过外键建立起表之间的联系。
c) 惟一约束:
每个表的主键需定义为惟一性,例如对于员工,员工的工号、身份证号、店铺号都是用于识别员工身份,所以需建立唯一约束
d) 定义规则:
例如规定身份证位数,年龄范围,性别只能在男和女之间进行选择。
4运用设计
4.1数据字典设计
系统管理员表(tb_Admin):管理系统管理员账号和密码的表,主要属性有:用户名和密码。系统管理员根据用户名密码登陆后台系统。
系统管理员表
表名:tb_Admin
字段名
数据类型
长度
主外键
字段说明
备注
AdminID
varchar
32
主键
管理员ID
非空
Password
varchar
32
无
管理员密码
非空
会员区域表(tb_Area):网站会员订餐地点,主要属性有:AreaID,AreaKM。
系统可以根据会员区域表收取会员需要运输餐品的运输费。
送货路程表
表名:tb_Area
字段名
数据类型
长度
主外键
字段说明
备注
AreaID
varchar
50
主键
区域ID
非空
AreaKM
varchar
50
无
送货距离
无
会员订餐信息表(tb_BuyInfo):会员订餐信息统计表,主要属性有:BuyID,
GoodsID,Num,SumPrice,MemberID。
会员订餐信息表
表名:tb_BuyInfo
字段名
数据类型
长度
主外键
字段说明
备注
BuyID
varchar
50
主键
订餐单号
非空
GoodsID
varchar
50
无
餐品ID
无
Num
int
32
无
餐品数量
无
OrderID
varchar
50
无
订单号
无
SumPrice
varchar
50
无
总价格
无
MemberID
varchar
50
外键
会员ID
无
餐品类别表(tb_Class):餐品类别显示表,主要属性有:ClassID,CategoryUrl。
主要管理所有餐品种类及其简易图标。
餐品类别表
表名:tb_Class
字段名
数据类型
长度
主外键
字段说明
备注
ClassID
varchar
50
主键
餐品种类ID
非空
CategoryUrl
varchar
50
无
餐品标识图标
无
餐品信息表(tb_GoodsInfo):餐品信息表主要负责存储餐品名称,餐品类别,餐品图标,餐品图片,餐品价格,餐品重量等信息。主要属性有:GoodsID,ClassID,GoodsIntroduce,GoodsBrand,GoodsUnit,GoodsWeight,GoodsUrl,MarketPrice,MemberPrice,Isrefinement,IsHot,AddDate,IsDiscount。
餐品信息表
表名:tb_GoodsInfo
字段名
数据类型
长度
主外键
字段说明
备注
GoodsID
varchar
50
主键
餐品名称
非空
ClassID
varchar
50
外键
餐品类别
非空
GoodsIntroduce
Text
250
无
餐品介绍
无
GoodsBrand
varchar
50
无
餐品品牌
无
GoodsUnit
varchar
50
无
餐品计数单位
无
GoodsWeight
float
16
无
餐品重量
无
GoodsUrl
varchar
50
无
餐品图片地址
无
MarketPrice
float
16
无
餐品市场价格
无
MemberPrice
float
16
无
餐品会员价格
无
Isrefinement
bool
1
无
是否精品
无
IsHot
bool
1
无
是否热销
无
AddDate
datetime
32
无
上传日期
无
IsDiscount
bool
1
无
是否特价
无
餐品图片表(tb_Image):餐品图片表,主要用来存储餐品的图片,主要属性有:ImageID,ImageName,ImageUrl。
餐品图片表
表名:tb_Image
字段名
数据类型
长度
主外键
字段说明
备注
ImageID
varchar
50
主键
餐品图片ID
非空
ImageName
varchar
50
无
餐品图片名称
无
ImageUrl
varchar
50
无
餐品图片地址
无
会员信息表(tb_Member):会员信息表,主要用来存储会员的一些基本信息,如会员ID,会员性别,会员密码,会员真实名字,会员联系方式(电话号码。E_mail,所在城市,家庭住址,邮政编码等),现有RMB,上一次登陆时间。主要属性有:MemberID,Sex,Password,TrueName,Phonecode,Emails,City,Address,PostCode,AdvancePayment,LoadDate。
会员信息表
表名:tb_Members
字段名
数据类型
长度
主外键
字段说明
备注
MemberID
varchar
50
主键
会员ID
非空
Sex
bit
1
无
会员性别
无
Password
varchar
50
无
会员密码
无
TrueName
varchar
50
无
会员真实名字
无
Phonecode
varchar
50
无
电话号码
无
Emails
varchar
50
无
Email
无
City
varchar
50
无
所在城市
无
Address
varchar
200
无
地址
无
PostCode
varchar
10
无
邮编号码
无
AdvancePayment
varchar
50
无
现有存款
无
LoadDate
datetime
32
无
上次登录时间
无
订单信息表(tb_OrderInfo):订单信息表主要用来存储会员每次订单信息,主要属性有:OrderID,OrderDate,GoodsFee,TotalPrice,ShipFee,ShipType,PayType,MemberID,ReceiverName,ReceiverPhone,IsConfirm,IsPayment,IsConsignment,IsPigeonhole,ReceiverPostCode,ReceiverAddress,ReceiverEmails。
订单信息表
表名:tb_OrderInfo
字段名
数据类型
长度
主外键
字段说明
备注
OrderID
varchar
50
主键
订单ID
非空
OrderDate
Datetime
32
无
订单提交日期
无
GoodsFee
varchar
50
无
餐品价格
无
TotalPrice
varchar
50
无
餐品总费用
无
ShipFee
varchar
50
无
运输费
无
ShipType
varchar
50
无
运输方式
无
PayType
varchar
50
无
付款方式
无
MemberID
varchar
200
无
会员ID
无
ReceiverName
varchar
50
无
接收人名字
无
ReceiverPhone
varchar
50
无
接收人电话
无
IsConfirm
bit
1
无
是否确认
无
IsPayment
bit
1
无
是否付款
无
IsConsignment
bit
1
无
是否托付餐品
无
IsPigeonhole
bit
1
无
是否托运
无
ReceiverPostCode
Char
10
无
接收人邮编
无
ReceiverAddress
Varchar
200
无
接收人名地址
无
ReceiverEmails
Varchar
50
无
接收人邮件
无
付款方式表(tb_PayType):付款方式表主要存储会员的付款方式,主要属性有:PayID,PayWay。
付款方式表
表名:tb_PayType
字段名
数据类型
长度
主外键
字段说明
备注
PayID
varchar
50
主键
付款ID
非空
PayWay
varchar
50
无
付款方式
无
邮寄方式表(tb_ShipType):邮寄方式表,主要负责存储餐品发送的方式。比如:邮寄,快递。主要属性有:ShipID,ShipWay,ShipFee,ClassID。
餐品方式表
表名:tb_PayType
字段名
数据类型
长度
主外键
字段说明
备注
ShipID
varchar
50
主键
邮寄ID
非空
ShipWay
varchar
50
无
邮寄方式
无
ShipFee
varchar
50
无
邮寄费用
非空
ClassID
varchar
50
外键
餐品类别
非空
订餐车信息表(tb_ShopCart):订餐车信息表,主要负责存储会员临时性添加的一些餐品,主要属性有:CartID,GoodsID,Num,MemberPrice,MarketPrice,MemberID,GoodsWeight。
订餐车信息表
表名:tb_ ShopCart
字段名
数据类型
长度
主外键
字段说明
备注
CartID
varchar
50
主键
邮寄ID
非空
GoodsID
varchar
50
外键
邮寄方式
非空
Num
int
50
无
购买数量
非空
MemberPrice
float
50
无
会员价格
非空
MarketPrice
float
16
无
市场价格
非空
MemberID
varchar
50
外键
会员ID
非空
GoodsWeight
float
16
无
餐品重量
非空
4.2数据结构设计
数据结构名
属 性
账单
账单号、收入数、日期、员工号
餐品
餐品号、单价、数量
顾客信息
订单号、顾客类别、性别
员工
员工号、姓名、性别、年龄、商铺号
预订单
订单号、餐品号、餐品价格、订单时间、联系电话
商铺
商铺号、商铺名称
4.3安全保密设计
数据库作为管理系统的基础,通常保存着重要的商店经营信息和客户信息。由于涉及到财务管理,数据的完整性和安全性显得尤为重要。系统中的数据一旦丢失,将需要很长时间进行恢复,有时甚至使信息系统不得不从系统初始化阶段重新开始运行。每天进行数据备份是保障系统安全的重要手段。数据备份需要严格按照事先制定的备份与故障恢复策略进行,并落实备份登记和检查措施。另外,系统设置用户的标识以鉴定是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;系统对不同的数据设置不同的访问级别,限制访问用户可查询的处理数据类别和内容;系统对不同用户设置不同的权限,区分不同的用户,如区分店长和店员。具体的系统配置应当根据系统实际运行情况做进一步的调整。
展开阅读全文