SQL数据库课程设计餐饮服务管理系统.docx

上传人:b****4 文档编号:4993947 上传时间:2022-12-12 格式:DOCX 页数:20 大小:311.85KB
下载 相关 举报
SQL数据库课程设计餐饮服务管理系统.docx_第1页
第1页 / 共20页
SQL数据库课程设计餐饮服务管理系统.docx_第2页
第2页 / 共20页
SQL数据库课程设计餐饮服务管理系统.docx_第3页
第3页 / 共20页
SQL数据库课程设计餐饮服务管理系统.docx_第4页
第4页 / 共20页
SQL数据库课程设计餐饮服务管理系统.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

SQL数据库课程设计餐饮服务管理系统.docx

《SQL数据库课程设计餐饮服务管理系统.docx》由会员分享,可在线阅读,更多相关《SQL数据库课程设计餐饮服务管理系统.docx(20页珍藏版)》请在冰豆网上搜索。

SQL数据库课程设计餐饮服务管理系统.docx

SQL数据库课程设计餐饮服务管理系统

 

 

第1章课程设计目的与要求

1.1课程设计目的

本课程的课程设计实际是计算机相关专业学生学习完《》课程后,进行的一次全面的综合训练,其目的在于加深对基础理论和基本知识的理解,掌握运用开发软件的基本方法。

要求学生在理解.net基本结构的基础上,达到具备熟练使用VB.net语言的基本知识和技能;基本掌握面向对象程序开发的基本思路和方法;培养良好的编程习惯;能够利用所学的基本知识和技能,进行简单的Windows应用程序设计。

课程设计的实验环境

硬件要求能运行Windows2.X操作系统的微机系统。

数据库可以选用:

SQL2000SERVER,编程语言为。

课程设计的预备知识

熟悉的基本知识,SQL2000数据库应用软件。

课程设计要求

一、

请同学们注意以下几点:

1、每个系统每人应选择2个或多于2个模块;2、最后上交时需要提供课程设计报告、程序源代码(含数据库文件);3、设计过程中有任何疑问可以问老师。

二、设计步骤

1、分析程序的功能要求,划分程序功能模块。

2、画出系统结构图(如设计到使用数据库,需要建立好数据库)。

3、代码的编写。

4、程序的功能调试。

5、生成安装文件,完成系统总结报告以及使用说明书。

三、进度安排

此次课程设计时间为两周,分四个阶段完成:

1、分析设计阶段。

指导教师应积极引导学生自主学习和钻研问题,明确设计要求,找出实现方法,按照总体设计、详细设计的步骤进行。

这一阶段在第1-2天完成。

2、编码、程序调试阶段:

根据设计分析方案编写代码,然后调试该代码,实现课题要求的功能。

这一阶段在第3-7天完成。

3、总结报告阶段:

总结设计工作,写出程序使用说明书,要求学生写出总体设计、详细设计、编码、测试的步骤和内容。

这一阶段在第8-9天完成。

4、考核阶段。

这一阶段在第10天完成。

四、撰写课程设计报告或课程设计总结

课程设计报告要求:

总结报告包括总体设计、详细设计、编码(详细写出编程步骤)、测试的步骤和内容、课程设计总结、参考资料等,不符合以上要求者,则本次设计以不及格记。

第2章课程设计内容

选题背景

餐饮业作为第三产业的重要组成部分,以其市场大、增长快、投入相对较少和吸纳劳动力多的特点受到广泛重视,也是发达国家对外进行资本和品牌输出的载体。

餐饮业的快速发展归因于国民经济的快速发展,城乡居民可支配收入的提高,社会经济交往活动的增加,居民消费观念的更新。

因此我们考虑,设计一个餐饮服务系统,来实现这一功能。

课题来源及意义

 开发此餐饮管理系统,不仅能提高公司的管理水平给管理者提供一个企业运作的信息平台还能提升企业的形象及增强竞争力。

使用餐饮管理系统能将餐饮企业业务管理和人员管理信息化,使企业从原材料进货到客人消费都由计算机管理并记录,可随时掌握餐饮店里房间的使用状况,客人点单,挂账等情况,并能尽可能的降低使用者的劳动强度,同时提高工作质量和效率。

用最少的成本获得最好的经济效益,增强了餐饮企业的市场竞争力。

系统基本达到的目标及结论

实现餐饮设置与餐饮服务管理功能。

开发工具和数据库的选择

Visualbasic.NET集成开发环境,以及SQLSERVER2000数据库

可行性研究

餐饮管理系统是一套功能强大而又简便实用的餐饮管理软件,包括前台营业管理、预定酒宴管理、扩展外卖服务、员工管理等四大功能模块,实现了餐饮企业日常营运的全面自动管理,是餐饮企业进行电脑信息化管理的理想选择。

.1技术可行性

最近30年来,管理信息系统技术得到了充分的发展与完善,使得开发本系统在技术可行性成为可能,利用VB.NET和SQLServer开发工具,使得本系统不存在技术上的障碍。

.2经济可行性

餐饮服务管理系统的关键在于缩短了比以往传统的餐饮服务系统所消耗的时间,提高了科技含量、服务质量和现代化水平。

会为公司带来巨大的经济效益及其体系的完整化。

.1.3操作可行性

餐饮服务管理系统实现了餐饮服务的系统化、规范化和自动化。

相对地提供多样化的功能以满足顾客不断改变的需求与期望。

例如外送、酒宴预定、外卖服务、窗口服务等,充分延伸了餐饮服务业的范围与内容。

.1.4管理可行性

本系统将其与计算机信息管理系统结合起来,实现中小型餐饮管理信息计算机化、系统化,为经营决策提供了快捷和强大的数据支持。

把计算机用于餐饮企业管理,可在很大程度上提高管理者分析和决策的科学性,提高经营管职水平,带来更多的顾客,使企业取得更好的经济效益。

软、硬件配置及结构

.1硬件配置

兼容Intel486等级以上的PC电脑、64M以上的RAM、15GB以上的硬盘空间、48倍速以上的光驱。

.2软件配置

VisualBasic.NET和SQLServer2000。

系统结构

2.2.3.1C/S模式简介

C/S(Client/Server,客户机/服务器)模式又称C/S结构,是软件系统体系结构的一种。

C/S模式主要由客户应用程序(Client)、服务器管理程序(Server)和中间件(middleware)三个部件组成。

客户应用程序是系统中用户与数据进行交互的部件。

服务器程序负责有效地管理系统资源,如管理一个信息数据库,其主要工作是当多个客户并发地请求服务器上的相同资源时,对这些资源进行最优化管理。

中间件负责联结客户应用程序与服务器管理程序,协同完成一个作业,以满足用户查询管理数据的要求。

2.2.3.2C/S模式的优点

首先,交互性强是C/S固有的一个优点。

在C/S中,客户端有一套完整的应用程序,在出错提示、在线帮助等方面都有强大的功能,并且可以在子程序间自由切换。

B/S虽然由JavaScript、VBScript提供了一定的交互能力,但与C/S的一整套客户应用相比是太有限了。

其次,C/S模式提供了更安全的存取模式。

由于C/S是配对的点对点的结构模式,采用适用于局域网、安全性比较好的网络协议(例如:

NT的NetBEUI协议),安全性可以得到较好的保证。

而B/S采用点对多点、多点对多点这种开放的结构模式,并采用TCP/IP这一类运用于Internet的开放性协议,其安全性只能靠数据服务器上管理密码的数据库来保证。

现代企业需要有开放的信息环境,需要加强与外界的联系,有的还需要通过Internet发展网上营销业务,这使得大多数企业将他们的内部网与Internet相连。

由于采用TCP/IP,他们必须采用一系列的安全措施,如构筑防火墙,来防止Internet的用户对企业内部信息的窃取以及外界病毒的侵入。

再次,采用C/S模式将降低网络通信量。

B/S采用了逻辑上的三层结构,而在物理上的网络结构仍然是原来的以太网或环形网。

这样,第一层与第二层结构之间的通信、第二层与第三层结构之间的通信都需占用同一条网络线路。

而C/S只有两层结构,网络通信量只包括Client与Server之间的通信量。

所以,C/S处理大量信息的能力是B/S所无法比拟的。

最后,由于C/S在逻辑结构上比B/S少一层,对于相同的任务,C/S完成的速度总比B/S快。

使得C/S更利于处理大量数据。

让餐饮部门更高效率的为顾客服务,使顾客得到满意的服务外,更能节省时间。

系统数据流图的创建

图1:

系统数据流图

 

图2:

业务流程图

数据字典的创建

数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义

集合.

数据流图上所有成分的定义和解释的文字集合就是数据字典。

数据流图只能给出

统逻辑功能的一个总体框架而缺乏详细、具体的内容。

数据字典对数据流图的各种成分起注释、说明的作用,给这些成分赋以实际的内容。

还对系统分析中其他需要说明的问题进行定义和说明。

数据字典的内容

(1)数据项类目:

数据的最小单位,描述数据的静态特性。

(2)数据流类目:

由一个或一组固定的数据项组成。

(3)文件类目:

描述数据的逻辑存储结构。

(4)数据“加工”条目。

(5)“外部项”条目

以下是数据流图中主要元素的数据字典卡片:

系统结构设计

餐饮服务管理系统的流程非常清晰,各功能模块之间没有直接的联系,相对比较独立。

第一步,进入主界面,这时候选择系统管理,可以进入系统设置,也可以选择前台营业、预定服务、外卖服务、员工管理以及窗体和帮助,以下几步相互独立,但是只能进行一个步骤。

第二步,进入系统管理,可以进行以下六种设置。

修改密码:

可供管理人员使用,使系统安全性更高。

用户管理:

管理用户信息。

菜单管理:

管理菜单信息。

数据库备份:

备份连接的数据库。

数据库恢复:

恢复连接的数据库。

退出系统:

安全的退出系统。

第三步,进入前台营业,可以进行以下四种查询。

点菜菜谱:

记录所有菜谱信息。

资源浏览:

可查询所有资源的信息。

登记帐单:

用于用户登记所花费用。

结帐:

用于清算用户的消费。

第四步,进入预定服务,可以查看以下信息。

预定订单:

可以供用户预定桌位或菜谱。

酒宴服务:

可以预定酒宴。

第五步,进入外卖服务,可以查看以下信息。

外卖订单:

用于用户订购。

送货服务:

为顾客送货上门。

第六步,进入员工管理,可以查看员工信息。

第七步,进入窗体,可以通过窗体重叠、水平平铺、垂直平铺来改变窗体,最后是关闭所有子窗体。

第八步,进入帮助,可以查看帮助主题、技术支持、联系我们和关于餐饮服务等信息。

系统E-R图设计

图3:

系统E-R图

系统逻辑结构设计主要任务

变换成逻辑结构,可以简单明了的观察信息。

同时方便编程人员,对系统的设置,编写相应的代码。

E-R图转换成关系模型

结帐台:

帐单编码、支付方式、支票号、优惠折扣、应付金额、实际支付、找零

员工:

性别、员工编码、真实姓名、联系号码、所属部门、职别、薪金

预定订单:

订单编码、订单类型、执行日期、桌号列表

外卖订单:

订单编码、送货地点、送货日期、送货清单

用户:

账号、密码、账号

数据库的物理设计的内容和方法

本系统的数据内容并不复杂,由于有许多的设置信息也需要将各种设置信息与现有的数据进行结合,这就决定了整套系统需要比较复杂的SQL语句来实现查询统计综合的功能,为了实现这一功能,本系统将充分利用数据库的资源,使用视图这一经过数据库编译的对象来实现查询统计的大部分功能,减少程序的负担,同时降低编程的复杂度。

这个系统模块并不复杂,设计的重点就在于如何方便地使各表之间的数据能够最有机地结合在一起,怎样设计可以方便扩充。

在这一节中,将介绍如何在一个SQLSERVER数据库中建立一个数据库,并建立相应的数据表和视图,以及对这个数据库进行相应的配置。

数据库表的创建

由于数据连接只需要一个,因此,只建立一个用户来管理这个数据库。

数据库中的表并不多,相互之间的关系也极为松散,功能也相对独立。

本系统对数据库的要求比较高,需要利用数据库来完成许多统计查询的功能。

以下为表的创建过程

 

表1记录用户登录信息表

表2记录点菜菜谱信息表

表3记录员工信息表

 

ADO的使用方法

.1ADO对象简介

ADO全称为ActiveXDataObject,它是一项数据库访问技术,它提供了网页开发人员实时存取数据库的能力。

ADO包含在MicrosoftIIS模块中。

使用ADO编写的应用程序可以非常容易并且可以扩展的将数据库访问添加到Web页中,可以存取在Internet上任何地方的资源,ADO使用Recordset(记录集)对象作为数据的主要界面。

ADO可以使用VBScript、JavaScript脚本语言来控制数据库的存取以及输出查询结果。

可以方便地连接到与ODBC兼容的数据库和OLEDB兼容的数据源。

.2ADO对象之间的关系

Connection对象可以用来在一般的程序和数据库中建立一条数据传输连线,在这个基础之上,可以使用Command对象及Recordset对象来对Connection对象所连接的数据库进行插入、删除、更新和查询等操作。

同拨打电话一样,建立一个Connection对象就像是拿起话筒,打开一个Connection对象类似于拨号,而使用Command对象及Recordset对象已经是在用这条线路通话了。

Command对象用来定义数据库的查询动作,这个查询一般采用SQL语句,大部分数据库都会支持SQL语言解释。

通过和SQLServer的查询及存储过程的良好结合,Command对象有更强大的数据库访问能力,无论是对数据库的插入、更新和删除这类无需返回结果集的操作,还是对Select查询这样需返回结果集的操作都一样简单。

Recordset对象对应着Command对象的查询返回结果,或者是直接建立的一个带查询的结果集。

它把从数据库内查询到的结果封装在一起,并提供简单快捷的方式去访问每一条记录内每一字段的数据,在后面的章节我们会详细去了解这些方式。

Recordset对象实际上是依附于Connection对象和Command对象之上的。

通过建立及开启一个Connection对象,可以与我们关心的数据库建立连线:

通过使用Command对象,则可以告诉数据库我们想要做什么:

是插入一条记录,还是查找符合条件的记录;通过使用Recordset对象,则可以方便自如地操作Command对象返回的结果。

这三个对象中的每一个都是必要的,缺一不可.

很多时候,你不必显式地为每一个Recordset对象创建Connection对象及Command对象,ADO提供这种灵活性,使你可以用最简单的方法指明一个字符串来说明其连接方式,以得到一个数据库的查询结果。

ADO会自动为你创建所需的Connection对象,并将包含SQL查询的字符串转换并放到一个Command对象里以执行你的操作。

当然,也可以显式地创建Connection对象和Command对象,这将使你获得更多的灵活性。

例如,通过替换Command对象的ComandString参数,可以在同一个连接上进行多次不同条件的查询,对仅是通过简单地创建Recordset对象来获得结果集的方式来说,你无法使用不同的SQL查询,更不用说获得多重的Recordset结果集了

.3ADO对象访问技术

ADO对象访问技术,主要的原理是利用,那几个常用的对象的属性进行配置,以及使用,通过ADOData控件绑定数据源的方法并不实用,更多时候需要通过从旧对象的实例化编程实现远程数据访问.

系统功能模块设计

.1系统功能设计

.2模块设计

本次设计一共分为五大模块

一.公共模块

存放全局的变量,公共函数,配置相关类。

二.前台管理营业模块

前台管理营业模块主要是实现对本系统中需要用到的各种简单或复杂参数的设置,主要包括浏览资源设置、登记帐单设置、点菜菜谱设置、结帐清单设置四部分,各个部分相对独立,可以单独修改也可以增加个别的设置模块,当然也可以在保证系统可靠运行的情况下去除个别设置模块。

三.预定酒宴服务模块

预定酒宴服务模块是为了在客流量量过大的情况下,可以为顾客方便地提供需要的服务,提高软件人性化而设计的,预定酒宴服务一共包括:

预定定单、酒宴服务两部分。

四.拓展外卖服务模块

拓展外卖服务模块主要是实现顾客订单服务,送货上门,给顾客带来方便。

主要包括外卖订单、送货服务两部分,各个高置部分相对独立。

五,员工管理模块

员工管理模块主要是实现智能化的员工档案,方便管理和随时调用。

系统的详细设计

.1系统首页的设置

1.主窗体的界面设计主要考虑到功能模块的划分以及人性化,餐饮系统的功能就集成在主窗体中。

2.运行时,单击相应的树就会进入不同的窗体,实现不同的功能。

要实现各项查询的功能,设计思想是通过菜单的CLICK事件,打开相应的窗体。

具体的代码如下:

PrivateSubToolBar1_ButtonClick(ByValsenderAsSystem.Object,_

ByValeAsSystem.Windows.Forms.ToolBarButtonClickEventArgs)_

SelectCaseMe.ToolBar1.Buttons.IndexOf(e.Button)

Case2

'修改密码

menuModPwd.PerformClick()

Case3

'员工管理

menuClerk.PerformClick()

Case5

'菜谱管理

menuMenu.PerformClick()

Case6

'资源浏览

menuResure.PerformClick()

Case7

'流水客户

menuCustomer.PerformClick()

Case8

'结帐清单

menuChkBill.PerformClick()

Case10

'预定订单

menuEngageOrder.PerformClick()

Case11

'预约服务

menuEngageSvc.PerformClick()

Case13

'外卖订单

menuExpandOrder.PerformClick()

Case14

'外送服务

menuTransSvc.PerformClick()

Case16

'帮助

menuHelpContent.PerformClick()

Case17

'退出系统

menuExit.PerformClick()

EndSelect

EndSub

4.主窗体退出系统时的CLOSING事件。

具体代码如下:

IfMsgBox("您真的要退出餐饮服务管理系统吗?

",_MsgBoxStyle.YesNo+MsgBoxStyle.Question,"退出系统")_=MsgBoxResult.YesThen

Application.Exit()

Else

ExitSub

EndIf

EndSub

.2登记外卖订单窗体控件布局

1.所用控件及其功能:

登记外卖订单设置窗体中的控件主要包括ListBox、TextBox、Button、Label和DatetimePicker等控件。

TextBox控件主要用于本窗体文字的显示。

ListBox列表框在本窗体中用于显示用户的多个选择,达到与用户对话的目的。

Button控件用于显示“添加”、“删除”和“更新”等按钮。

Label控件用于显示用户可看见的文字。

2.具体代码如下:

PublicSubGetAllData()

DimsqlstrAsString

DimdsAsNewDataSet()

ds.Clear()

Me.ListBox1.Items.Clear()

sqlstr="SELECTorderidFROMOrderInfoWHEREorderstyle='外卖'"

ds=GetDataFromDB(sqlstr)

DimiAsInteger

DimtempAsString

IfNotdsIsNothingThen

Fori=0Tods.Tables(0).Rows.Count-1

temp=Trim(ds.Tables(0).Rows(i)("orderid").ToString)

Me.ListBox1.Items.Add(temp)

Next

EndIf

EndSub

GetAllData()

IfMe.ListBox1.Items.Count>0Then

Me.ListBox1.SetSelected(0,True)

ShowData(0)

EndIf

EndSub

PublicSubShowData(ByValindexAsInteger)

Ifindex>=0Then

DimorderAsNewExOrder()

order=GetOrderInfo(Trim(Me.ListBox1.SelectedItem.ToString))

EndIf

EndSub

PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAs

DimsqlstrAsString

DimorderAsNewExOrder()

order=GetFormData()

Iforder.id=""Then

ExitSub

EndIf

Iforder.item=""Then

ExitSub

EndIf

sqlstr="INSERTINTOOrderInfo(orderid,orderstyle,orderdate,requiredate,shipadress,cargos)VALUES('"&order.id&"','外卖','"&CDate(Now.ToShortDateString)&"','"&order.rdate&"','"&order.address&"','"&order.item&"')"

UpdateData(sqlstr)

GetAllData()

ShowData(0)

EndSub

EndClass

3.运行界面如下:

.3扩展外卖送货服务窗体控件布局

1.所用控件及其功能:

扩展外卖送货服务设置窗体中的控件主要包括GroupBox、TextBox、Label、Button等控件。

GroupBox控件可将其他控件包括其中,从而集中显示。

TextBox控件主要用于本窗体文字的显示。

Label控件用于显示用户可看见的文字。

Button控件用于显示“确定”和“送货”按钮。

2.具体代码如下:

PrivateSubButton1_Click(ByValsenderAsSystem.Object,_

DimorderAsNewExOrder()

order.id=Trim(Me.TextBox1.Text)

Iforder.id=""Then

ExitSub

EndIf

DimsqlstrAsString

sqlstr="SELECT*FROMOrderInfoWHEREorderid='"&Trim(Me.TextBox1.Text)&"'"

DimdsAsNewDataSet()

ds.Clear()

ds=GetDataFromDB(sqlstr)

IfNotdsIsNothingThen

order.address=ds.Tables(0).Rows(0)("shipadress")

order.rdate=ds.Tables(0).Rows(0)("requiredate")

order.item=ds.Tables(0).Rows(

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > 公务员考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1