1、类型、名称、价格4.预定:用户编号、日期、预定时间、客户姓名、预定食谱、桌号5桌台管理:桌号、使用情况、6点餐管理:用户编号、类型、菜品、数量、价格7.盈利管理:日期、店内收入、外卖收入、盈利额度各对象之间的联系图:主要存储一些用户信息,如用户的账号、密码和类型地点等等,主要用于用 户登录,添加客户和添加预定时会使用到用户信息。主要存储一些客户信息,如客户的账号、密码、联系方式和消费情况等等,主要用于客户订餐、充值和结算,使用于添加预定桌台表E-R图食谱表E-R图餐,使用于添加预定预定E-R图主要存储一些预定信息,如客户的账号、预定的时间、桌号和菜单等等,主 要用于记录客户的预定信息,会使用到
2、用户、客户、菜单和折扣信息。主要存储每日收入流水,用于统计财务收入3.数据表的设计1、 user (用户员工表)表 3.1 user字段名称字段描述字段类型备注user_id用户编号INT (11)不允许空Pwd用户密码VARCHAR 45)Name用户姓名Tel用户电话Money收款金额允许空用户表主要用于存储一些用户信息,如用户的账号、密码和类型地点等等, 主要用于用户登录,添加客户和添加预定时会使用到用户信息来记录经手的用 户,字段money用于记录用户的收款金额,便于结算时对收款现金的核对。2、 customer (客户表)表 3.2 customer客户姓名Id客户编号客户密码Add
3、time添加时间账户余额usedm oney已用金额客户电话Userid客户表主要用于存储一些客户信息,如客户的账号、密码、联系方式和消费 情况等等,主要用于客户订餐、充值和结算,字段 money用于储存账户余额,在 使用充值和账户余额支付时会使用到它。 字段usedmoney用于记录客户的消费情 况,为客户打折时会使用到它。3、 food (食谱表)表 3.3 foodFood id食物编号不允许为空food name食谱名称Price价格食谱表主要用于存储一些食谱信息, 如食谱的名称、价格和照片等等,主要 用于客户订餐,使用于添加预定。字段Price记录的是食物的价格。当客户预定 餐点时,
4、系统使用它来算费用。4、 Order(点餐表)表 3.3 OrderTableid桌号People人数菜品名称Amount数量Date日期5、 YuDing (预定表)表 3.4 YuDingDATETIMETime预定时间Food菜单号消费金额预定表主要用于存储一些预定信息, 如客户的账号、预定的时间、桌号和菜 单等等,主要用于记录客户的预定信息,会使用到用户、客户、菜单和折扣信息。 当系统预定餐点时,会从其他各表中调出需要的信息, 经过计算和处理后,将最 终信息储存到YuDing表,该表和其它各表都有紧密的联系。6、 Yi nli ( 盈利表)Datain1店内收入in2外卖收入out日支
5、出yi nli盈利beizhu4数据库创建:创Cdrnm&rts!Column Name Datatype PK. NTJ UQ BIN UN ZF Al Default Foodjd INI11)Q foodname VARCHAR(45)0 Pritt VARCHAR(45)食谱表;ARCHAR.H5)5tytle VARCHAR(45)lame VARCHAR(45)lei VARCHAR(45)Monev VARCHAR(45)用户表Tat?le Nme;yudingSchema;test1皿3Colatnn:Sehina DefaultVEngine:InnoDBComrents:C
6、oluiTi nNarriE datatypePKNNUQ BINUN乎Al Uefdult0 TableFd lN*rLl Date DATFT1MEO Time VARCHAR45)y一 Name VARCMARC45)_-Use id VAR CHARTS)Food VARCHAR(45) O MlanefY VARCfriARS)0 Yudingcol VARCHRC5).预定表桌台表Colunnn blameDatatypeNhlUQBINUNZFDefault1MT 00 O ini/ARCHAR45) 口 in2/AR CHARTS)0 out7ARCHR45)r。yinliVA
7、R CHARTS)7 Ylnlicol/archrCS)treiifiuVARCfriAR5)士1u=盈利表匚 ornments:匚oluiTiri NameNILUQunIAlDefiiJtIlls eridIIT0 Table! dVARCHATi(45)ARCHARJ)fcjodwE宅VARCHARK5)-PriceVARCHARS)V* AmountVAR匚卜1人尺叫5)VAR 匚 HAR(专 5)=点餐表客户表六查询1查询所有顾客及添加时间SELECT name ,addtime FROM test.customer;2.查询当前剩余空桌SELECT table_id FROM te
8、st.table_id where people=0;3.创建存储过程,在客户的账户余额里扣除已点菜品的价格执行操作前,客户“丁叶”的账户余额为 200元执行操作后,客户“丁叶”的余额变为 170元创建存储过程使客户可对自己的账户进行充值,执行操作前,用户“方兵” 的账户余额为100元操作代码1、 实现余额的扣除:CREATE DEFINER二rootlocalhost PROCEDURE dia ncai(in nam varchar(45)BEGINSET autocommit = 0;START TRANSACTION;update customer set money二customer
9、.money-(select money fromtest.yudi ng where n ame=n am) where n ame=n am;SET autocommit = 1;END2.实现余额的充值CREATE DEFINER=ch on gzhiin id_ i nt(11)update customer set money二customer.money+(select howmoneyfrom test.cho ngzhi where id=id_)/2)where id=id_;总结首先感谢帮助过我们的老师同学,现在我们来说说我们的不 足吧。首先我们刚开始不太确定方向,所有系统
10、都想尝试做一下, 所以有点耽误时间。刚开始做的过程中我们对自己做的系统体系 结构不太了解,体系都是慢慢逐渐完善的。刚开始建数据库时,由于对MY SQL这个软件的运用不够熟 练,我们不懂得如何导出导入数据库,导致我们做好的表格和数 据无法保存,再次打开运行时,导致数据的缺失,一切都要重新 来过,浪费了很多时间和精力。存储过程中也有阻碍,语句的错误,拼写错误,对象引入错 误。但是经过查询课本,网上查找资料以及同学的指导我们找到 了错误并加以改正。在建表时设置主键的不恰当,导致运行程序时出现 bug,例 如:在建立预订表的时候,把主键设置为桌号,这意味着每张桌 子只能用一次,这对于餐饮管理并不符合实际,所以我们理清思 路,加入序号这一个属性,以预订顺序为唯一标识,确立主键。修改前的预订表修改后的预订表参考资料:MySQL5.6从零开始学习,MySQL权威教程 网页搜索。
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2