计算机工程系实验报告
课程名称:
数据库原理与应用
实验项目名称:创建酒店管理系统数据库
班级:计算机工程系网络工程 14-3 班
实 验 目 的:
1. 学会用 SQL 创建酒店管理数据库
2. 掌握约束属性的设置
3.明白各种约束与主外键设置的作用
实 验 环 境:
SQL server 2014
需求分析:
用户的需求具体体现在各种信息的提供、保存、更新和查询等方面,这就要求数据库结构能充分瞒住
各种信息的输入和输出。收集基本数据、数据结构以及数据处理的流程,得出本系统所处理的数据流程。
针对一般酒店客房服务信息管理系统的需求,内容和流程分析,设计下面的数据项和数据结构:
人事部成员信息,包括的数据项有:部门编号,姓名,性别,年龄,职务和联系方式。
财务部信息,包括的数据项有:部门编号,审核员,性别,年龄,上交收入,下发收入。
前厅部信息,包括的数据项有:部门编号,接待员编号,姓名,性别,年龄,职务,联系方式。
客房服务部信息,包括的数据项有:部门编号,客房服务区间,姓名,性别,年龄,联系方式。
客户信息,包括的数据项有:客户编号,接待员编号,姓名,性别,年龄,房间号,客房服务区间,
身份证证件号。
仓储部信息,包括的数据项有:部门编号,管理员编号,姓名,性别,年龄,联系方式。
物资流动信息,包括的数据项有:部门编号,申请日期,申请人,管理员编号,管理员姓名。
工程部信息,包括的数据项有:部门编号,维修员编号,姓名,性别,年龄,联系方式。
餐饮部信息,包括的数据项有:部门编号,厨师分组编号,客房服务区间,姓名,性别,年龄,联系
方式。
E-R 图设计:
实 验 内 容 及 过 程:
create database 酒店管理系统数据库
on
(name=酒店管理系统数据库_data,
filename='D:\酒店管理系统数据库_data.mdf',
size=10,
maxsize=50,
filegrowth=10%)
log on
(name='酒店管理系统数据库_log',
filename='D:\酒店管理系统数据库_log.ldf',
size=10,
maxsize=50,
filegrowth=1MB)
use 酒店管理系统数据库
go
create table 人事部成员信息表
(部门编号 char(30)primary key,
姓名 char(30),
性别 char(20)check(性别='男'or 性别='女'),
年龄 char(30),
职务 char(30),
联系方式 char(30))
insert into 人事部成员信息表(部门编号,姓名,性别,年龄,职务,联系方式)
select'001','周一','男','21','财务部经理','15735180001'
union
select'002','李一','男','20','人事部经理','15735180002'
union
select'003','曹一','男','22','仓储部部经理','15735180003'
union
select'004','刘一','女','20','前厅部经理','15735180004'
union
select'005','杨一','女','21','客房服务部经理','15735180005'
union
select'006','原一','男','20','餐饮部经理','15735180006'
union
select'007','赵一','男','25','工程部经理','15735180007'
select *from 人事部成员信息表
create table 财务部信息表
(部门编号 char(30)constraint fk_部门编号 foreign key references 人事部成员信息表(部门编号),
审核员 char(30)primary key,
性别 char(30)check(性别='男'or 性别='女'),
年龄 char(30),
上交收入 char(30),
下发工资 char(30))
insert into 财务部信息表(部门编号,审核员,性别,年龄,上交收入,下发工资)
select'001','周二','男','23','230000','30000'
union
select'002','李二','男','23','0','20000'
union
select'003','曹二','女','23','0','6000'
union
select'004','刘二','女','24','50000','13000'
union
select'005','杨二','女','23','0','30000'
union
select'006','原二','男','21','60000','12000'
union
select'007','赵二','男','22','0','9000'
select *from 财务部信息表
create table 前厅部信息表
(部门编号 char(30)constraint fk_Q_部门编号 foreign key references 人事部成员信息表(部门编号),
接待员编号 char(20)primary key,
姓名 char(30),
性别 char(30)null,
年龄 char(30)null,
职务 char(30)null,
联系方式 char(30)null)
insert into 前厅部信息表(部门编号,接待员编号,姓名,性别,年龄,职务,联系方式)
select'004','J1','王芸','女','22','接待员','15735180008'
union
select'004','J2','刘丽','女','23','接待员','15735180009'
union
select'004','S1','赵丽','女','21','收银员','15735180010'
union
select'004','S2','刘娟','女','24','收银员','15735180011'
select *from 前厅部信息表
create table 客房服务部信息表
(部门编号 char(30)constraint fk_K_部门编号 foreign key references 人事部成员信息表(部门编号),
客房服务区间 char(30)primary key,
姓名 char(30),
性别 char(20)check(性别='女'),
年龄 char(30),
联系方式 char(30))
insert into 客房服务部信息表(部门编号,客房服务区间,姓名,性别,年龄,联系方式)
select'005','0001-0030','张芸','女','23','15735180012'
union
select'005','0031-0060','刘慧','女','23','15735180013'
union
select'005','0061-0090','赵丽','女','24','15735180014'
union
select'005','0091-0120','原圆圆','女','22','15735180015'
select *from 客房服务部信息表
create table 客户信息表
(客户编号 char(30)primary key,
接待员编号 char(20)constraint fk_接待员编号 foreign key references 前厅部信息表(接待员编号),
姓名 char(20),
性别 char(30)check(性别='男'or 性别='女'),
年龄 char(20),
房间号 char(20),
客房服务区间 char(30)constraint fk_客房服务区间 foreign key references 客房服务部信息表(客房服务区
间),
身份证证件号 char(30)
)
insert into 客户信息表(客户编号,接待员编号,姓名,性别,年龄,房间号,身份证证件号)
select'00001','J1','阿大','男','24','0001','14051103690001'
union
select'00002','J1','阿二','男','35','0006','14051103690002'
union
select'00003','J1','阿三','男','32','0011','14051103690003'
union
select'00004','J2','阿四','女','26','0065','14051103690004'
select *from 客户信息表
create table 仓储部信息表
(部门编号 char(30)constraint fk_C_部门编号 foreign key references 人事部成员信息表(部门编号),
管理员编号 char(30)primary key,
姓名 char(30),
性别 char(30)check(性别='男'or 性别='女'),
年龄 char(30),
联系方式 char(40))
insert into 仓储部信息表(部门编号,管理员编号,姓名,性别,年龄,联系方式)
select'003','G1','王一','男','26','15735180016'
union
select'003','G2','王二','男','25','15735180017'
union
select'003','G3','王三','男','25','15735180018'
select *from 仓储部信息表
create table 物资流动信息表
(顺序 char(20)primary key,
部门编号 char(30)constraint fk_W_部门编号 foreign key references 人事部成员信息表(部门编号),
申请日期 datetime null,
申请人 char(20)null,
管理员编号 char(30)constraint fk_管理员编号 foreign key references 仓储部信息表(管理员编号),
管理员 char(30)null)
insert into 物资流动信息表(顺序,部门编号,申请日期,申请人,管理员编号,管理员)
select'1','005','2016-06-15','杨一','G1','王一'
union
select'2','007','2016-06-15','赵一','G1','王一'
union
select'3','006','2016-06-17','原一','G2','王二'
union
select'4','005','2016-06-22','杨一','G3','王三'
select *from 物资流动信息表
create table 工程部信息表
(部门编号 char(30)constraint fk_G_部门编号 foreign key references 人事部成员信息表(部门编号),
维修员编号 char(30)primary key,
姓名 char(30),
性别 char(30)check(性别='男'or 性别='女'),
年龄 char(30),
联系方式 char(40))
insert into 工程部信息表(部门编号,维修员编号,姓名,性别,年龄,联系方式)
select'007','W1','张三','男','25','15735180019'
union
select'007','W2','袁天','男','26','15735180020'
union
select'007','W3','秦宇','男','23','15735180021'
union
select'007','W4','秦云','男','22','15735180022'
select *from 工程部信息表
create table 餐饮部信息表
(部门编号 char(30)constraint fk_CY_部门编号 foreign key references 人事部成员信息表(部门编号),
厨师分组编号 char(30)primary key,
客房服务区间 char(30)constraint fk_CY_客房服务区间 foreign key references 客房服务部信息表(客房服务区
间),
姓名 char(30),
性别 char(30)check(性别='男'or 性别='女'),
年龄 char(30),
联系方式 char(40))
insert into 餐饮部信息表(部门编号,厨师分组编号,客房服务区间,姓名,性别,年龄,联系方式)
select'006','C1','0001-0030','赵天','男','28','15735180023'
union
select'006','C2','0031-0060','刘云','男','31','15735180024'
union
select'006','C3','0061-0090','赵钰','女','27','15735180025'
union
select'006','C4','0091-0120','秦雨','男','28','15735180026'
select *from 餐饮部信息表
实 验 结 果 及 分 析:
1 人事部信息表
2 财务部信息表
3 前厅部信息表
4 客房服务部信息表
5 客户信息表
6 仓储部信息表
7 物资流动信息表
8 工程部信息表
9 餐饮部信息表
10 数据库关系图