SQL server数据库设计 餐饮管理系统.docx
- 文档编号:23317236
- 上传时间:2023-05-16
- 格式:DOCX
- 页数:20
- 大小:201.19KB
SQL server数据库设计 餐饮管理系统.docx
《SQL server数据库设计 餐饮管理系统.docx》由会员分享,可在线阅读,更多相关《SQL server数据库设计 餐饮管理系统.docx(20页珍藏版)》请在冰豆网上搜索。
SQLserver数据库设计餐饮管理系统
辽宁工业大学
《SQLserver数据库设计实训》报告
题目:
餐饮管理系统
院(系):
软件学院
专业班级:
电子商务(国际)
学号:
学生姓名:
**********************
教师职称:
副教授
起止时间:
2011.09.03-2011.09.14
设计任务及评语
院(系):
软件学院教研室:
软件教研室
学号
学生姓名
专业班级
电子商务(国际)
设计题目
餐饮管理系统
设计任务
要求根据管理信息系统及数据库设计原理,按照系统设计的步骤和规范,完成各阶段的设计内容。
需求分析具体实际,数据流图、数据字典、关系模型要规范。
在sqlserver2000上实现数据库的模型建立(数据库、表的建立、完整性约束的实现、关系图、必要的存储过程及触发器的编程),并用VB实现简单的应用程序。
设计过程中,要严格遵守设计的时间安排,听从指导教师的指导。
正确地完成上述内容,规范完整地撰写出设计报告。
指导教师评语及成绩
成绩:
指导教师签字:
2012年09月17日
第1章设计目的与要求
1.1设计目的
本设计专题是软件工程类专业的有关管理信息系统设计开发的一个重要环节,是本专业学生必须学习和掌握的综合实践课程。
本实践课的主要目的是:
(1)、掌握运用管理系统及数据库原理知识进行系统分析和设计的方法;
(2)掌握关系数据库的设计方法;(3)掌握SQLServer2000技术应用;(4)掌握简单的数据库应用程序编写方法;(5)理解C/S模式结构。
1.2设计环境
硬件:
处理器,IntelPentium166MHz以上,内存:
512M以上,硬盘空间:
8G以上
软件:
WindowsXP需要软件:
MicrosoftVisualBasic6.0,MicrosoftSQLServer2000
1.3主要参考资料
1.《管理信息系统》黄梯云高等教育出版社
2.《数据库系统概论》萨师煊高等教育出版社
3.《SQLServer2000数据库应用系统开发技术》朱如龙编,机械工业出版社。
4.《SQLServer2000数据库应用系统开发技术实验指导》朱如龙编,机械工业出版社
1.4设计内容及要求
一、内容
1.要求根据管理信息系统及数据库设计原理,按照数据库系统设计的步骤和规范,完成各阶段的设计内容。
2.需求分析具体实际,数据流图、数据字典、关系模型要正确规范
3.在sqlserver2000上实现设计的数据库模型。
4.对应用程序进行概要设计。
5.用VB实现简单的应用程序编写。
二、要求
设计过程中,要严格遵守课程设计的时间安排,听从指导教师的指导。
正确地完成上述内容,规范完整地撰写出课程设计报告。
第2章设计内容
2.1数据库设计
本数据库系统通过之前的需求分析,以SQL为后台,VB为前台设计了一个简单的餐饮管理系统。
通过概念设计,逻辑设计和物理设计的转换来实现了数据库文件。
2.1.1需求分析
本系统介绍了一般的计算机管理的餐饮服务程序,首先从各种相关的软件入手,分析了这类软件的特点、发展历程,并对发展缓慢的原因进行了初步的调研。
从以前的相关软件的软肋着手,介绍了餐饮服务计算机软件的编程思路和基本方法。
重点介绍了前台营业,从第三者的角度即消费者的角度介绍了前台营业的操作流程
在酒店里建立一个餐饮服务系统对提高酒店的工作效率和增加酒店的效益都是有好处的,它影响了酒店经营业绩,也使酒店的竞争能力提升。
它的优势主要在于有效展示酒店形象和服务,建立与客户良好的互动关系,高效管理销售过程,而且显著降低销售成本、提高经济效益和管理水平,提高营业收入,使得利润最大化,如此可见餐饮服务系统给酒店带来了可观的收入。
本餐饮管理系统主要实现对餐饮系统相关信息的管理,其中以日点单为中心,其中还包括员工信息管理,员工所属部门信息的管理,房间台号以及房间类型的相关信息管理,还包含了最基础的商品信息表和供应商基础信息。
1.餐饮管理需求分析
数据项和数据结构如下:
(1)日点单信息表:
房台编号,房台类型,商品编号,商品名称,数量,单价,金额,点单日期,员工编号,员工名称。
(2)商品基础信息表:
商品编号,商品名称,单价,供应商,单价,供应商,联系人,联系电话。
(3)供应商信息表:
供应商名称,地址,联系人,联系电话。
2.业务流程图
图2.1餐饮管理系统业务流程图
3.数据流程图
图2.2餐饮管理系统数据流程图
4.数据字典
(1)数据项
表2.1数据项
数据项名称
数据项含义说明
数据类型
长度
房台编号
为房间台号设置的一个代号
字符型
10
房台名称
房间的名称
字符型
10
商品编号
为商品(菜)设置的一个代号
字符型
20
商品名称
点菜的名称
字符型
50
数量
点菜的数量
数值型
9
单价
每个菜的单价
货币型
8
金额
总计的金额
货币型
8
点单日期
点单的日期
日期型
8
员工编号
服务的员工的一个代号
字符型
10
员工名称
服务的员工的姓名
字符型
12
(2)数据结构的定义
名字:
日点单信息
描述:
顾客点单的信息
定义:
日点单信息=房台编号+房台类型+商品编号+商品名称+数量+单价+金额+点单日期+员工编号+员工名称
表2.2日点单信息数据字典
名字:
商品基础信息
描述:
基本商品,包括菜系和酒水
定义:
商品基础信息=商品编号+商品名称+单价+供应商+单价+供应商+联系人+联系电话
表2.3商品基础信息数据字典
名字:
供应商信息
描述:
基本商品的供应单位
定义:
供应商信息=供应商名称+地址+联系人+联系电话
表2.4供应商信息数据字典
(3)数据流的定义
数据流名称:
日点单统计
简要说明:
对每天的点单信息进行统计
数据流来源:
P1.8
数据流去向:
日点单管理模块
数据结构:
日点单信息=房台编号+房台类型+商品编号+商品名称+数量+单价+金额+点单日期+员工编号+员工名称
表2.5日点单统计
(4)数据存储
数据存储名:
日点单信息
输入数据流:
商品基本信息,供应商基本信息
输出数据流:
顾客点单信息
2.1.2概念设计
概念模型是对信息世界的建模,所以概念模型应该能够方便、准确的表示出信息世界中的常用概念。
实体------关系模型(Entity-RelationshipModule,简称E-R图)是数据库结构设计常用的方法。
得到了数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体以及它们之间的关系,为后面逻辑结构设计打下基础。
这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。
系统E-R图设计
1.日点单信息实体E-R图:
图2.3日点单信息E-R图
2.商品基础信息实体E-R图:
图2.4商品基础信息E-R图
3.供应商信息实体E-R图:
图2.5供应商信息E-R图
4.餐饮管理系统信息实体E-R图:
图2.6餐饮管理系统信息实体E-R图
2.1.3逻辑设计
逻辑结构设计的任务就是将概念结构设计阶段设计好的基本E-R图转换为与选用的DBMS产品所支持的数据模型相符合的逻辑结构。
本系统逻辑结构设计的任务有:
1.初始关系模型设计,即将概念结构向一般的关系模型转化。
日点单信息管理(房台编号,房台类型,商品编号,商品名称,数量,单价,金额,点单日期,员工编号,员工名称)
商品基础信息(商品编号,商品名称,单价,供应商,联系人,联系电话)
供应商信息(供应商名称,地址,联系人,联系电话)
2.规范化处理,从E-R图向数据模型转化的过程中,用模式合并和分解方法达到规范化级别。
根据上面的系统E-R图我们得知日点单信息表和商品基础信息表之间是多对多的关系,而商品基础信息和供应商之间也是多对多的关系。
供应商信息和商品基础信息存在传递依赖,所以可以将供应商信息和基础信息合并为:
商品基础信息(商品编号,商品名称,单价,供应商,供应商名称,地址,联系人,联系电话)
2.1.4物理设计
1.存储结构:
存储结构是建立一种由逻辑结构到存储空间的映射。
存储结构是把一组结点存放在按地址相邻的存储单元里,结点间的逻辑关系用存储单元的自然顺序关系来表达的,即用一块存储区域存储线性数据结构,为使用整数编码访问数据结点提供了便利。
存储的路径是C:
\ProgramFiles\MicrosoftSQLServer\MSSQL\data\餐饮管理系统_Data.MDF。
2.存取方法
存取方法是快速存取数据库中数据的技术。
索引法是为了加速对表中的数据行的检索而创建的一种分散的存储结构。
是针对一个表而建立的,它能够以一列或多列的值为关键字,迅速查找/存取表中行数据加快了数据检索。
例如在本数据库
日点单信息表(房台编号,房台类型,商品编号,商品名称,数量,单价,金额,点单日期,员工编号,员工名称)里的房台编号是主键,在room_id上创建了一个唯一聚簇性索引,为了加快数据库的检索速度。
在商品基础信息表上创建一个以商品编号为索引项的聚簇索引。
2.1.5数据库实现
1.表
(1)日点单信息表:
房台编号,房台类型,商品编号,商品名称,数量,单价,金额,点单日期,员工编号,员工名称。
表2.6日点单信息表
序号
表名
字段
字段类型
字段长度
是否主键(1为主键)
1
meun
Room_id
char
10
1
2
meun
Roomtype
Char
19
0
3
meun
Goods_id
Char
20
0
4
meun
Goodsname
Char
50
0
5
meun
Amount
Numeric
9
0
6
meun
Price
Money
8
0
7
meun
Jine
Money
8
0
8
meun
Menudate
Datetime
8
0
9
meun
Staff_id
Char
10
0
10
meun
staffname
Char
12
0
(2)商品基础信息表:
商品编号,商品名称,单价,供应商,联系人,联系电话。
表2.7商品基础信息表
序号
表名
字段
字段类型
字段长度
是否主键(1为主键)
1
Goods
Goods_id
Char
20
1
2
Goods
Goodname
Char
50
0
3
Goods
Price
Money
8
0
4
Goods
Ordername
Char
50
0
5
Goods
Telephone
Numeric
9
0
6
Goods
people
char
10
0
(3)供应商信息表:
供应商名称,地址,联系人,联系电话。
表2.8供应商信息表
序号
表名
字段
字段类型
字段长度
是否主键(1为主键)
1
order
Ordername
Char
50
1
2
order
Address
Char
30
0
3
order
Contectname
Char
10
0
4
order
telephone
numeric
9
0
2.关系图
餐饮管理系统包括员工信息表,日点单信息表,商品基础信息表,房间台号信息表,供应商信息表,房间台号类型表,部门信息表,利用各个表的主键把各个表连接到一起。
利用关系图表现出来。
如图2.7所示:
图2.7餐饮管理系统关系图
3.存储过程
(1)为数据库CYGLXT创建一个查询日点单信息的存储过程。
CREATEPROCEDUREmenu_select
@troom_idchar(10),
@troomtyperchar(10),
@tgoods_idchar(20)
AS
select*
frommenu
GO
(2)为数据库CYGLXT创建一个删除日点单信息的存储过程。
CREATEPROCEDUREmenu_delete
@roomidchar(10)
AS
deletefrommenu
whereroom_id=@roomid
GO
(3)为数据库CYGLXT创建一个添加日点单信息的存储过程。
REATEPROCEDUREmenu_insert
@room_idchar(10),
@roomtypechar(10),
@goods_idchar(20),
@goodsnamechar(50),
@amountnumeric(9),
@pricemoney,
@jinemoney,
@menudatedatetime,
@staff_idchar(10),
@staffnamechar(12)
AS
insertintomenu
(room_id,roomtype,goods_id,goodsname,amount,price,jine,menudate,staff_id,staffname)
values
(@room_id,@roomtype,@goods_id,@goodsname,@amount,@price,@jine,@menudate,@staff_id,@staffname)
GO
4.触发器
CREATETRIGGER商品数量_insertON日点单表
FORINSERT
AS
DECLARE@NumOf商品数量TINYINT
SELECT@NumOf商品数量=c.商品编号_numFROM商品基础信息c,insertedi
WHEREc.商品编号=i.商品编号
IF(@NumOf商品数量>0)
BEGIN
UPDATE商品信息SET商品数数_num=商品数数t_num+1
FROM商品信息c,insertediWHEREc.商品数=i.商品数
END
ELSE
BEGIN
UPDATE商品信息SET为序人_num=(
SELECTCOUNT(s.商品编号)FROM商品信息s,insertedi
WHEREs.商品编号=i.商品编号)
FROM商品信息c,insertediWHEREc.商品编号=i.商品编号
END
GO
2.2程序设计
2.2.1概要设计
本程序实现餐饮服务内部和正常营业业务以及扩展业务的自动化电算管理。
餐饮服务系统的模块实际上是指从顾客消费的正常流通渠道的角度,管理员通过对餐饮服务系统进行处理的总过程。
对酒店的经营和数据的初始化以及人员招聘、菜谱的制定、供应商的供货情况及餐饮管理系统的各项工作的协调运作。
对上述各项功能进行集中、分块、按照结构化程序设计的要求分析后,得到如下图2.8所示的系统功能模块图。
图2.8系统模块图
2.2.2程序实现
程序实现主要是代码在编译器中运行得到的结果,餐饮管理窗体主要由文本框及命令按钮组成,分别点击“查询、删除、添加、修改、退出”按钮系统会通过上述五个控件与数据库进行连接并进行数据的相应操作。
实现具体功能窗口如图2.8所示:
图2.9程序运行界面
代码如下:
PrivateSubCommand1_Click()
DimstrSAsString'定义一变量
DimadoconnAsNewADODB.Connection'Connection对象代表了打开与数据源的连接。
DimadocommAsNewADODB.Command'Command对象定义了将对数据源执行的指定命令。
DimrsAsNewADODB.Recordset
DimReturnValueAsInteger'调用存储过程的返回值
adoconn.ConnectionString=Adodc1.ConnectionString'Adodc1为窗体中的ADO控件,并已成功连接数据库
adoconn.Open
Setadocomm.ActiveConnection=adoconn'指示指定的Command对象当前所属的Connection对象。
adocomm.CommandText="menu_select"'设置Command对象源。
adocomm.CommandType=adCmdStoredProc'通知提供者CommandText属性有什么,它可能包括Command对象的源类型。
设置这个属性优化了该命令的执行。
adocomm.Parameters
(1)=Text1.Text
adocomm.Parameters
(2)=Text2.Text
adocomm.Parameters(3)=Text3.Text
adocomm.Parameters(4)=Text4.Text
adocomm.Parameters(5)=Text5.Text
adocomm.Parameters(6)=Text6.Text
adocomm.Parameters(7)=Text7.Text
adocomm.Execute
ReturnValue=adocomm.Parameters(0)'存储过程的返回值,返回0则成功执行。
IfReturnValue=0Then
strS=Str(adocomm.Parameters(8))'把存储过程的输出参数的值赋给变量strS
Text8.Text=strS
Else
Text8.Text=0
EndIf
adoconn.Close
adoconn.Open
Setadocomm.ActiveConnection=adoconn
adocomm.CommandText="ad"'设置Command对象源。
adocomm.CommandType=adCmdStoredProc'通知提供者CommandText属性有什么,它可能包括Command对象的源类型。
设置这个属性优化了该命令的执行。
Setrs=NewADODB.Recordset
'rs.CursorLocation=adUseClient
rs.CursorType=adOpenStatic'不能省略否则集合不能作为标签错误.
rs.Openadocomm
DataGrid1.ClearFields
SetDataGrid1.DataSource=rs
'Adodc1.Refresh
DataGrid1.Refresh
'adoconn.Close若关闭连接则表格中数据消失
EndSub
第3章设计总结
我们小组设计的是一个简单的餐饮管理系统。
给出题目以后,我们首先对所需要的软件进行了系列的了解,本系统是一SQLServer2000为后台VB6.0为前台进行程序的调用的。
之后我们大致规划了餐饮系统大概的需求。
首先是设计表,我们从员工,到日点单的信息设计,还有有仓库的管理,供应商信息等,做了一系列的规划。
通过这次的课程设计操作,让我对数据库的各项操作有了更进一步的了解和更加的熟练操作,并对这门课程产生了很大兴趣,从一开始的创建表简单的东西开始,连接关系图,建立索引,建立存储过程,也会有很多的问题出现,但是经过小组人员一起翻书,查询,最终都得到了想要的结果,觉得收获很多,在不断的失败中学习到了更多。
后台程序的完成,让我对此软件的开发有了更清楚的认识,同时也让我懂得了实践的重要性。
其次,这个程序当中遇到问题比较多的还是VB的程序代码,VB窗体连接后台数据库。
界面有查询,删除,添加,修改,退出,五个按钮,后台的代码是我们最头疼的问题,在老师的不断指导和小组人员的不断修改和讨论的情况下,终于圆满的运行出来了,
虽然这次的课程设计算是胜利的完成的,但是还是有很多需要学习和改善的地方,比如数据库的建立不完善,考虑不够全面,界面设计的单一性等多方面的问题都是有待于提高的,我会在以后的学习当中更加努力,积累更多的经验,提高知识的灵活运用能力。
总的来说,这次的课程设计结束了,但是给我留下的东西确实很丰富的,我觉得会是我永远的财富,也让我懂得了,只要用心,只要努力,没有什么做不好的。
参考文献
1.马晓梅.《SQLServer2000》.清华大学出版社
2.吴豪.《SQLServer2000基础》.北京希望电子出版社
3..余金山.《SQLServer2000编程指南》.北京希望电子出版社
4.熊桂喜.《SQLServer开发指南》.清华大学出版社
5.萨师煊.《数据库系统概论》.高等教育出版社
6.麦克马纳斯.《VB.NET高级开发指南》.北京希望电子出版社
7.王华杰.《VB.NET编程实例详解》.中国铁道出版社
8.彭东.《SQLServer应用开发技术指南.清华大学出版社
9.三味工作室.SQLServer2000.上海:
人民邮电出版社
10.刘玉生.《SQLServer开发、管理和应用》.电子工业出版社
11.Thomsen.《VB.NET数据库开发》.清华大学出版社
12.张营.《SQLServer2000开发指南》.电子工业出版社
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQL server数据库设计 餐饮管理系统 server 数据库 设计 餐饮 管理 系统