实验指导书《大型数据库Oracle》.docx

上传人:b****5 文档编号:15206736 上传时间:2023-07-02 格式:DOCX 页数:16 大小:22.38KB
下载 相关 举报
实验指导书《大型数据库Oracle》.docx_第1页
第1页 / 共16页
实验指导书《大型数据库Oracle》.docx_第2页
第2页 / 共16页
实验指导书《大型数据库Oracle》.docx_第3页
第3页 / 共16页
实验指导书《大型数据库Oracle》.docx_第4页
第4页 / 共16页
实验指导书《大型数据库Oracle》.docx_第5页
第5页 / 共16页
实验指导书《大型数据库Oracle》.docx_第6页
第6页 / 共16页
实验指导书《大型数据库Oracle》.docx_第7页
第7页 / 共16页
实验指导书《大型数据库Oracle》.docx_第8页
第8页 / 共16页
实验指导书《大型数据库Oracle》.docx_第9页
第9页 / 共16页
实验指导书《大型数据库Oracle》.docx_第10页
第10页 / 共16页
实验指导书《大型数据库Oracle》.docx_第11页
第11页 / 共16页
实验指导书《大型数据库Oracle》.docx_第12页
第12页 / 共16页
实验指导书《大型数据库Oracle》.docx_第13页
第13页 / 共16页
实验指导书《大型数据库Oracle》.docx_第14页
第14页 / 共16页
实验指导书《大型数据库Oracle》.docx_第15页
第15页 / 共16页
实验指导书《大型数据库Oracle》.docx_第16页
第16页 / 共16页
亲,该文档总共16页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

实验指导书《大型数据库Oracle》.docx

《实验指导书《大型数据库Oracle》.docx》由会员分享,可在线阅读,更多相关《实验指导书《大型数据库Oracle》.docx(16页珍藏版)》请在冰点文库上搜索。

实验指导书《大型数据库Oracle》.docx

实验指导书《大型数据库Oracle》

 

大型数据库(Oracle)

实验指导

 

指导老师:

郭景娟

适用班级:

信B1071/72

 

2011年8月25日制定

实验一Oracle安装与维护

一、实验目的

1.了解并掌握Oracle10的安装方法

2.了解并掌握测试安装好的Oracle10g的方法

二、实验内容及步骤

1.软件下载

Oracle公司针对个人学习之用提供免费的学习版本,可直接到Oracle公司的官方网站上免费下载。

2.安装步骤

(1)运行setup.exe,出现“OracleDatabase10g安装”画面。

(2)“下一步”进入“OracleUniversalInstaller:

指定文件位置”,设置源“路径”、“名称”和目的“路径”。

(3)“下一步”进入“OracleUniversalInstaller:

选择安装类型”,选择安装类型。

(4)保持默认值,下一步,进入“OracleUniversalInstaller:

选择数据库配置”,选择数据库配置。

(5)保持默认值,下一步,进入“OracleUniversalInstaller:

指定数据库配置选项”,指定“全局数据库名”和“SID”,对这两个参数的指定一般相同,例如:

oract。

也可以将“全局数据库名”设置为域名。

例如:

如果选择“创建带样本方案的数据库,OUI会在数据库中创建HR、OE、SH等范例方案(sampleschema)

(6)下一步,进入“OracleUniversalInstaller:

选择数据库管理选项”。

(7)保持默认值,下一步,进入“OracleUniversalInstaller:

指定数据库文件存储选项”。

(8)保持默认值,下一步,进入“OracleUniversalInstaller:

指定备份和恢复选项”。

(9)保持默认值,单击“下一步”,进入“OracleUniversalInstaller:

指定数据库方案的口令”,对不同的帐户设置不同的口令。

(10)单击“下一步”,继续安装,进入“OracleUniversalInstaller:

概要”。

(11)单击“安装”,开始安装过程,大约半小时。

(12)数据库创建完成时,显示“DatabaseConfigurationAssistant”窗口。

(13)单击“口令管理”,进入“口令管理”窗口。

(14)解锁用户HR、OE和SCOTT,输入HR和OE的口令,SCOTT的默认口令为tiger。

(15)单击“确定”返回“DatabaseConfigurationAssistant”窗口。

(16)在图15所示窗口单击“确定”,进入“OracleUniversalInstaller:

安装结束”窗口。

(17)检查,单击“退出”,完成安装。

(18)在自动打开的浏览器中以sys账户sysdba身份登录10g的企业管理器。

第一次要接受license,单击Iagree,以后就不用了。

3.测试安装好的Oracle10g

在安装过程中,OUI会在\install下创建两个文件:

readme.txt:

记录各种Oracle应用程序的URL与端口。

Portlist.ini:

记录Oracle应用程序所使用的端口。

(1)登录EnterpriseManager10gDatabaseControl

与以前的版本不同,Oracle企业管理器只有B/S模式。

在浏览器中输入下列URL:

http:

//:

1158/em

例如:

http:

//localhost:

1158/em

进入EnterpriseManager10g登录窗口。

以SYSDBA身份登录Oracle数据库。

(2)使用iSQL*Pls登录Oracle数据库

iSQL*Plus是B/S模式的客户端工具。

在Mydb浏览器中输入下列URL:

http:

//:

5560/isqlplus

例如:

http:

//localhost:

5560/isqlplus

进入iSQL*Plus登录窗口。

用system帐户登录Oracle数据库。

(3)使用SQL*Pls登录Oracle数据库

SQL*Plus是C/S模式的客户端工具程序。

单击“开始”>“所有程序”>“Oracle–Oracle10g_home”>“ApplicationDevelopment”>“SQL*Plus”

在登录窗口中输入system帐号与口令

(4)使用命令行SQL*Pls登录Oracle数据库

传统的SQL*Plus是一个命令行客户端程序。

在命令窗口中输入命令进行测试。

思考与练习:

在Windows操作系统下安装Oracle10g数据库以后,计算机的运行速度明显降低,可以采取哪些措施应对。

实验二创建数据库和表

一、实验目的

1.掌握使用DBCA创建数据库

2.掌握创建数据表的方法

二、实验内容及步骤

1.使用DBCA创建数据库

(1)打开DBCA组件,创建数据库sale.

(2)安装完后进入E:

\oracle\product\10.2.0\db_1\install目录,打开readme文件,查看打开OEM的URL。

(3)登陆OEM,管理sale数据库。

2.在ORCL数据库中创建表Employees、表Departments和表Salary,表结构如表1,2,3所示。

(1)使用SQL语句分别创建表

 

表1employees表结构

列名

数据类型

长度

是否允许为空

说明

employeeID

VarChar2

6

员工编号,主键

Name

VarChar2

10

姓名

Birthday

Date

8

出生日期

Sex

VarChar2

2

性别

Address

VarChar2

20

地址

Zip

VarChar2

6

邮编

Phone

VarChar2

12

电话号码

Email

VarChar2

30

电子邮件

departmentid

VarChar2

3

员工部门号,外键

表2departments表结构

列名

数据类型

长度

是否允许为空

说明

departmentID

VarChar2

3

部门编号,主键

depName

VarChar2

20

部门名

note

VarChar2

16

备注

表3salary表结构

列名

数据类型

长度

是否允许为空

说明

employeeID

VarChar2

6

员工编号,主键

income

number

8,2

收入

outcome

number

8,2

支出

 

实验三表数据的插入、修改和删除

一、实验目的

1.掌握修改、删除表的的方法。

2.掌握主键约束、外键约束、唯一约束和检查约束的建立及维护方法。

3.掌握外部表、临时表的使用方法。

4.掌握使用SQL语句对数据库表进行插入、修改和删除数据操作。

二、实验内容及步骤

使用PL/SQL语句,在实验2建立的表Employees、Departments和Salary中插入多行数据记录,然后修改和删除一些记录

1.使用PL/SQL语句分别向表Employees、Departments和Salary中插入如下表所示数据记录。

表1employees表数据

employeeID

Name

Birthday

Sex

departmentid

010001

王平

1981-1-5

1

010002

王燕

1980-3-6

1

010003

韦严平

1979-11-5

2

010021

吴庆红

1984-7-2

3

010031

李方

1980-8-4

4

010005

李明

1985-2-10

5

010041

林一凡

1986-4-1

3

110001

张强

1982-7-8

5

210021

赵琳

1983-9-3

5

表2departments表数据表3salary表数据

departmentID

departmentName

1

办公室

2

人力资源部

3

销售部

4

财务部

5

生产部

employeeID

income

outcome

010001

3000

100

010002

2500

50

010003

3000

50

010021

5000

50

010031

3000

50

010005

2500

50

010041

4500

50

110001

3000

50

210021

1000

50

 

2.使用PL/SQL命令修改各表中的某个记录的字段值。

(1)将表salary中编号为110001的职工收入改为2890;

(2)将表Departments表中生产部的名称修改为生产计划部;

(3)给每个职工增加收入100元。

修改完后使用select语句观察数据的变化。

3.删除所有性别为男的职工的记录。

4.创建约束

(1)在employees表中创建主键约束,主码为employeeID,约束名为pk_employees_employeeID.

(2)创建外键约束,子表employees的departmentID字段参照主表

departments中的departmentID字段,约束名为fk_emp_dep_departtmentID.

(3)创建检查约束,employees表中的sex字段只能输入字符"男"或"女",约束名为ck_sex.

(4)在departments表的departmentName字段上创建唯一约束un_departmentName.

5.修改及删除表

(1)将employees表中的zip字段删除,然后再增加一个字段,字段名为QQ,15位的变长字符型.

(2)将departments表删除.

6.将departments表中的数据以纯文本的形式保存到记事本中,并以逗号分隔,保存文件名为dp.txt,内容如下所示:

1,办公室

2,人力资源部

3,销售部

在oracle中创建dp.txt的外部表,然后用select语句进行简单查询.

7.创建事务临时表ttable保存employees表的临时数据,创建会话临时表保存departments表的临时数据.比较两个表的差别.

注:

方法及命令格式请参照教材第10章,要求保存所有的SQL语句到文本文件形式的脚本中,以备检查。

实验四数据库的查询

一、实验目的

1.掌握SELECT语句的基本语法;

2.掌握子查询的表示;

3.掌握连接查询的表示;

4.掌握数据汇总的方法;

5.掌握层次查询的方法;

6.掌握分析查询的方法。

二、实验内容及步骤

1-4实验数据基于实验二给出的数据库表结构,及实验三给出的表数据。

1.SELECT语句的基本使用

(1)查询每个雇员的所有数据;

(2)查询每个雇员的地址和电话;

(3)查询EmployeeID为010001的雇员的基本信息;

(4)查询Employees表中女雇员的地址和电话,使用AS子句将结果中各列的标题分别指定为地址和电话;

(5)计算每个雇员的实际收入;

(6)找出所有姓王的雇员的部门号;

(7)找出所有收入在2000-3000之间的雇员号码。

2.子查询的使用

(1)查找在财务部工作的雇员的情况;

(2)查找财务部年龄不低于销售部雇员年龄的雇员的姓名。

3.连接查询的使用

(1)查询每个雇员的情况及其薪水情况;

(2)查找财务部收入在2200元以上的雇员姓名及其薪水详情。

4.数据汇总

(1)求各部门的雇员数;

(2)将各雇员的情况按收入由低到高排列;

(3)求财务部雇员的平均收入;

(4)求财务部雇员的平均实际收入;

(5)求财务部雇员的总人数。

5.基于d:

\oracle\product\10.2.0\db_1\RDBMS\ADMIN\scott.sql中的实验数据完成教材P159页第15题。

6.层次查询

基于自行车结构的数据进行层次查询实验,脚本如下:

createtablebicycle

(part_idnumber(5)constraintpk_bicycle_part_idprimarykey,

parent_idnumber(5)constraintfk_bicycle_pidreferencesbicycle(part_id),

part_namevarchar2(30)notnull,

mp_costnumber(9,2),

describevarchar2(30)

);

insertintobicyclevalues(1,null,'自行车',379.28,'装配');

insertintobicyclevalues(2,1,'导向系统',101.11,'制造');

insertintobicyclevalues(3,1,'驱动系统',159.56,'制造');

insertintobicyclevalues(4,1,'其他部分',118.61,'制造和采购');

insertintobicyclevalues(5,2,'车把',37.28,'制造');

insertintobicyclevalues(6,2,'前叉',24.35,'制造');

insertintobicyclevalues(7,2,'前轴',19.67,'制造');

insertintobicyclevalues(8,2,'前轮',19.81,'制造');

insertintobicyclevalues(9,7,'前轴棍',8.16,'制造');

insertintobicyclevalues(10,7,'前轴身',4.82,'制造');

insertintobicyclevalues(11,7,'前轴碗',6.69,'制造');

insertintobicyclevalues(12,10,'前轴管',1.61,'制造');

insertintobicyclevalues(13,10,'前花盘',3.21,'制造');

insertintobicyclevalues(14,3,'脚蹬',18.99,'制造');

insertintobicyclevalues(15,3,'中轴',25.27,'制造');

insertintobicyclevalues(16,3,'链条',21.65,'制造');

insertintobicyclevalues(17,3,'飞轮',29.12,'制造');

insertintobicyclevalues(18,3,'后轴',31.72,'制造');

insertintobicyclevalues(19,3,'后轮',32.81,'制造');

insertintobicyclevalues(20,17,'外套',9.35,'制造');

insertintobicyclevalues(21,17,'平档',5.82,'制造');

insertintobicyclevalues(22,17,'芯子',5.11,'制造');

insertintobicyclevalues(23,17,'千斤',6.56,'制造');

insertintobicyclevalues(24,17,'钢珠',2.28,'采购');

insertintobicyclevalues(25,4,'车架',81.78,'制造');

insertintobicyclevalues(26,4,'车闸',15.26,'制造');

insertintobicyclevalues(27,4,'链罩',7.10,'采购');

insertintobicyclevalues(28,4,'车铃',4.33,'采购');

insertintobicyclevalues(29,4,'车锁',5.02,'采购');

insertintobicyclevalues(30,4,'支架',5.12,'制造');

(1)按自行车结构层次的先后顺序,查询自行车树状结构数据;

(2)查询自行车导向系统分支的树状结构数据;

(3)在自行车树状结构数据中显示成本小于100元的零部件信息;

(4)对自行车的成本进行加密,然后显示出来,加密密钥可任意给定。

7.分析查询

基于某书店2006年的图书销售的数据进行分析查询实验,脚本如下:

createtablesales_fact_2006

(sale_yearnumber(4)notnull,

sale_quarternumber

(1)notnull,

sale_monthnumber

(2)notnull,

sale_book_idvarchar2(20)notnull,

sale_regionvarchar2(10)notnull,

sale_personvarchar2(10)notnull,

sale_amountnumber(10,2)null,

constraintpk_sales_f2006primarykey(

sale_year,sale_quarter,sale_month,sale_book_id,sale_region,sale_person)

);

insertintosales_fact_2006values(2006,1,1,'ISBN7-X','北京','赵亦',13526.12);

insertintosales_fact_2006values(2006,1,2,'ISBN7-X','北京','钱尔',8213.91);

insertintosales_fact_2006values(2006,1,3,'ISBN7-X','北京','孙三',33871.52);

insertintosales_fact_2006values(2006,2,4,'ISBN7-X','北京','李斯',22343.80);

insertintosales_fact_2006values(2006,2,5,'ISBN7-X','上海','周武',3455.93);

insertintosales_fact_2006values(2006,2,6,'ISBN7-X','上海','孙三',23427.72);

insertintosales_fact_2006values(2006,3,7,'ISBN7-X','香港','杨琪',897.15);

insertintosales_fact_2006values(2006,3,8,'ISBN7-X','香港','钱尔',12345);

insertintosales_fact_2006values(2006,3,9,'ISBN7-X','澳门','冯久',37817.12);

insertintosales_fact_2006values(2006,4,10,'ISBN7-X','澳门','冯久',6524.10);

insertintosales_fact_2006values(2006,4,11,'ISBN7-X','台北','李斯',93415.83);

insertintosales_fact_2006values(2006,4,12,'ISBN7-X','台北','孙三',23232.82);

(1)查询每个销售员的销售额,并使用sum()分析函数对每个窗口执行累加运算的分析,窗口范围为当前行及其后两行;

(2)制作一个总计表,表中包括每一个销售人员在每一个销售区域的销售额以及该销售额占该销售区域销售总额的比率;

(3)查询每个销售区域的销售额,并使用rank()函数计算每一行的相对位置。

实验五PL/SQL编程

一、实验目的

1.掌握PL/SQL程序块的结构;

2.掌握时间戳的使用;

3.掌握记录、PL/SQL表的使用;

4.掌握显示游标的使用;

5.掌握异常处理的方法。

二、实验内容及步骤

1.PL/SQL程序块

编写一个程序块,完成10以内偶数的累积。

2.时间戳

(1)显示一个时间戳,精确到纳秒。

(2)创建一个只包含一个数值型字段的表,往表中插入10000条记录,利用时间戳计算所用时间。

3.记录、PL/SQL表

(1)创建一个记录类型保存学生数据,类型名为STUDENT,包含XM,XB,BJ三个变量,然后定义一个该类型的变量STUDENT1,输入学生本个的信息,并输出。

(2)创建一个基类型为字符型的PL/SQL表类型,保存学生的姓名,然后定义一个该类型的变量STUDENT2,输入5名同学的姓名,并输出。

4.显示游标

编写一个程序块,定义一个游标,用于处理EMP表中工资大于1500的员工信息,如果员工的工资在1500到2000之间,则加上200,如果大于2000,则加上100,修改结果保存到EMP表中,并显示输出。

定义处理数据的变量要求用到%type。

注:

关于显示游标,由于教材没有作详细说明,请查阅相关资料或教学课件。

5.异常处理

定义一个自定义异常too_many,当EMP表中的记录条数超过10条时,抛出异常,并输出“员工数量过多!

”的信息。

6.练习教材第9章所示范例

实验六用户、角色

一、实验目的

1.掌握使用用户实现数据库安全性;

2.掌握使用角色实现数据库安全性。

二、实验内容及步骤

1.创建用户

(1)创建一个用户ph,密码为oracle;

(2)授予连接数据库权限、创建表权限,并允许其将权限转授予其它用户;

(3)设置其默认表空间为USERS,并分配20M的配额;

(4)连接到ph账户下,将创建表权限授予SCOTT;

(5)在ph账户下创建表xs,字段为xm,cj;

(6)将xs表的插入数据权限授予SCOTT;

(7)连接到SCOTT账户下,插入一条数据(lucy,80)。

2.创建角色

(1)连

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2