餐厅数据库设计_第1页
餐厅数据库设计_第2页
餐厅数据库设计_第3页
餐厅数据库设计_第4页
餐厅数据库设计_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一、实验目的与要求1、通过实验加深对数据完整性的理解,学会创建和使用触发器。2、通过实验加深对数据安全性的理解,并掌握 SQL Server中有关用户,角色及操 作权限的管理方法。3、通过实验了解SQL Server的数据备份和恢复机制,掌握 SQL Server中数据库备 份和恢复的方法。4、根据数据库系统设计的基本步骤,完成某一具体数据库系统的需求分析、概念 结构设计、逻辑结构设计、物理结构设计、数据库实施和数据库运行维护等功能。二、设计思想数据库系统设计是指对于一个给定的应用环境,构造优化的数据库逻辑模式和物 理结构,并据此建立数据库及其应用系统,使之能够有效的存储和管理数据,满足各种

2、用户的应用需求,包括信息管理要求和数据库操作要求。数据库设计的基本步骤包括需 求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施和数据库运行和维 护。三、设计步骤一、需求分析餐厅管理涉及的实体有:客人 属性有客人编号、桌号、人数、到达时间、客人类型菜单 属性有菜单编号、菜肴编号、份数、口味菜肴属性有菜名、菜肴种类收银单 属性有收银单编号、应收金额、折扣、实收金额、收银时间账目 属性有帐目编号、消费金额、用餐持续时间、客户类型这些实体之间的联系如下:一桌客人对应一个菜单,多桌客人可以使用相同的菜单,因此客人与菜单有多对一 的联系。客人、收银单、账目之间存在一对一的关系,即一桌客人只对应

3、一个收银单,一个 收银单只对应一条账目记录,一个收银单只对应一桌客人。菜肴和菜单之间存在一对一联系,一个菜肴编号对应一个菜名,用菜价来表示菜肴 的价格。二、概念结构设计人数客人编号客人知识是人类进步的阶梯知识是人类进步的阶梯、逻辑结构设计总体表预览表名称表信息描述Customerinfo客人信息表FoodList菜单信息表Foodinfo菜肴信息表Chargeinfo收银信息表Accountinfo账目信息表Orderinfo点菜信息表知识是人类进步的阶梯 知识是人类进步的阶梯 C_C_A客人、收银单、账目对应关系Priceinfo价格信息表客人信息表Customerinfo描述字段客人编号C

4、usnoInt桌号Tablenoshortint人数Cusnumshortint客人类型Ctypechar(4)菜单信息表FoodList描述字段菜单编号MnoInt菜肴编号Fnosmallint份数Fnumsmalltint口味FtasteChar(4)菜肴信息表Foodinfo描述字段知识是人类进步的阶梯知识是人类进步的阶梯菜名Fnamevarchar(20)菜肴种类Fkindchar(4)收银信息表Chargeinfo描述字段收银单编号ChargenoInt应收金额Spayint折扣Discountint实收金额Rpayint账目信息表 Accountinfo描述字段账目编号Accoun

5、tnoInt消费金额PayInt客户类型Ctypechar(4)点菜信息表Orderinfo描述字段知识是人类进步的阶梯知识是人类进步的阶梯客人编号CusnoInt菜单编号MnoInt客人、收银单、账目对应关系表 C_C_A描述字段客人编号CusnoInt收银单编号ChargenoInt账目编号AcountnoInt价格信息表Priceinfo描述字段菜名Fnamevarchar(20)菜肴编号Fnosmallint价格Pricesmallint创建数据库:create database inn;创建表:知识是人类进步的阶梯 知识是人类进步的阶梯众创建表 Customerinfo :creat

6、e table Customerinfo (Cusno int primary key,Tablenosmallintnot null,Cusnum smallint not null,Custype char(4) not null,check(Custype=普通,or Custype=VIP),);创建表Foodinfo :create table Foodinfo (Fname varchar(20) primary key,Fkind char(10) not null,);创建表 Chargeinfo :create table Chargeinfo (Chargeno int p

7、rimary key,Spay int,Discount int,Rpay int);创建表 Accountinfo :知识是人类进步的阶梯 知识是人类进步的阶梯 create table Accountinfo (Accountno int primary key,Pay int,Ctype char(4);创建表C_C_A :create table C_C_A (Cusno int primary key,Chargeno int not null,Accountno int not null);创建表 Priceinfo :create table Priceinfo(Fno smal

8、lint primary key,Fname varchar(20) not null,Price smallint not null);创建表FoodList :create table FoodList (Mno int,Fno smallint,知识是人类进步的阶梯 知识是人类进步的阶梯 Fnum smallint not null,Ftaste char(4),primary key(Mno,Fno),foreign key (Fno) references PriceInfo(Fno);创建表 OrderInfo :create table OrderInfo (Cusno int,

9、Mno int,primary key (Cusno,Mno),foreign key (Cusno) references CustomerInfo(Cusno);四、物理结构设计创建索引:create index index_PriceInfo on PriceInfo(Fno);create index index_FoodList on FoodList(Mno);create index index_OrderInfo on OrderInfo(Mno);create index index_FoodInfo on FoodInfo(Fname);create index index

10、_CustomerInfo on CustomerInfo(Cusno);create index index_ChargeInfo on ChargeInfo(Chargeno);create index index_C_C_A on C_C_A(Cusno);知识是人类进步的阶梯知识是人类进步的阶梯 create index index_AccountInfo on Accountlnfo(Accountno);创建视图:create view Kitchen asselect Mno,Fname,Fnum,Ftastefrom FoodList,PriceInfocreate view

11、Delivery asselect Tableno,Fname,Fnum,Cusnumfrom FoodList,CustomerInfo,OrderInfo,PriceInfowhere FoodList.Mno=OrderInfo.Mno and OrderInfo.Cusno=CustomerInfo.Cusno and PriceInfo.Fno=FoodList.Fno五、数据库实施1、 插入数据:插入数据到表FoodInfo :insert into FoodInfo values (干锅千页豆腐,推荐);insert into FoodInfo values (手撕包菜,素菜);

12、insert into FoodInfo values (水煮鱼片,荤菜); insert into FoodInfo values (香干回锅肉,荤菜);知识是人类进步的阶梯 知识是人类进步的阶梯 insert into FoodInfo values insert into FoodInfo values insert into FoodInfo values insert into FoodInfo values insert into FoodInfo values insert into FoodInfo values insert into FoodInfo values inse

13、rt into FoodInfo values insert into FoodInfo values insert into FoodInfo values insert into FoodInfo values insert into FoodInfo values insert into FoodInfo values(油淋茄子,素菜);(蒜苗牛柳,推荐);(鱼香肉丝,荤菜);(糖醋小排,推荐);(酸辣土豆丝,素菜);(宫爆鸡丁,荤菜);(红烧鸡块,荤菜);(冬瓜咸排汤,汤类);(蕃茄蛋汤,汤类);(紫菜蛋汤,汤类);(土豆牛肉,推荐);(凉拌皮蛋,凉菜);(凉拌毛豆,凉菜);插入数据到

14、表PriceInfo :insert into PriceInfo values insert into PriceInfo values insert into PriceInfo values insert into PriceInfo values insert into PriceInfo values insert into PriceInfo values(001,干锅千页豆腐,16);(002,手撕包菜,6);(003,水煮鱼片,15);(004,香干回锅肉,10);(005,油淋茄子,6);(006,蒜苗牛柳,18);insert into PriceInfo values (

15、007,鱼香肉丝,10);知识是人类进步的阶梯(008,糖醋小排,22); 知识是人类进步的阶梯 insert into Priceinfo valuesinsert into Priceinfo values(009,酸辣土豆丝,5);insert into Priceinfo valuesinsert into Priceinfo valuesinsert into Priceinfo valuesinsert into Priceinfo valuesinsert into Priceinfo values(010,宫爆鸡丁爆2);(011,红烧鸡块,16);(012,冬瓜咸排汤,8);

16、(013,蕃茄蛋汤,6);(014,紫菜蛋汤,6);insert into Priceinfo values(015,土豆牛肉,24);insert into Priceinfo values(016,凉拌皮蛋,5);insert into Priceinfo values(017,凉拌毛豆,5);2、创建用户、角色创建用户:选择目的数据库中的安全性,右击安全性中的用户,选择新建用户, 在弹出的数据库用户-新建对话框中输入用户名和登录名 Delivery ,单击确定。重复上 述操作完成对用户 Kitchen、Admin Waiter的创建。创建角色:选择目的数据库中的安全性,右击安全性中的角色

17、,选择新建中的 新建数据库角色,出现数据库角色-新建对话框,输入角色名,并选择所有者,在此角 色的成员中单击添加选择角色成员,单击确定完成角色创建。3、对用户授权grant select on Kitchen to Kitchen;grant update on FoodList to Kitchen;grant select on Delivery to Delivery;grant update on FoodList to Delivery;grant all privileges on Accountinfo to Admin知识是人类进步的阶梯 知识是人类进步的阶梯 grant al

18、l privileges on C_C_A to Admingrant all privileges on Chargeinfo to Admingrant all privileges on Customerinfo to Admingrant all privileges on Foodinfo to Admingrant all privileges on FoodList to Admingrant all privileges on Orderinfo to Admingrant all privileges on Priceinfo to Admingrant all privileges on Kitchen to Admingrant all privileges on Delivery to Admingrant all privileges on Foodlist to Waitergrant all privileges on Customerinfo to Waitergrant all privileges on Chargeinfo to Wait

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论