餐厅营业管理系统数据库设计报告.doc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 餐厅 营业 管理 系统 数据库 设计 报告
- 资源描述:
-
课程设计报告 ( 2014-- 2015年度第1学期) 实验名称: 数据库应用课程设计 题 目: 餐厅营业管理系统 院 系: 班 级: 学 号: 学生姓名: 指导教师: 设计周数: 1 周 成 绩: 日期:2015年1月23日 课程设计报告 一、 课程设计的目的与要求 目的 1. 学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象的系统分析与设计,对数据库做进一步的了解,掌握相关知识。 2. 进一步加强对数据库运用能力和熟练掌握数据库中的重要知识,了解如何从数据库中读写有关数据。 3. 培养分析问题、解决问题的能力。 要求 1. 完成数据库系统的安装与设置。 2. 根据具体的课题完成需求分析。 3. 完成数据库应用系统的逻辑设计。 4. 创建数据库、数据表。 5. 完成设计报告。 二、设计正文 1.需求分析 1.1 调查用户需求 本系统的最终用户为店主以及该店的各个管理人员。根据我们日常生活中的经验,结合对自己周边餐馆员工的咨询和对餐厅营业的调查,得出用户的下列实际要求: 1.1.1基本功能需求 本系统用于餐厅日常的营业管理,主要面向于餐厅的管理阶层用于对餐厅的销售状况进行全方位的了解。日常管理包含以下几方面的信息: Ø 前台销售的基本信息 客户每次进行消费,所花费的金额都会以账单的形式被记录下来。前台销售管理员主要将账单的信息输入系统,再由系统存入数据库这都是餐厅销售的重要信息。 Ø 采购的基本信息 采购信息是餐厅的资本输出的重要记录,将采购信息存入数据库可以进行营业额的计算,统计销售情况。正确分析餐厅的真实情况,进行热门菜品分析进而选择适合客户口味的食材,提高餐厅体验度。 Ø 员工的基本信息 餐厅拥有很多的员工,每个人分配有不同的角色,参与不同的工作,员工又有自己不同的职位。员工的基本信息是非常重要的,首先餐厅营业必须确保自身的安全,再者餐厅需要每个员工工作才能正常工作,员工是餐厅运作的基本。 Ø 日常维修的基本信息 每个餐厅都需要定期的维修餐厅中的物品,日常使用过程中不免有损坏。这样就需要分配人去修理,在修理过程中肯定需要修理费用。这笔花费必选记录下来保存在数据库中,以便日后统计分析。 1.1.2用户对系统的要求 Ø 销售管理员 a.信息要求 销售管理员能查询座位的全部信息,并且可以编辑,修改座位信息表的所有字段。可以查询菜单的基本信息。填写账单信息而后系统自动计算账单的总价格,并将账单的信息进行保存。 b.处理要求 当座位被占用时,应该及时的修改座位的状态以防给顾客带来困扰。 Ø 人事管理员 a.信息要求 能够查询编辑公司人员信息的全部内容,比如可以查看人员的联系方式,但是不允许查看人员的薪资。将权利分开来,薪资不允许人事管理员看到。 b.处理要求 当人事变动或者人员信息变化时能够对员工信息表修改、删除、增加、查询。及时的处理人员的基本信息记录。 Ø 财务管理员 a.信息要求 能够查看员工考勤信息,查看员工信息,账单信息,维修记录信息,采购信息。能够查询编辑公司人员工资信息,编辑统计销售信息。 b.处理要求 按照公司的规定时间定期根据考勤记录计算修改员工的基本工资信息。同时定期统计销售情况,增加信息到统计销售信息。 Ø 采购管理员 a.信息要求 可以查看采购信息,查看库存信息和修改菜单信息。采购管理员根据当时的仓库所有的食材,在菜单上勾选那些菜品在一段时间中不会出现。 b.处理要求 当仓库的食材缺少或者没有时,能够修改、删除、增加菜单信息。在采购完成后,能增加、修改、插入、查询采购的基本信息。 Ø 后勤管理员 a.信息要求 能够增加、修改、插入、查询编辑人员的维修信息的。 b.处理要求 当发生维修记录时,能及时的处理人员的维修信息记录,将信息更新到数据库当中。 Ø 系统用户 a.信息要求 可以查看、修改、删除、增加任何信息,但是为了确保数据库的安全性尽量提醒用户是否继续危险操作。 b.处理要求 对于管理员的权限设置应及时,对于数据库的安全性要进行及时处理。对于过于集中的危险操作要进行限制,数据库要进行定期的维护备份。 c.安全性与完整性要求 安全性要求: n 系统应设置访问用户的标识以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用; n 系统应对不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容; n 系统应对不同用户设置不同的权限,区分不同的用户,如区分普通管理员,超级管理员; 完整性要求; n 各种信息记录的完整性,信息记录内容不能为空; n 各种数据间相互的联系的正确性; n 相同的数据在不同记录中的一致性。 1.2 系统功能的设计和划分 根据如上得到的用户需求,我们将本系统按照所完成的功能分成以下几部分: 第一部分:销售管理员部分 第二部分:采购管理员部分 第三部分:人事管理员部分 第四部分:财务管理员部分 第五部分:后勤管理员部分 第六部分:系统管理员部分 各部分完成的功能如下: 1.2.1销售管理员部分 n 查询座位信息。 n 修改座位状态。 n 查询菜单信息。 n 插入账单信息。 1.2.2采购管理员部分 n 插入采购信息。 n 查询库存信息。 n 查询、修改、增加、删除菜单信息。 1.2.3人事管理员部分 n 查询、修改、增加、删除员工基本信息(除薪资)。 1.2.4财务管理员部分 n 查看员工考勤信息。 n 查看员工信息。 n 编辑员工薪资信息。 n 查看账单信息。 n 查看维修记录信息。 n 查看采购信息。 n 编辑销售统计信息。 1.2.5后勤管理员部分 n 查询、修改、增加、删除维修信息。 1.2.6系统管理员部分 n 处理管理员登录。 n 管理员可以编辑用户信息。 n 管理员可以设置数据备份。 n 管理员可以进行安全维护。 餐厅 营业 管理 销 售 管 理 采 购 管 理 人 事 管 理 财 务 管 理 系 统 管 理 用 户 添 加 权 限 设 置 数 据 备 份 安 全 维 护 账 单 管 理 采 购 记 录 菜 单 管 理 员工 信息 管理 销 售 统 计 工 资 计 算 后 勤 管 理 维 修 管 理 图1系统功能图 1.3 数据流图 图2前台销售管理数据流图 图3采购管理数据流图 图4人员信息数据流图 图5财务管理数据流图 图6后勤管理数据流 2.概念设计 根据需求分析说明书设计ER图,设计完成的ER图为: 图7总ER图 员工(员工ID,姓名,性别,年龄,身份证号,职务,联系方式,薪资,劳务合同开始日期,劳务合同结束日期) 考勤表(员工ID,日期,工作量百分比) 销售统计(统计ID,统计日期,盈利金额,亏损金额,统计员ID) 维修记录(维修ID,日期,处理花费金额,事件描述,处理人ID) 采购记录(采购ID,日期,采购员ID) 仓库(仓库ID,管理员ID,仓库量,仓库面积,仓库位置) 食材(食材ID,食材名,描述) 食材_仓库(食材ID,仓库ID,数量) 食材_采购(食材ID,采购ID,数量,单价) 菜单(菜单ID,时间,制定人ID) 菜品(菜品ID,菜品名,价格,菜品类型,描述) 菜单_菜品(菜单ID,菜品ID) 账单(流水ID,座位ID,总价格,日期,处理人ID) 座位(座位ID,编号,座位状态) 账单_菜品(流水ID,菜品ID,数量,单价) 注:实下划线代表主键,点下划线代表外键 3.逻辑设计 3.1 关系表设计 将ER图转换为关系模式、要求设计出数据库所有关系表 表1员工信息表(STAFF) 中文含义 字段名 类型 长度 备注 完整性约束 员工ID staffID bigint 主键 姓名 name varchar(50) 50 not null 性别 sex varchar(2) 2 值为“男”或“女” 年龄 age int null 身份证号 identityCardID varchar(50) 50 not null 职位 position varchar(100) 100 null 联系方式 phone varchar(20) 20 not null 薪资 wage int null 劳务合同结束日期 startWorkTime date not null 劳务合同开始日期 startWorkTime date null 表2采购表(PURCHASE) 中文含义 字段名 类型 长度 备注 完整性约束 采购ID purchaseID bigin 主键 日期 date date not null 采购员ID staffID bigint 外键 表3食材_采购表(IngredientPurchase) 中文含义 字段名 类型 长度 备注 完整性约束 食材ID ingredientsID bigin 主键 采购ID Pname bigin 主键 数量 number float not null 单价 price float null 表4菜单表(MENU) 中文含义 字段名 类型 长度 备注 完整性约束 菜单ID menuID bigint 主键 日期 date date not null 指定人ID staffID bigint 外键 表5食品表(FOOD) 中文含义 字段名 类型 长度 备注 完整性约束 菜品ID foodID bigint 主键 菜品名 foodName varchar(50) 50 not null 价格 price date not null 菜品类型 foodType varchar(50) 50 not null 描述 description varchar(100) 100 null 表6维修表(REPAIR) 中文含义 字段名 类型 长度 备注 完整性约束 维修ID repairID bigint 主键 日期 date date null 处理花费金额 dealMoney float null 事件描述 eventDescription varchar(500) 500 null 处理人ID staffID bigint 外键 表7流水表(BILL) 中文含义 字段名 类型 长度 备注 完整性约束 流水ID billID bigint 主键 座位ID seatID bigint 外键 总价格 allPrice float not null 日期 date Date not null 处理人ID staffID bigint 外键 表8考勤表(CHECKWORK) 中文含义 字段名 类型 长度 备注 完整性约束 日期 Uname date 主键 员工ID Upassword bigint 主键 工作量百分比 workPercentage float not null 表9销售统计表(SALE) 中文含义 字段名 类型 长度 备注 完整性约束 统计ID saleID bigint 主键 日期 date date not null 盈利金额 profitMoney float not null 亏损金额 lossMoney float not null 统计员ID staffID bigint 外键 表10仓库表(REPERTORY) 中文含义 字段名 类型 长度 备注 完整性约束 仓库ID repertoryID bigint 主键 仓库容量 capacity float null 仓库面积 area float null 仓库位置 position varchar(100) 100 not null 管理人ID staffID bigint 外键 表11账单菜品关系表(BILLFOOD) 中文含义 字段名 类型 长度 备注 完整性约束 流水ID billID bigint 主键 菜品ID foodID float null 数量 number float null 单价 price varchar(100) 100 not null 表12系统用户表(UserSystem) 中文含义 字段名 类型 长度 备注 完整性约束 用户ID userID bigint 主键 密码 password varchar(30) 30 not null 用户类型 userType varchar(50) 50 not null 表13食材_仓库表(IngredientRepertory) 中文含义 字段名 类型 长度 备注 完整性约束 食材ID repertoryID bigint 主键 仓库ID capacity float 主键 数量 area float not null 表14食材表(INGREDIENTS) 中文含义 字段名 类型 长度 备注 完整性约束 食材ID ingredientsID bigint 主键 食材名 ingredientNmae varchar(50) 50 not null 描述 description varchar(100) 100 null 表15食材_仓库表(SEAT) 中文含义 字段名 类型 长度 备注 完整性约束 座位ID seatID bigint 主键 编号 number int not null 座位状态 seatState varchar(2) not null 表16菜单菜品关系表(MENU) 中文含义 字段名 类型 长度 备注 完整性约束 菜单ID menuID bigint 主键 菜品ID foodID bigint 主键 以上关系模式均为BCNF。 图8建立check约束图 图9系统关系图 3.2视图设计 为了方便程序查询,建立了如下用户视图: l 当前菜单信息视图(菜品名,价格,菜品类型,描述) SELECT dbo.FOOD.foodName, dbo.FOOD.price, dbo.FOOD.foodType, dbo.FOOD.description FROM dbo.FOOD INNER JOIN dbo.MENUFOOD ON dbo.FOOD.foodID = dbo.MENUFOOD.foodID CROSS JOIN dbo.MENU WHERE (dbo.FOOD.foodID IN (SELECT foodID FROM dbo.MENUFOOD AS MENUFOOD_1 WHERE (menuID = (SELECT TOP (1) menuID FROM dbo.MENU AS MENU_1)))) l 历史账单信息视图(流水ID,菜品名,数量,总价格,日期,处理人ID) SELECT dbo.BILL.billID, dbo.BILL.date, dbo.BILL.staffID, dbo.BILLFOOD.foodID, dbo.BILLFOOD.number, dbo.BILLFOOD.price, dbo.BILL.seatID FROM dbo.BILL INNER JOIN dbo.BILLFOOD ON dbo.BILL.billID = dbo.BILLFOOD.billID l 当前库存信息视图(仓库ID,食材名,数量,管理员ID) SELECT dbo.IngredientRepertory.repertoryID,dbo.IngredientRepertory.ingredientsID, dbo.INGREDIENTS.ingredientNmae, dbo.IngredientRepertory.number, dbo.INGREDIENTS.description FROM dbo.IngredientRepertory INNER JOIN dbo.INGREDIENTS ON dbo.IngredientRepertory.ingredientsID = dbo.INGREDIENTS.ingredientsID INNER JOIN dbo.REPERTORY ON dbo.IngredientRepertory.repertoryID = dbo.REPERTORY.repertoryID l 采购信息视图(采购ID,食材ID,数量,单价,日期,采购员ID) SELECT dbo.PURCHASE.purchaseID,dbo.IngredientPurchase.ingredientsID, dbo.INGREDIENTS.ingredientNmae,dbo.IngredientPurchase.number,dbo.IngredientPurchase.price, dbo.INGREDIENTS.description FROM dbo.IngredientPurchase INNER JOIN dbo.INGREDIENTS ON dbo.IngredientPurchase.ingredientsID = dbo.INGREDIENTS.ingredientsID INNER JOIN dbo.PURCHASE ON dbo.IngredientPurchase.purchaseID = dbo.PURCHASE.purchaseID 图10视图设计图 3.3存储过程及触发器设计 存储过程设计: 存储过程是一组为了完成特定功能的SQL语句集合,是经过编译后存储在服务器上并在服务器端运行的程序模块。一旦创建,此后可以多次调用,极大地提高了程序的效率。 l 输入开始日期和初始日期查询之间的账单: CREATE PROCEDURE search_bill -- Add the parameters for the stored procedure here @billStart date , @billEnd date AS select * from billView1 where billView1.date between @billStart and @billEnd l 输出销售统计营业额亏损的记录 CREATE PROCEDURE search_badSale -- Add the parameters for the stored procedure here AS select * from SALE where profitMoney < lossMoney 触发器设计: 触发器是数据库服务器中发生事件是自动执行一种特殊的存储过程,执行必须要在相应的时间发生。 l 创建人员工资限制,如果小于1000设置为1000, create trigger money on dbo.staff for after insert , update as if (select dbo.staff.wage from dbo.staff )<1000 begin print 'the wage set is too low' rollback transaction end l 在插入,更新员工信息表的时候,开始工作时间不能大于结束时间 USE [database] GO IF EXISTS( SELECT * FROM sys.triggers WHERE name = N'time_protect' AND parent_class_desc = N'DATABASE' ) DROP TRIGGER userSystem_protect ON DATABASE GO CREATE TRIGGER time_protect ON staff after insert ,update AS DECLARE @startWorkTime date DECLARE @endWorkTime date select @startWorkTime = startWorkTime from STAFF select @endWorkTime = endWorkTime from STAFF IF @startWorkTime > @endWorkTime BEGIN PRINT 'Your time is error !' ROLLBACK TRANSACTION END GO 4.物理设计 确定数据库物理结构主要指确定数据的存放位置和存储结构,包括确定关系、索引、聚簇、日志、备份等的存储安排和存储结构,确定系统配置等。 1、 系统自动在每个表的主码上建立索引。 2、 数据库的存储位置: D:\ProgramFiles\MicrosoftSQLServer\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\ database.mdf 日志存储位置: D:\ProgramFiles\MicrosoftSQLServer\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\database_log.ldf 3、 在MENU表menuID列上建立MENU_desc索引设置menuID降序:create unique index menu_desc on menu (menuID desc); 5.安全性以及权限管理 数据库的备份和恢复: 1. 完整备份: BACKUP DATABASE [database] TO DISK = N' D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Backup\database.bak' WITH RETAINDAYS = 7, NOFORMAT, NOINIT, NAME = N'database-完整 数据库 备份', SKIP, NOREWIND, NOUNLOAD, STATS = 10 GO 2. 恢复: Restore database [database] from disk = ' D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Backup\database.bak' with recovery 6.系统界面及代码实现 图11全局库表关系图设计图 二、 课程设计总结或结论 本次课程设计我选择了餐厅营业管理系统的题目,在为期一周的数据库设计的实践课程中,通过调查需求,概念结构设计,逻辑结构设计,物理设,项目编码等数据库设计流程,学会了如何根据用户的需求,来设计一个合理,健壮,高效的数据库。在设计和编码过程中遇到很多没有见过的问题,通过自己上网查找资料来意义解决,学到了很多。 四、参考文献 [1] 萨师煊,王珊.数据库系统概论. 高等教育出版社, 第3版. 2000年2月 [2] 黄维通. SQL Server 2000简明教材. 清华大学版社, 第1版. 2002年3月 [3] 郑阿奇,顾韵华. ASP.NET实用教程. 电子工业出版社, 第1版. 2005年3月 17展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




餐厅营业管理系统数据库设计报告.doc



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/3148824.html