new《数据库原理及应用》实验指导书 下载本文

内容发布更新时间 : 2024/12/23 10:40:46星期一 下面是文章的全部内容请认真阅读。

数据库原理及应用实验指导书

实验四SQL的数据更新(2学时)

1、实验目的

(1) 掌握DBMS的数据查询功能 (2) 掌握SQL语言的数据更新功能

2、实验内容

(1) update 语句用于对表进行更新 (2) delete 语句用于对表进行删除 (3) insert 语句用于对表进行插入

3、实验要求

(1) 熟练掌握SQL的数据更新语句INSERT、UPDATE、DELETE (2) 写出实验报告

4、实验步骤

(1) update 语句用于对表进行更新

例如:将信息系所有学生的年龄增加1岁。 UPDATE Student SET Sage= Sage+1 WHERE Sdept=' IS ' (2) delete 语句用于对表进行删除 例如:删除学号为95019的学生记录。 DELETE

FROM Student

WHERE Sno='95019'

(3) insert 语句用于对表进行插入

例如:插入一条选课记录( '95020','1 ')。 INSERT

INTO SC(Sno,Cno)

VALUES (' 95020 ',' 1 ')

实验五SQL的数据视图(2学时)

1、实验目的

(1) 掌握DBMS的数据查询功能 (2) 掌握SQL语言的视图功能

2、实验内容

(1) 创建表的视图

(2) 利用视图完成表的查询 (3) 删除表的视图

3、实验要求

(1) 掌握视图的定义 (2) 掌握对视图的操作 (3) 写出实验报告

4、实验步骤

(1) 创建表的视图

例如:建立信息系学生的视图。 CREATE VIEW IS_Student AS

17

数据库原理及应用实验指导书

SELECT Sno,Sname,Sage FROM Student WHERE Sdept= 'IS' (2) 利用视图完成表的查询

例如:查询信息系选修了1号课程的学生 SELECT Sno,Sname

FROM IS_Student,SC

WHERE IS_Student.Sno =SC.Sno AND SC.Cno= '1' (3) 删除表的视图

例如:DROP VIEW IS_Student

实验六SQL的数据控制(2学时)

1、实验目的

(1) 掌握DBMS的数据查询功能 (2) 掌握SQL语言的数据控制功能

2、实验内容

(1) 使用grant语句进行授权 (2) 使用revoke语句收回权限

3、实验要求

(1) 了解数据控制的方法 (2) 掌握命令GRANT、REVOKE (3) 写出实验报告

4、实验步骤

(1) 打开企业管理器,点击 新建查询,打开查询分析器,复制如下代码到查询分析器,并执行。 create database S_T; go

use S_T; /*将S_T设为当前数据库*/ create table Student

(Sno CHAR(9) PRIMARY KEY, Sname CHAR(20) UNIQUE, Ssex CHAR(2), Sage SMALLINT, Sdept CHAR(20) ); go

/*表Student的主码为Sno,属性列Sname取唯一值*/ create table Course

(Cno CHAR(4) PRIMARY KEY, Cname CHAR(40), Cpno CHAR(4), Ccredit SMALLINT,

FOREIGN KEY (Cpno) REFERENCES Course(Cno) ); go

/*表Course的主码为Cno,属性列Cpno(先修课)为外码,被参照表为Course,被参照列是Cno*/ create table SC (Sno CHAR(9), Cno CHAR(4), Grade SMALLINT,

18

数据库原理及应用实验指导书

primary key (Sno, Cno),

FOREIGN KEY (Sno) REFERENCES Student(Sno), FOREIGN KEY (Cno) REFERENCES Course(Cno) ); go

/*表SC的主码为(Sno, Cno), Sno和Cno均为外码,被参照表分别为Student和Course,被参照列分别为Student.Sno和Course.Cno*/

insert into student values('200215121','李勇','男',20,'CS'); insert into student values('200215122','刘晨','女',19,'CS'); insert into student values('200215123','王敏','女',18,'MA'); insert into student values('200215125','张立','男',19,'IS'); go

/*为表Student添加数据*/

insert into course values('1', '数据库', NULL,4); insert into course values('2', '数学', NULL,2); insert into course values('3', '信息系统', NULL,4); insert into course values('4', '操作系统', NULL,3); insert into course values('5', '数据结构', NULL,4); insert into course values('6', '数据处理', NULL, 2); insert into course values('7', 'PASCAL语言', NULL,4); go

update Course set Cpno = '5' where Cno = '1'; update Course set Cpno = '1' where Cno = '3'; update Course set Cpno = '6' where Cno = '4'; update Course set Cpno = '7' where Cno = '5'; update Course set Cpno = '6' where Cno = '7'; /*为表Course添加数据*/ go

insert into SC values('200215121', '1',92); insert into SC values('200215121', '2',85); insert into SC values('200215121', '3',88); insert into SC values('200215122', '2',90); insert into SC values('200215122', '3',80); /*为表SC添加数据*/

(2) 单击S_T数据库前面的加号,单击安全性前面的加号,在 用户 文件夹上单击右键选择 新建用户,用户名输入u1 ,登录名处单击右侧的按钮,选择 浏览,选中第一项

[BUILTIN\\Administrators],其它默认,单击确定,再单击确定。创建u1用户成功。注意如果用此方法再创建u2用户时,登录名要换一个,不能再用第一项了。 (3) 使用grant语句进行授权

例如:把查询Student表权限授给用户u1

GRANT SELECT

ON Student

TO u1

使用revoke语句收回权限 例如:把用户u1的权限收回 REVOKE SELECT ON Student FROM u1 cascade

19

数据库原理及应用实验指导书

实验七 数据库设计(4学时) 内容:

通过一个数据库具体设计实例,酒店管理系统掌握数据库设计的方法。 基本要求:

熟练掌握使用SQL语句设计数据库的方法,选取酒店管理系统某一子模块,建设相应子模

块的数据模式,完成实验报告。

酒 店 管 理 系 统

一、背景说明

目前大多数酒店提供的服务多种多样,规模大小也各不相同,但稍具规模的酒店必含下面三类服务:饮食、住宿和娱乐。由于我们对酒店行业没有具体的接触和实质性的了解。此次数据库设计只能在一些收集到的基本材料与个人直观认识的基础上,简单模仿中等规模的酒店设计管理系统,并将其抽象成一个由三部门组成、实现三大服务的系统。

二、部门的划分

1. 饮食部门

它是酒店基本部门之一。它提供服务的特点是实时性强、持续时间短,强调效率。例如,顾客人数、顾客所用的菜及其它饮料等种类繁多,数量不等;后勤各种活动如采购等频繁发生。通过分析可发现,用人工完成此类操作比计算机更具实效与时效,且此类信息也没有长时间保留的必要,因此这些信息没有必要采用数据库管理。对于饮食部门,需要较长时间保留的信息主要是财务信息,一方面便于期末汇总,另一方面便于向上级报告。

在规模较大的酒店餐饮服务部分,餐厅可分成几个等级或几个小部门,然后各自形成小系统,本系统为了简单起见,把饮食部门作为一个子系统,不再细分。

2. 住宿管理部门

它也是酒店基本部门之一。住宿管理部门的主要职责有:A.给个房间布置各种设备、分类、编号、制定收费标准、分配服务人员。B.登记旅客信息,确认其身份,登记其入住、退房时间。C.统计各类房间的客满程度。D.对本部门的财务流动进行登记处理。以上信息处理可以通过计算机完成,其他不便于计算机操作的在此没有列出。

3. 娱乐管理部门

娱乐是酒店非主流服务,它的存在除了赢利,更多的是为了吸引顾客食宿。娱乐部门的特点与饮食部门很相似,不便于使用计算机进行操作。可以用计算机完成并且有必要用计算机完成的有:A.制定收费标准,分配负责人.B.收入支出财务处理:编号、财务来源去处的摘要、数量、单价、数额、结余、经手人等。这些信息都需要长时间保留并上报。

4. 经理部门

经理部门的功能虽然不是面向顾客、不是酒店的服务项之一,但它的存在却是必不可少的。它的主要职责

有:A.管理员工。给员工编号,登记其基本信息;根据员工的平时表现及工龄确定工资;此外,还要给员工分配工作部门及职务等等。B.划分部门。给个部门编号、命名、确定其职责范围、任命部门经理、分配员工。C.对本部门的财务进行核算(支付工资等)。D.期末对酒店的收益情况进行核算。

三、各子系统的功能

虽然酒店按功能可以划分成四个部门,但是饮食部门的大部分工作手工操作比计算机操作更具

20