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

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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

实验一数据库的建立

实验目的:掌握数据库的创建、基本表的创建和数据插入的方法

实验要求:使用Oracle 11g进行数据库的创建、基本表的创建和数据插入

实验条件:计算机,Oracle 11g

实验内容:

1、假设你是DBA,需要定义系统中的所有表。试根据下面给出的关系模式,用SQL

完成数据表的建立。

假设“阿里巴巴”酒店数据库中有如下的几个关系模式:

(1)客户个人信息(身份证号,姓名,性别,年龄,工作单位)

(2)客户入住信息(身份证号,客房号,入住时间,退房时间)

(3)客房(客房号,客房类型号)

(4)定价(客房类型号,客房类型名,单价)

(5)订票(身份证号,机票号,订票时间)

(6)机票(机票号,起始地,目的地,起飞时间,到达时间,机票价格,机票状态,航空公司号)

注:机票状态只有三种 0:未出票

1:已出票,但未被客户取走

2:已出票且已被客户取走

(7)航空公司(航空公司号,航空公司名,电话)

(8)雇员(雇员号,姓名,雇员年龄,雇佣日期,被投诉次数)

(9)打扫(雇员号,客房号)

说明:数据库表中各个字段的数据类型及宽度,请根据实际情况自定。数据库名、表名、字段名中英文均可,但需要有一定的实际含义。

2、试根据下面的完整性约束要求,用SQL对上面已经建立好的“阿里巴巴”酒店

数据库表进行完整性约束定义。

(1)雇员的年龄必须大于20岁小于55岁,被投诉次数不能超过10次。

(2)客户的性别只能是“男”或“女”。

(3)客户每次入住的客房号和入住时间不能为空。

(4)各种类型客房的定价不得低于100元,也不得高于2000元。(5)机票的状态只能有三种:0:未出票

1:已出票,但未被客户取走

2:已出票且已被客户取走

实验二数据库的查询、更新

实验目的:掌握数据库的查询、更新的方法

实验要求:使用Oracle 11g实现数据库的查询、更新操作

实验条件:计算机,Oracle 11g

实验内容:

1、试用SQL完成下面10个查询操作。

(1)查询各客户的姓名和工作单位。

(2)查询“张桦”客户的身份证号和年龄。

(3)查询标准房的价格。

(4)查询“李明”先生所住的客房号码及入住的时间。

(5)查询“张桦”先生所订客房的价格。

(6)查询还有哪些机票已经出票但未被取走。

(7)查询被投诉的雇员的姓名及次数。

(8)查询各雇员姓名及所负责打扫的客房号。

(9)查询“张庭”雇员负责打扫的客房的号码。

(10)查询各航空公司的名称和电话。

2、试用SQL完成下面6个查询操作。

(1)查询空标准房的房间号。

(2)查询身份证号为“”客户最近入住酒店的日期是什么,住了几天。

(3)查询空双人房的数目。

(4)哪些机票已出票,但还未被取走,查询订购这些机票的房客姓名和客房号,以便及时通知他们来取票。

(5)查询从未订过机票的客户的数目。

(6)查询总共从东方航空公司(EASTERN AIRLINES)订购了多少张机票。3、试用SQL完成如下的更新操作

(1)酒店新进了一名打扫客房的雇员,其雇员号为“E110”,姓名是“张新”,雇佣日期为“7/20/2007”,试将该雇员的信息插入相应的表。

(2)身份证号为“”,姓名是“张明”,年龄为35岁的男客户到酒店订了一间客房号为“1100”的客房,请对相应的表进行相应的操作。

(3)身份证号为“”的客户退房了,请对相应的表进行相应的操作。

(4)将“E101”雇员的投诉次数加1。

(5)酒店欲解雇被投诉次数大于5次的雇员,试对相应的表进行相应的操作。

实验三视图、存储过程的使用

实验目的:掌握数据库视图、存储过程的创建、修改和删除的方法

实验要求:使用Oracle 11g实现数据库视图、存储过程的创建和使用

实验条件:计算机,Oracle 11g

实验内容:

该实验用学生借书数据库XSBOOK,学生借书数据库相关信息如下:

数据库名:XSBOOK

数据文件名:XSBOOK

日志文件名:XSBOOK _Log

图书借阅系统的数据库为 XSBOOK,该数据库主要由学生(XS)、图书(BOOK)、借阅(JY)3个表构成,依托3个基本表创建视图和存储过程。

表1 学生信息表(XS)表结构

表2 学生信息表(XS)样本数据

表3 图书信息表(BOOK)结构

表4 图书信息表(BOOK)样本数据

表5 借阅表(JY)结构

表6 借阅表(JY)样本数据

1、视图的创建和使用

(1)把3个基本表联系起来,方便需要3表关联的功能使用。

SQL命令如下:

CREATE VIEW RBL

AS

SELECT XS.借书证号, JY.索书号, JY.ISBN, BOOK.书名,

BOOK.出版社,BOOK.价格, JY.借书时间

FROM XS

INNER JOIN JY ON XS.借书证号=JY.借书证号

INNER JOIN BOOK ON BOOK.ISBN=JY.ISBN

(2)功能测试

SELECT * FROM RBL

观察3表关联的字段数据正确性。

2、存储过程的创建和使用

参数

借书证号(in_ReaderID)、ISBN(in_ISBN)、图书ID(in_BookID)、执行信息(out_str)。

相关文档
最新文档