Oracle实验指导书114.docx
《Oracle实验指导书114.docx》由会员分享,可在线阅读,更多相关《Oracle实验指导书114.docx(17页珍藏版)》请在冰点文库上搜索。
Oracle实验指导书114
《Oracle数据库管理系统》
实验指导书
学号:
姓名:
班级:
专业:
2012年月日
实验一Oracle10g的安装及常用工具的使用
一、实验目的
1.掌握Oracle10g的安装过程及选项意义
2.掌握SQL*Plus语言环境
3.掌握SQL*Plus工具的使用
4.掌握iSQL*Plus工具的使用
5.掌握Oracle企业管理器的使用
二、实验内容
1.安装Oracle10g。
2.检查“所有程序”菜单中的项目:
选择“开始”→“程序”→“Oracle-OraDb10g_Home1”。
3.检查安装后的服务。
4.使用SQL*Plus建立与Oracle服务器的连接。
(1)选择“开始”→“程序”→“Oracle-OraDb10-home1”→“ApplicationDevelopment”→“SQLPlus”。
(2)输入用户名和口令。
主机字符串若为已配置的网络服务名,则表示连接网络服务名指定的服务器;如果为空,则表示连接本机的默认数据库。
点击【确定】按钮,出现“连接成功”窗口。
(3)此时可以使用SQL*Plus执行各种SQL语句,访问Oracle数据库的信息。
5.使用iSQL*Plus建立与Oracle服务器的连接。
6.熟悉Oracle企业管理器控制台,通过图形化的方式了解Oracle数据库的基本信息,使用企业管理器控制台执行各项任务,如管理Oracle实例、表空间、用户帐号、各种数据对象等。
用户以管理员身份登录到Oracle数据库。
三、实验环境:
安装WindowsXP(WindowsServer2003)以及Oracle10g的主机。
四、实验要求
1.预习实验内容并写出上机报告。
2.实验中出现的问题及实验体会。
实验二Oracle数据库的创建与管理
一、实验目的
利用OEM图形化工具和命令行方式完成管理表空间的实验。
1.创建表空间。
2.更改表空间状态。
3.查看表空间。
4.掌握DBCA创建数据库的步骤和方法。
5.使用OEM查看数据库信息。
6.通过练习深入理解Oracle数据库的体系结构。
二、实验内容
1.创建本地管理表空间APP,大小为50MB,本地管理,自动分配。
2.增加一个20MB的数据文件APP1,其中文件初始大小为10MB,可以重写,文件不能增大。
3.更改表空间状态。
(1)使表空间脱机。
(2)使表空间联机。
(3)更改表空间为只读。
(4)更改表空间为可读/写。
4.更改数据文件状态。
(1)使数据文件脱机。
(2)使数据文件联机。
(3)修改数据文件:
文件可以自动增大,“增量”设置为2MB,“最大文件大小”设置为30MB。
5.查看表空间APP的信息。
6.利用DBCA创建数据库。
7.使用Oracle企业管理器控制台OEM查看数据库信息。
8.查看数据库包含的所有段类型(提示:
selectdistinctsegment_typefromdba_segments;)。
9.(选做)利用命令行方式完成上述1、2、6、7、内容。
三、实验环境:
安装WindowsXP(WindowsServer2003)以及Oracle10g的主机。
四、实验要求1.预习实验内容并写出上机报告。
2.实验中出现的问题及实验体会。
实验三Oracle数据表的创建与管理
一、实验目的
1.了解表的基本概念
2.了解创建表的基本命令的用法
3.了解基本的数据类型
4.学会使用OEM和命令行方式创建表
5.学会设置简单的约束条件
二、实验内容
1.在创建的数据库中创建学生信息表“student”。
student表
字段名称
类型
长度
约束
说明
Sno
Varchar2
10
主键
学生编号
Sname
Varchar2
8
不允许为空
学生姓名
Ssex
Varchar2
2
学生性别
(1)在OEM中创建student表,并设置各项约束。
(2)使用命令CREATETABLE方式创建student表。
2.课程信息表“course”。
Course表
字段名称
类型
长度
约束
说明
Cno
Varchar2
6
主键
课程编号
Cname
Varchar2
50
不允许为空
课程名称
Cmemo
Varchar2
200
课程说明
(1)在OEM中创建course表并设置各项约束。
(2)使用命令CREATETABLE方式创建course。
3.成绩信息表“score”。
Score表
字段名称
类型
长度
约束
说明
Sno
Varchar2
10
Student表的外键
学生编号
Cno
Varchar2
6
Course表的外键
课程编号
Sscore
Number
4,2
成绩
(1)在OEM中创建score表并设置各项约束。
(2)使用命令CREATETABLE方式创建sscore。
3.自己安装PL/SQLDEVELOPER并利用该软件为上述两个表各添加10条记录,记录内容自己确定。
三、实验环境:
安装WindowsXP(WindowsServer2003)以及Oracle10g的主机。
四、实验要求
1.预习实验内容并写出上机报告。
2.实验中出现的问题及实验体会。
实验四管理数据库对象
一、实验目的
1.掌握在OEM中创建视图和维护视图的方法。
2.掌握在命令方式下创建视图和维护视图的方法。
3.掌握序列的概念和使用方法。
4.掌握同义词的概念和使用方法。
5.掌握索引的概念和使用方法。
二、实验内容
1.创建考生成绩视图。
为了方便查看学生的成绩,创建一个学生的成绩视图。
该视图将显示学生的编号、姓名课程号、课程名称和成绩。
基表为student、course、score。
4.创建索引。
创建sname字段的一个索引,索引名称为studentname_index并查询它的基本信息,以此表明该索引确实被创建。
通过查询user_indexes视图可以查到名为studentname_index的索引。
5.查询索引的信息。
6.删除索引。
7.创建序列。
创建一个初始值为1000,增量为10,直到该序列达到1100,然后重新从1000开始的递增序列studentno。
8.修改序列。
修改序列studentno的增量为20,并且设置最大值为10000。
9.使用序列。
使用序列可以通过访问NEXTVAL和CURRVAL伪列来实现。
NEXTVAL伪列返回序列的下一个值,CURRVAL伪列返回序列的当前值。
向student表添加新的一列sorder,并向student表中添加新的一行,内容自定,添加完成后,查看结果。
10.删除序列。
删除序列studentno。
11.创建同义词。
创建表student的同义词。
创建学生成绩视图的公用同义词。
步骤提示:
具有CREATEPUBLICSYNONYM权限的用户才能创建公用同义词。
12.查看同义词。
查询表student对象的公用同义词。
13.删除同义词。
删除创建的同义词。
14.(选做)利用命令行方式实现上述1、2、3、4、6、7、10、11、12、13题的内容。
三、实验环境:
安装WindowsXP(WindowsServer2003)以及Oracle10g的主机。
四、实验要求
1.预习实验内容并写出上机报告。
2.实验中出现的问题及实验体会。
实验五、六数据查询
一、实验目的
1.掌握SELECT语句的基本语法。
2.掌握数据汇总的方法。
3.掌握常用函数的基本语法。
4.掌握使用函数进行数据统计的方法。
二、实验内容
1、将scott的数据备份文件复制到d:
\
2、在命令窗口执行impscott/tigerfile=d:
\scott.dmpignore=y,将scott的备份数据导入数据库中
3、列出参加考试的所有同学信息
4、列出考试的所有课程
5、在查找出自己各科的成绩
6、查出自己的平均成绩和总成绩
7、查出本班的成绩,要求查询结果中有姓名和课程名称。
8、列出本班各课程的平均成绩
9、列出本班男生和女生的各科平均成绩
10、列出不及格的同学名单
11、列出本班各科的最低成绩
12、统计本校男女生的人数
13、统计各部门的学生人数
14、统计各部门的男女生人数
15、统计各班的男女生人数
三、实验环境:
安装WindowsXP(WindowsServer2003)以及Oracle10g的主机。
四、实验要求
1.预习实验内容并写出上机报告。
2.实验中出现的问题及实验体会。
实验七数据更新
一、实验目的
1.学会使用SQL语句对数据表进行数据的插入、修改和删除操作
2.掌握在进行数据更新时数据的完整性的控制方法
3.掌握利用SQL语句对数据表进行灵活控制的方法
二、实验内容
利用上次课所建的数据库及表,完成下列题目要求:
1.利用INSERT命令向course表中插入10条记录。
2.利用INSERT命令向student表中插入30条记录。
4.修改自己成绩表中的数据,并查询数据的变化。
5.将自己每门课的成绩小于85分的增加15分。
6.删除自己的成绩
7.复习SQL语言,录活掌握select、insert、update、delete命令的使用。
三、实验环境:
安装WindowsXP(WindowsServer2003)以及Oracle10g的主机。
四、实验要求
1.预习实验内容并写出上机报告。
2.实验中出现的问题及实验体会。
实验八PL/SQL语言基础
一、实验目的
1.掌握PL/SQL块语句及语法规则。
2.掌握PL/SQL数据类型。
3.掌握条件分支语句和CASE语句。
4.掌握基本循环语句。
二、实验内容
1、将scott的数据备份文件复制到d:
\。
2、在命令窗口执行impscott/tigerfile=d:
\scott.dmpignore=y,将scott的备份数据导入数据库中。
3.使用SQL*Plus替代变量输入班级编号,删除该班级的所有考试信息,并处理可能出现的错误。
如果成功删除,则显示“该班级成绩被删除”;如果该部门不存在,则显示消息“班级不存在”。
4.编写PL/SQL块,使用SQL*Plus替代变量输入学生姓名,删除该学生的信息(使用SCOTT用户的student表和score表。
)
步骤提示:
(1)使用SQL*Plus替代变量在student表中输入员工名称。
(2)使用%ROWTYPE为student表定义记录变量,并使用该变量为记录成员提供数据,为student表插入数据。
5.为成绩小于60分的学生成绩进行开方乘以10,并查询修改结果。
选做:
5.分别使用三种循环方式计算10的阶乘。
6.使用FOR循环语句输出一个实心三角形。
三、实验环境:
Oracle10g与安装有XP服务器以上版本的主机。
四、实验要求
1.预习实验内容并写出上机报告。
2.实验中出现的问题及实验体会。
实验九、十游标、包、异常处理
一、实验目的
1.掌握程序控制结构、复合类型和异常处理操作。
2.掌握游标操作。
3.掌握包的创建及初始化操作。
二、实验内容
1.编写PL/SQL块,使用SQL*Plus替代变量输入员工名称,删除该员工所在部门的员工的信息,并使用SQL游标属性确定删除了几行。
(使用SCOTT用户的EMP表和DEPT表。
)
步骤提示:
(1)使用SQL*Plus替代变量在emp表中输入员工名称。
(2)使用%ROWTYPE为emp表定义记录变量,并使用该变量为记录成员提供数据,为emp表插入数据。
2.使用记录类型、%ROWTYPE和游标查询emp表中员工编号为“1002”的员工姓名。
3.使用表和数组类型在屏幕上显示指定信息:
HelloJack,
Howareyou?
4.先将员工编号为“1002”的员工姓名改为“John”,再利用自定义异常处理来检测该员工姓名。
三、实验环境:
安装WindowsXP(WindowsServer2003)以及Oracle10g的主机。
四、实验要求
1.预习实验内容并写出上机报告。
2.实验中出现的问题及实验体会。
实验十一管理PL/SQL存储过程
一、实验目的
1.掌握编写过程和调用过程的方法。
2.掌握编写函数和调用函数的方法。
3.掌握程序包的编写规范。
4.掌握执行程序包中过程和函数的方法。
二、实验内容
1、将scott的数据备份文件复制到d:
\
2、在命令窗口执行impscott/tigerfile=d:
\scott.dmpignore=y,将scott的备份数据导入数据库中
3、编写一个过程,要求根据用户输入的学号(sno)查询student表,返回学生的姓名和性别(sname和ssex)。
4、编写一个函数,要求根据用户输入的学号查询出学生的成绩,要求要有学生的姓名和课程名称。
5、创建存储过程Pro_update,该存储过程带一个字符型传入参数ssno,修改学生的学号,然后依次实现执行、查看、修改和删除操作。
5.创建函数func_dele,根据输入的学号删除学生的所有信息,并依次实现执行、查看、修改和删除操作。
三、实验环境:
Oracle10g与安装有XP服务器以上版本的主机。
四、实验要求
1.预习实验内容并写出上机报告。
2.实验中出现的问题及实验体会。
实验十二管理PL/SQL触发器
一、实验目的
1.掌握触发器的原理。
2.掌握语句级触发器的编写方法及测试方法。
3.掌握行级触发器的编写方法及测试方法。
4.掌握替代触发器的编写方法及测试方法。
5.掌握DDL触发器的编写方法及测试方法。
6.掌握数据库级触发器的编写方法及测试方法。
二、实验内容
1、将scott的数据备份文件复制到d:
\
2、在命令窗口执行impscott/tigerfile=d:
\scott.dmpignore=y,将scott的备份数据导入数据库中
3、创建级触发器,在student表中删除某一学生信息时,删除该学生的相关成绩信息。
(1)建立触发器。
(2)测试触发器。
选做:
4.创建DDL触发器,记录当前用户下创建对象的信息。
5.创建数据库级触发器,记录数据库发生错误的信息。
三、实验环境:
安装WindowsXP(WindowsServer2003)以及Oracle10g的主机。
四、实验要求
1.预习实验内容并写出上机报告。
2.实验中出现的问题及实验体会。
实验十三用户的创建、更改和删除
一、实验目的和要求:
1.掌握创建和修改数据库用户的命令和使用方法。
2.掌握创建和修改数据库角色的命令和使用方法。
3.掌握授予和撤消角色权限的命令和使用方法。
4.熟练掌握采用企业管理控制台和命令行方式管理用户、角色、概要文件、权限的方法。
二、实验内容:
1.创建用户student,口令为student123,给用户student授权。
(1)以Oracle系统用户SYSTEM登录。
(2)创建用户student。
(3)给用户student授予连接数据库的权限。
(4)以student帐户连接数据库。
2.更改用户密码。
(1)以Oracle系统用户SYSTEM登录。
(2)更改用户student的密码为stu123456。
(3)用户student以新密码连接数据库。
3.授权:
给用户student授予SCOTT用户emp表的查看、更新权限。
(1)以emp表拥有者用户SCOTT登录。
(2)授予对象权限。
(3)尝试以用户student查看、更新course表。
4.收回权限:
收回用户student对SCOTT用户course表的查看、更新权限。
(1)以course表拥有者用户SCOTT登录。
(2)收回对象权限。
(3)再次尝试以用户student查看、更新emp表。
5.删除用户student。
(1)以Oracle系统用户SYSTEM登录。
(2)删除用户student。
6.手工创建数据库用户teacher,用户密码teacher123,默认表空间users,临时表空间temp,在users表空间可使用的限额为20MB。
7.手工修改数据库用户的空间配额为10MB,更改用户teacher的默认表空间users1,修改用户teacher的口令,修改用户的状态,锁定teacher帐户,然后解除锁定。
8.创建数据库角色manager,口令为manager123。
9.修改数据库角色manager,取消口令。
10.将创建表的权限授予数据库角色manager。
11.将创建表的权限从数据库角色manager撤消。
12.利用企业管理控制台和命令行两种方式创建一个概要文件user_pro,要求:
(1)空闲时间为15分钟;
(2)登录失败次数为3次。
13.利用企业管理控制台和命令行两种方式创建一个新的用户,要求:
(1)你的姓名加上学号为用户名创建一个用户;
(2)使用USER表空间;
(3)使用所建概要文件;
(4)查询所创建的用户。
14.利用企业管理控制台和命令行两种方式给已创建的新用户授权。
(1)授予connect角色;
(2)授予一些系统权限;
(3)授予一些对象权限。
15.利用企业管理控制台和命令行两种方式创建一个新的角色,要求:
(1)以姓名加上学号为角色名创建一个角色,并使用名字的汉语拼音作为口令;
(2)修改创建的角色,去掉口令;
(3)给角色授予权限;
(4)将角色授予用户。
注意:
在操作过程中,利用第二种方式完成操作时,需将利用第一种方式创建的对象删除。
三、实验环境:
Oracle10g与安装有XP服务器以上版本的主机。
四、实验要求:
1.预习实验内容并写出上机报告。
2.实验中出现的问题及实验体会。
实验十四数据库安全性
一、实验目的
1.理解事务和锁。
2.掌握使用OEM方式创建和管理重做日志组和日志文件的方法。
3.掌握使用OEM方式创建和管理回滚段的方法。
4.理解数据库备份与恢复的分类。
5.掌握使用OEM方式和命令行方式实现数据库逻辑备份与恢复的方法。
二、实验内容
1.修改student表中自己学号,将最后两位变为“99”,姓名最后增加一个字“改”,并提交。
查询修改结果。
3.查看系统锁信息。
4.创建重做日志组和日志文件“MyLog.log”。
5.创建回滚段“MyRoleBack”。
6.为WindowsXP(或2000Server)管理员授予批处理作业权限。
7.将管理员设置成“studentdata”数据库的首选身份证明,并指定其作用于“数据库实例”目标类型。
8.将“studentdata”数据库中的学生表备份到该数据库的数据文件路径下,备份文件名为“MyBak.dmp”。
9.将“studentdata”数据库中的course表导出到备份文件“C:
\NewBak.dmp”。
10、删除course表中的部分数据。
11.使用备份文件“C:
\NewBak.dmp”恢复“studentdata”数据库中的course表。
三、实验环境:
安装WindowsXP(WindowsServer2003)以及Oracle10g的主机。
四、实验要求
1.预习实验内容并写出上机报告。
2.实验中出现的问题及实验体会。