数据库课程设计报告餐饮系统Word格式.docx
《数据库课程设计报告餐饮系统Word格式.docx》由会员分享,可在线阅读,更多相关《数据库课程设计报告餐饮系统Word格式.docx(18页珍藏版)》请在冰豆网上搜索。
经过分析,我们使用Microsoft公司的VisualBasic开发工具,将java技术与数据库SQLserver相结合进行设计。
首先,在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。
系统可基本实现饭店点餐,结账,人员信息的录入、修改、删除等功能。
系统其他方面的需求有:
安全保密性、可恢复性、可扩充性、可维护性等。
2.2任务概述
2.2.1目标
本系统是一个小型桌面应用系统,通过这个平台实现以前人工操作的点菜,加减菜,结帐买单等服务,这样节省了很多的人力。
本系统主要有五大功能模块:
一:
开台点菜
二:
加菜减菜
三:
顾客买单和预定
四:
人事管理
五:
库存管理
2.2.2运行环境
服务器配置包括硬件配置和软件配置,它们各自都有详细的要求,下面将分别进行介绍.
1、服务器端配置
(1)、硬件配置
安装本软件之前,需要确保计算机具有如下配置,这也是最低硬件要求:
233兆赫(MHZ)Pentium或更高的微处理器(或与之相当的处理器)
使用256内存(RAM最小为64MB,最大为4GB)
不小于40MB的可用硬盘空间
(2)、软件配置
安装本软件之前,需要确保计算机已安装:
MicorsoftWindowsXP及以上的操作系统.
2、客户端配置
本软件开发所需要的硬件配置和软件配置分别介绍如下:
硬件配置:
1台奔腾级别电脑
软件配置:
eclipse
2.3数据流图
2.4数据字典
2.4.1数据项
消费单编号
数据项名:
说明:
用来唯一标识每张消费单
类型:
字符型
长度:
9
别名:
消费号
取值范围:
000000001-999999999
2.4.2数据结构
消费单
数据结构:
含义:
记录消费者消费信息,包括消费项目及其数据
组成部分:
消费单编号消费餐台消费时间消费金额
操作用户
2.4.3数据流
签单数据流
数据流名:
签单
结算消费者本次消费,合计消费金额,生成消费单和订单项
来源:
餐台表菜品表雇员表
去向:
消费单表消费项目表
餐台表菜品表雇员表
2.4.4数据存储
消费项目表
数据存储名:
记录消费者消费的每种菜品编号、数量、总金额和所在消费单编号
输入数据流:
签单列表
输出数据流:
结账
数据描述:
菜品编号、数量、总金额、所在消费单
数据量:
根据消费单中消费项目多少而定
存取方式:
随机
存取频度:
约100-1000次/天
2.4.5处理过程
处理过程名:
用户选定菜品后,操作员开单签单后,计算出应付的消费单费用
输入数据:
签单列表
数据存储:
消费项目
输出数据:
消费单
第三章概念结构设计
3.1概念结构
在需求分析阶段所得到的应用需求应该首先抽象为信息世界的结构,才能更好地、更准确地用某一DBMS实现这些需求。
概念结构主要特点:
(1)能真是、充分地反映显示世界,包括事物和事物之间的联系,能满足用户对数据的处理要求,是对现实世界的一个只是模型;
(2)易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参与是数据库设计成功的关键。
(3)易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充;
(4)易于向关系、网状、层次等各种数据模型转换;
概念结构时各种数据模型的共同基础,它比数据模型更独立于机器、更抽象,从而更加稳定。
3.2图书管理系统概念结构设计
现在对所设计系统的需求作进一步的分析,产生概念结构设计的E-R模型。
由于这个系统并不复杂,因此可采用自顶向下的设计方法。
自顶向下设计的关键是确定系统的核心活动。
所谓核心活动就是系统中的其他活动都要围绕这个活动展开,或与此活动密切相关。
确定了核心活动之后,系统就有了可扩展的余地。
因此,此系统包含的实体有:
(1)餐台{餐台编号,座位数}
(2)菜系{序号,名称}
(3)菜品{编号,名称,所属菜系,助记码,计量单位,单价}
(4)消费项目{序号,所属消费单,消费菜品,消费数量,消费额}
(5)消费单{编号,消费餐台,消费时间,消费金额,操作用户}
(6)雇员{雇员编号,姓名,性别,生日,身份证号,家庭住址,状态}
3.2.1系统实体E-R图
图3.1餐台信息
图3.2菜系信息
图3.3菜品信息
图3.4消费单信息
图3.5消费项目信息
图3.6管理员管理信息
图3.7雇员信息
3.2.2餐饮管理系统系统E-R图
第四章逻辑结构设计
4.1E-R图向关系模式的转换
有了基本的E-R模型就可以进行逻辑结构设计,也就是设计基本的关系模式。
设计基本的关系模式主要从E-R模型出发,将其直接转换为关系模式。
根据转换规则,这个E-R转换的关系模式为:
(1)餐台信息(餐台编号,座位数)主码:
餐台号;
(2)菜系信息(菜系序号,名称)主码:
菜系序号;
(3)菜品信息(菜品编号,名称,所属菜系,助记码,计量单位,单价)主码:
菜品编号,外码:
所属菜系;
(4)消费项目信息(消费项目序号,所属消费单,消费菜品,消费数量,消费额)主码:
消费项目序号,外码:
所属消费单;
(5)消费单信息(消费单编号,消费餐台,消费时间,消费金额,操作用户)主码:
消费单编号;
(6)雇员信息表(雇员编号,姓名,性别,生日,身份证号,家庭住址,状态)主码:
雇员编号;
(7)管理员管理信息(管理员序号,档案编号,密码,系统维护,销售统计,人员管理,初始化系统,状态)主码:
管理员序号;
主要属性、含义及约束
属性
含义和约束条件
餐台编号
唯一标识每个餐台的编号
菜系序号
唯一标识每个菜系的编号
菜品编号
唯一标识每个菜品的编号
消费项目序号
唯一标识每个消费项目的编号
唯一标识每个消费单的编号
雇员编号
唯一标识每个雇员的编号
管理员序号
唯一标识一个管理人员的权限编号
4.2关系模式的规范化
4.2.1分析并规范化现有的关系模式
经分析,本系统中的所有关系模式中的所有属性,均是不可再分的基本数据项,因此,本系统现有的关系模式都达到了1NF。
(1)餐台信息:
只有一个非主属性:
座位和一个主码:
台号。
显然:
每一个决定因素都包含码,所以该关系模式属于BCNF。
(2)菜系信息:
名称和一个主码:
菜系序号。
(3)菜品信息:
只有一个主码:
菜品编号,其余全部为非主属性,且全部完全函数依赖于码,并且不存在传递。
因此,该关系模式达到了BCNF。
(4)消费项目信息:
消费项目序号,其余全部为非主属性,非主属性完全函数依赖于码,且不存在传递依赖,所以达到了BCNF。
(5)消费单信息:
消费单编号,其余全部为非主属性,非主属性完全函数依赖于码,且不存在传递依赖,所以达到了BCNF。
(6)雇员信息表:
该关系模式中,不把身份证号作为候选码,因此本关系模式只有一个主码:
雇员编号,其余全部为非主属性,所以,达到了BCNF。
(7)管理员管理信息:
管理员序号,其余全部为非主属性,所以,达到了BCNF。
总结:
本系统中的关系模式均达到了BCNF,在函数依赖的范畴内,已经显示了彻底的分离,已经消除了插入和删除异常。
因此不需要再进行优化。
4.2.2确定完整性约束
对规范好的关系模式加以约束。
数据项约束、表级约束及表间约束。
检查约束、主码约束、参照完整性约束。
1、将餐台编号、菜系序号、菜品编号、消费项目序号、消费单编号、雇员编号、管理员序号设置为它们所处表中的主键约束。
2、消费项目信息中:
设置所属消费单为外键约束。
3、消费单信息表中:
设置消费餐台号为外键约束。
4、管理员管理信息中:
设置档案编号为外键约束。
第五章物理设计
数据库在物理上的存储结构与存储方法称为数据库的物理结构,它依赖于选定的数据库管理系统。
为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程,就是物理设计。
数据库的物理设计通常分为两步:
(1)确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构;
(2)对物理结构进行评价,评价的中的是时间和空间效率。
5.1关系中的关系模式
图书管理系统中的关系模式如下:
(1)人事资料:
存放公司员工的详细信息,包括员工编号,姓名,性别,联系电话,身份证号,入职时间,职位级别。
(2)菜单资料:
存放各种菜及饮品信息。
包括菜的编号,名称,类别,价格。
(3)桌子预订:
桌子编号,预订人姓名,顾客人数,预定时间,保留时间,联系方式
(4)用户登录:
用户登录系统,包括用户编号,姓名,职位,密码。
(5)桌子状态:
包括桌子编号,状态(是否占用),分类(属于哪个大厅),可容纳人数。
(6)当前桌台消费选菜:
包括桌台编号,菜名,数量,服务员,下单时间,金额。
(7)结账信息(按次结算):
桌台编号,应付金额,实付金额,折扣,操作员,时间
5.2各功能模块的设计和实现
入库信息
人事信息
供应商信息
账户管理
物品信息
预订信息
临时账单
结账信息
大厅分类
桌子信息
选菜信息
菜单信息
菜品种类
第六章数据库的实施和维护
数据库物理设计完成之后,需要用RDBMS提供的数据定义语言和其他使用程序将数据库逻辑设计和物理设计结果严格描述出来,成为DBMS可以接受的源代码,在经调试产生目标文件。
6.1载入数据
1、向订单表中插入两条信息:
insertintotb_order_form(num,desk_num,consume_date,expenditure,record_num)values('
20130104002'
'
1001'
2013-1-410:
59:
47'
2,'
121220001'
)
20130104003'
2013-1-411:
00:
18'
110,'
2、向订单项表中插入四条数据
insertintotb_order_item(order_form_num,menu_num,amount,total)values('
080604001'
1,2)
121213001'
1,99)
1,10)
080604002'
1,1)
3、向档案表中插入两条记录
insertintotb_record(num,name,sex,birthday,id_card,address,state)values('
130104001'
张三'
男'
2013-1-4,'
11111111111111111111'
滨州学院计算机系'
在职'
130104002'
李四'
女'
22222222222222222222'
4、向菜品表中添加两条数据
insertintotb_menu(num,name,code,sort_id,unit,unit_price,state)values('
红烧带鱼'
hsdy'
12,'
盘'
56,'
销售'
鲅鱼'
by'
10,'
条'
6.2应用程序的调试
6.2数据库的维护
在数据库运行阶段,对数据库经常性的维护工作主要是有DBA完成,它包括:
1.数据库的转储和恢复
2.数据库的安全性和完整性控制
3.数据库性能的监督、分析和改造
4.数据库的重组织与重构造
6.3.1维护
数据库既是共享的资源,又要进行适当的保密。
DBA必须对数据库安全性和完整性控制负起责任。
尤其在计算机网络普遍引应用的今天,保证数据安全、防止黑客攻击、防止病毒入侵等,都是DBA所需要面对的。
按照设计阶段提供的安全防范和故障恢复规范,DBA要经常检查系统的安全是否受到侵犯,根据用户的实际需要授予用户不同的操作权限。
数据库在运行过程中,由于应用环境发生变化,对安全性的要求可能发生变化,DBA要根据实际情况及时调整相应的授权和密码,以保证数据库的安全性。
同样数据库的完整性约束条件也可能会随应用环境的改变而改变,这时DBA也要对其进行调整,以满足用户的要求。
6.3.2检测并改善数据库性能
目前许多DBMS产品都提供了检测系统性能参数的工具,DBA可以利用系统提供的这些工具,经常对数据库的存储空间及响应时间进行分析评价;
结合用户的反映情况确定改进措施;
及时改正运行中发现的错误;
按用户的要求对数据库的现有功能进行适当的扩充。
但要注意在增加新功能时应保证原有功能和性能不受损害。
6.3.3重新组织和构造数据库
数据库建立后,除了数据本身是动态变化外,随着应用环境的变化,数据库本身也必须变化以适应应用要求。
数据库运行一段时间后,由于记录在不断增加、删除和修改,会改变数据库的物理存储结构,使数据库的物理特性受到破坏,从而降低数据库存储空间的利用率和数据的存取效率,使数据库的性能下降。
因此,需要对数据库进行重新组织,即重新安排数据的存储位置,回收垃圾,减少指针链,改进数据库的响应时间和空间利用率,提高系统性能。
这与操作系统对“磁盘碎片”的处理的概念相似。
数据库的重组只是使数据库的物理存储结构发生变化,而数据库的逻辑结构不变,所以根据数据库的三级模式,可以知道数据库重组对系统功能没有影响,只是为了提高系统的性能。
由此可知,数据库的重组并不会改变原设计的数据逻辑结构和物理结构,而数据库的重构造则不同,它部分修改原数据库的模式或内模式,这主要是因为数据库的应用环境发生了变化,如需求变化、设计调整等。
例如增加新的数据项、改变数据类型、改变数据库的容量、增加或删除索引、修改完整性约束等。
DBMS一般都提供了重新组织和构造数据库的应用程序,以帮助DBA完成数据库的重组和重构工作。
只要数据库系统在运行,就需要不断地进行修改、调整和维护。
一旦应用变化太大,数据库重新组织和构造也无济于事,这就表明数据库应用系统的生命周期结束,应该建立新系统,重新设计数据库。
从头开始数据库设计工作,标准着一个新的数据库应用系统生命周期的开始.
第七章结论与体会
通过这次设计,我们受益非浅,亲身体验了数据库设计的全过程,在实践中了解了数据库系统设计的步骤、流程以及思路,增长了在数据库设计方面的见识,我们深刻认识到以前所学的基础课程的重要性,也使我们掌握了很多新知识,特别是一些课本之外的知识,体会到了理论知识和实践相结合的重要性。
经过一个多月的设计和开发,数据库系统设计基本上完成。
其功能基本符合要求,此系统能够实现课程设计任务书中所要求的全部功能,并在一定程度上按照自己的思路进行了补充.
不仅让我对数据库的设计有更深层的理解,上学期所学的知识都得到了相应的应用,而且对java语言所设计的界面更加得心应手。
主要还有每日账单结算,桌台消费次数,预定到期通知有所缺陷。
最后,感谢老师在课程设计的过程中对我们的帮助。
在整个课程设计过程中,我们得到了申老师的悉心指导和大力支持,使我们的专业知识有了很大的提高。
老师在工作中认真负责对学生的关心爱护,都是我们在以后的学习和工作中的榜样。