Oracle数据库实验三
《Oracle数据库》实验报告三

二、实验环境及相关情况(包含使用软件、实验设备、主要仪器及材料等)
1、计算机操作系统要求在 windows XP 以上。 2、并要求 Oracle 10g 软件。
三、实验内容及要求
一、冷备份实验 1、在 users 表空间创建一个测试表,表结构自定。并插入一条数据,并用 commit 命令提交。 2、对表 users 表空间进行冷备份。 3、再对测试表插入一条数据,并用 commit 命令提交。 4、然后删除 users 表空间中的一个数据文件。 5、尝试打开数据库。如果遇到错误,进行数据库恢复。 6、恢复后再次打开数据库,查询测试表中数据。 二、热备份实验 1、设置数据库为归档模式。 2、对测试表添加一行数据,并用 commit 命令提交。 3、对 users 表空间进行热备份。 4、再对测试表插入一条数据,并用 commit 命令提交。
第 5 页 共2 页
五、实验总结(包括心得体会、问题回答及实验改进意见) 这次的实验报告总体来说比较简单,对于冷备份和热备份的知识挺容易理解的。掌 握了概要文件的建立、修改、查看、删除操作,熟悉角色的建立、修改、查看、删除操 作,掌握了各种备份操作方式和各种类型恢复操作。但对于 Rman 备份就掌握不好,没法 将 Rman 备份和冷热备份联系起来,代码的实现也理解不了。课后应该多点上机操作与 Rman 备份相关的知识点。
第 4 页 共2 页
6. recover automatic database;
recover automatic tablespace users; recover automatic drop datafile’e:\oracle\oradata\users.daf; 7. select*from users;
oracle实验报告 金陵科技学院

学生实验报告册(理工类)课程名称:大型数据库技术专业班级:14计算机科学与技术(专转本) 学生学号:学生姓名:所属院部:计算机工程学院指导教师:刘琰2014——20 15学年第 2 学期金陵科技学院教务处制实验报告书写要求实验报告原则上要求学生手写,要求书写工整。
若因课程特点需打印的,要遵照以下字体、字号、间距等的具体要求。
纸张一律采用A4的纸张。
实验报告书写说明实验报告中一至四项内容为必填项,包括实验目的和要求;实验仪器和设备;实验内容与过程;实验结果与分析。
各院部可根据学科特点和实验具体要求增加项目。
填写注意事项(1)细致观察,及时、准确、如实记录。
(2)准确说明,层次清晰。
(3)尽量采用专用术语来说明事物。
(4)外文、符号、公式要准确,应使用统一规定的名词和符号。
(5)应独立完成实验报告的书写,严禁抄袭、复印,一经发现,以零分论处。
实验报告批改说明实验报告的批改要及时、认真、仔细,一律用红色笔批改。
实验报告的批改成绩采用百分制,具体评分标准由各院部自行制定。
实验报告装订要求实验批改完毕后,任课老师将每门课程的每个实验项目的实验报告以自然班为单位、按学号升序排列,装订成册,并附上一份该门课程的实验大纲。
实验项目名称:Oracle数据库安装与配置实验学时: 1实验地点: 1318 实验日期:实验成绩:批改教师:刘琰批改时间:实验1:Oracle数据库安装与配置一、实验目的和要求(1)掌握Oracle数据库服务器的安装与配置。
(2)了解如何检查安装后的数据库服务器产品,验证安装是否成功。
(3)掌握Oracle数据库服务器安装过程中出现的问题的解决方法。
(4)完成Oracle 11g数据库客户端网路服务名的配置。
(5)检查安装后的数据库服务器产品可用性。
(6)解决Oracle数据库服务器安装过程中出现的问题。
二、实验设备、环境设备:奔腾Ⅳ或奔腾Ⅳ以上计算机环境:WINDOWS 7、ORACLE 11g中文版三、实验步骤(1)从Oracle官方网站下载与操作系统匹配的Oracle 11g数据库服务器和客户机安装程序。
《Oracle数据库》实验报告参考模板

河南财经政法大学计算机与信息工程学院
2011年---2012年第一学期
专业:信息管理与信息系统
课程名称:Oracle数据库
班级:
姓名:学号:
指导教师:张巧荣
实验一创建数据库和表
实验二表数据的插入、修改和删除
实验三数据库的查询
实验四数据库的视图
实验五索引和完整性
实验六用户、角色管理
实验七备份和恢复
实验八PL/SQL编程
实验九存储过程和触发器的使用
友情提示:范文可能无法思考和涵盖全面,供参考!最好找专业人士起草或审核后使用,感谢您的下载!。
数据库oracle实验3

实验三数据更新与视图一、实验目的1、掌握数据更新语句的使用;2、掌握视图操作的基本方法和应用,理解基于视图的查询和数据更新操作的过程。
二、实验内容1.在实验一创建的表中使用SQL语句完成以下操作:(1)学生“宾兆琦”要退学,请删除该学生的所有记录。
(2)将姓名为“朱安琪”同学的专业改为“软件工程”。
同时创建转专业记录表change_major,表中包括编号属性列(ID),学号属性列(sno),姓名属性列(sname),转出专业属性列(cbefor),转入专业属性列(cafter)和转专业时间属性列(ctime),在change_major表中插入“朱安琪”同学的转专业信息。
(3)删除选修了“计算机网络”但没有及格的选课记录。
(4)将(106559,路前元,男,汉族,共青团员,1995/11/8,null,null)插入学生关系。
(5)在C表中插入以下元组:“382,数据库原理与应用,3.5,选修,4”,“383,JAVA语言程序设计,4.5,选修,6”(6)创建视图JSJ_VIEW,包括计算机科学与技术专业学生的学号,姓名,其选修的课程名及成绩属性列。
(7)创建查询每个学生的修课学分的视图XF_VIEW,要求列出学生学号及总学分。
(8)在创建的视图中查询李洋洋和李向冲所修的学分数。
2.在实验二创建的表中使用SQL语句完成以下操作:(1)现有一供应商,代码为S9、姓名为英特尔、所在城市西安,供应情况如下:供应零件P5给工程J7数量为600,供应零件P4给工程J4数量为500,请将此供应商的信息和供应信息插入数据库。
(2)请将北京供应商的供应数量加150。
(3)把全部红色零件的颜色改为黑色。
(4)由S5供给J4的零件P6改为由S1供应。
(5)请将(S2,J7,P4,510)插入供应情况关系。
(6)零件P3已经停产,请将P3的相关信息从数据库中删除。
(7)创建零件名为螺丝刀的供应情况的视图P_ls,包括供应商名(Sname),零件名(Pname),零件重量(Weight),工程项目代码(Jno),供应数量(QTY).(8)在视图P_ls中查询供应数量为500的供应商姓名。
《Oracle数据库》实验报告

实验二Oracle数据库开发环境下PL/SQL编程(2学时)【实验目的】(1)掌握PL/SQL 的基本使用方法。
(2)在SQL*PLUS环境下运行PL/SQL的简单程序。
(3)应用PL/SQL 解决实际问题【实验内容与步骤】一、实验内容:1、用PL/SQL实现:输入eno的值,显示emp表中对应记录的内容。
2、用PL/SQL完成:读入三个数,计算并输出它们的平均值及三个数的乘积。
3、对职工表emp中的雇员SCOTT提高奖金,若工种为MANAGER,则奖金提高其原来的20%;若工种为SALESMAN,则奖金提高其原来的15%;若工种为ANALYST,则奖金提高其原来的10%,其它都按原来的7%提高。
4、用PL/SQL块实现下列操作公司为每个职工增加奖金:若职工属于30号部门,则增加$150;若职工属于20号部门,则增加$250;若职工属于10号部门,则增加$350。
(提示:游标请自行阅读相关内容)DECLAREaddcomm m%type;CURSOR emp_cursor IS select deptno from emp;BEGINFOR emprec IN emp_cursor LOOPIF emprec.deptno=30 THEN addcomm:=150;ELSIF emprec.deptno=20 THEN addcomm:=250;ELSIF emprec.deptno=10 THEN addcomm:=350;END IF;Update empset comm=comm+ addcomm where deptno= emprec.deptno;END LOOP;COMMIT WORK;END;实验三PL/SQL触发器和存储过程(2学时)【实验目的】(1)了解触发器的类型。
(2)掌握PL/SQL触发器的使用方法。
(3)了解存储过程的使用方法。
(4)掌握存储过程的使用方法。
【实验内容】实验内容:1、编写一个数据库触发器,当任何时候某个部门从dept表中删除时,该触发器将从emp 表中删除该部门的所有雇员。
oracle实验3

实验报告图1 查询Teacher表的全部字段②输出表中的部分列。
图2 查询全体教师的编号、姓名和职称③计算列并为输出结果中的列指定别名。
图3 带有别名的查询(2)选择表中的若干行,查询满足条件的元组。
图6 确定集合查找图7 模糊查询图10 多重条件查询图11 将查询结果排序(4)对数据进行统计图13 分组统计图14 带有ROLLUP子句的分组统计图15 带有HAVING子句的分组统计 2.连接查询1)交叉连接查询图16 交叉查询(2)内连接查询图18 自连接(3)外连接查询图19 左外连接图22 使用IN谓词的子查询(2)使用比较运算符的子查询图23 使用比较运算符的子查询(3)使用ANY或ALL的子查询图24 使用ANY的子查询图25 使用EXISTS的子查询联合查询图27 使用INTERSECT操作符(3)使用MINUS操作符图28 使用MINUS操作符5.使用SQL *PLUS编辑命令、格式化输出(1)使用SQL *PLUS编辑命令①先查询教师表中所有教师的情况,再追加语句查询姓“张”的教师的情况。
使用“/”来运图31 RUN命令(2)保存、检索并运行文件图 32 保存文件②使用get命令检索8-33.SQL文件的内容。
运行此查询。
或者使用START命令用一个步骤加载并运行8-33.sql文件的内容图34 编辑命令图35 保存输出结果(3)格式化输出列图36 格式化输出结果(4)设置页面大小和行大小图37 设置页面大小图39 设置行大小6.创建、修改和删除索引(1)创建索引①使用命令行创建索引。
图35 索引管理界面图37 创建索引界面图38 索引选项界面 7.创建、修改、删除视图;图39创建简单视图图40创建基于多表的视图图41创建基于视图的视图图42 创建带有检查约束的视图图43 向视图view4插入数据的错误提示图44创建具有read only约束的视图图45 删除视图view1数据时的错误提示图47 查看视图的定义信息图48 为视图添加唯一约束图49 删除约束图50 删除视图图51 视图管理界面图52 创建视图界面图53 查看视图界面8.创建、修改、删除和使用序列(1)创建序列图54 创建序列图55 查看序列信息图58 删除序列图59 创建同义词图60 删除同义词(3)在为视图添加唯一约束时出现ORA-02250;约失条件缺失或无效的问题,原因是书上的格式不对,应该为add constraint 约束名 unique(列名) disable novalidate;。
oracle大型数据库实验报告3

练习:用desc命令查看V$log视图的结构,并试着查询控制文件更详细的信息。
(3)控制文件通过如下方式查看控制文件相关信息:给出运行结果截图:练习:用desc命令查看V$controlfile视图的结构,并试着查询更详细的信息。
(4)参数文件①通过如下方式查看参数文件相关信息:a、show parameter显示服务器参数b、查询试图v$Parameter,可以利用该动态性能视图来确定参数的默认值是否被修改,以及是否可以用alter system和alter session命令修改阅读结果并理解各数据项的含义。
②修改服务器参数a、通过企业管理器(OEM)修改b、使用alter system修改服务器参数。
格式如下:Alter system set parameter =value <commernt =‘text’><feferred><scope=memory|spfile|both><sid=‘sid’|*>Eg:alter system set db_block_size=4096;练习:在%oracle_home%(如D:\app\Administrator\product\11.2.0\dbhome_1\database 或者D:\app\Administrator\product\11.2.0\dbhome_1\srvm\admin)找到名为SPFileSID.ora(如:SPfileorcl.ora)和init.ora的文件,此文件即为参数文件,用记事本或者写字板打开它们,阅读其内容并理解各数据项的作用。
3、Oracle逻辑存储结构(1)查看表空间的名称及大小执行以下语句,并给出运行结果。
(2)查看表空间物理文件的名称及大小执行以下语句,并给出运行结果。
(3)查看回滚段名称及大小执行以下语句,并给出运行结果。
(4)查看所有表空间对应的数据文件名:SQL>select distinct file_name,tablespace_name,AUTOEXTENSIBLEfrom dba_data_files;(5)查看表空间的使用情况:SQL>select sum(bytes)/(1024*1024) as free_space,tablespace_namefrom dba_free_space group by tablespace_name;(6)查看回滚段的使用情况,哪个用户正在使用回滚段的资源:SQL>select ername, from v$transaction t,v$rollstat r,v$rollname u,v$session swhere s.taddr=t.addr and t.xidusn=n and n=n order by ername;4、Oracle内存与进程结构(1)查看sga情况:SQL>SELECT NAME, BYTESFROM SYS.V_$SGASTAT ORDER BY NAME ASC;(2)数据库共享池性能检查:SQL>Select namespace,gets,gethitratio,pins,pinhitratio,reloads,Invalidations from v$librarycachewhere namespace in ('SQLAREA','TABLE/PROCEDURE','BODY','TRIGGER'); (3)检查共享内存的剩余情况:SQL>select request_misses, request_failuresfrom v$shared_pool_reserved;(4)数据高速缓冲区性能检查:SQL>select 1-p.value/(b.value+c.value) "db buffer cache hitratio"from v$sysstat p,v$sysstat b,v$sysstat cWhere ='physical reads' and ='db block gets'and ='consistent gets';(5)查看排序段的性能:SQL>SELECT name, valueFROM v$sysstatWHERE name IN ('sorts (memory)', 'sorts (disk)');(6)查看数据库中某用户,正在运行什么SQL语句SQL>SELECT SQL_TEXTFROM V$SQLTEXT T, V$SESSION SWHERE T.ADDRESS=S.SQL_ADDRESSAND T.HASH_value=S.SQL_HASH_value AND S.MACHINE='XXXXX' OR USERNAME='WACOS';4、其他(1)查看数据库库对象:SQL>select owner, object_type, status, count(*) count# from all_objectsgroup by owner, object_type, status;(2)查看数据库的创建日期和归档方式:SQL>Select Created, Log_Mode From V$Database;5、作业与思考练习题1、现有控制文件的位置及其名称是什么?提示:查询动态性能视图V$CONTROLFILE。
ORACLE实验指导书

ORACLE数据库技术实验指导书ORACLE数据库技术实验指导书目录实验一 SQL*PLUS用法及SQL语言中的简单查询语句实验二 SQL语言中的分组查询和连接查询语句实验三 SQL语言中的子查询及函数的使用实验四 SQL语言中的数据操纵、事务控制和数据定义语句实验五 SQL/PL块中SQL命令的使用实验六 SQL/PL块中流程控制语句、游标、例外处理实验七数据库触发器、存储过程和存储函数实验一 SQL*PLUS用法及SQL语言中的简单查询语句一、实验目的1、熟悉SQL语言交互式使用工具SQL*PLUS的使用方法2、熟悉SQL*PLUS常用命令的功能和使用方法3、掌握SQL语言中简单查询语句的功能和使用方法二、实验环境1、硬件设备:计算机局域网,服务器1台,客户机100台2、软件系统:Windows 2000 Server 网络操作系统,Windows 2000/XP客户机操作系统; Oracle9i服务端数据库系统,客户端工具。
三、实验内容1、SQL*PLUS的使用(1) 进入(启动)SQL*PLUS在Windows环境下,双击SQL*PLUS图标或从程序组找SQL*PLUS ,出现登录窗口输入正确的数据库用户名、密码和连接字符串后,若连接数据库成功,则会出现如下提示符:SQL> (2) 退出 SQL*PLUSSQL>exit则退回到Windows桌面。
(3) 创建表结构:Create table创建部门登记表dept和雇员登记表emp的结构SQL> Create table dept( deptno number(2) not null,dname char(14),loc char(13));SQL> Create table emp( empno number(4) not null,ename char(9),job char(10),mgr number(4),Hiredate date,sal number(7,2),comm number(7,2),deptno number(2) not null );(4) 显示表结构显示部门登记表dept和雇员登记表emp的结构SQL>desc deptSQL> desc emp(5) 向表中插入记录向部门登记表dept中插入一条记录SQL> insert into deptValues (60,…Computer‟,…Beijing‟);SQL> select * from dept;向部门登记表dept中连续插入多条记录SQL> insert into dept (deptno,dname,loc)Values ( &deptno,&dname,&loc); (6) 执行SQL缓冲区中的命令SQL>/ (直接执行)SQL>run (先显示命令的内容,再执行 )(7) 执行磁盘上的命令文件a. 先调入缓冲区,再运行:SQL>get f:\ora\dept.sqlSQL>/b. 用@ 或start命令将指定命令文件调入缓冲区并执行。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
作业三表
一、实验目的
掌握表的操作和管理。
二、实验内容
1、创建基本表
2、利用子查询创建表
3、完整性约束设置
4、表数据的插入和修改、删除
三、实验步骤
前提:以system登录,编写下述题目的sql脚本。
1、创建表t1
字段如下:
empno number(4) not null primary key,
ename varchar2(20) not null,
sex varchar2(1) not null,
birthday date,
salary number(7,2) default(0)
2
3、利用子查询创建表t2
子查询的条件是:性别为男
4、利用子查询创建表t3
要求是:只获取t1的表结构
(此方法为错误方法)
5、完整性约束
查看表t2的约束,请解释与t1相比,缺少了什么?为什么?
select table_name, constraint_type, constraint_name,
search_condition
from user_constraints
where table_name=’T2’
order by table_name, constraint_type;
为表t2增加缺少的约束
6、管理表
创建表author,其字段如下:
id number(3),
name varchar2(20),
sal number(6,2)
为该表增加字段address,类型为varchar2(100)修改该表的sal字段名为salary
为字段salary增加值在0到10000内的约束删除字段address
删除该表
drop table stu2;
create table stu2(
sno varchar(9),
name varchar2(20),
age int,
sex int);
insert into stu2 values (2, '丁二', 22, 0); insert into stu2 values (4, '丁四', 44, 0); insert into stu2 values (6, '丁六', 66, 0);
用子查询的方式将表stu2的数据插入到stu1中
drop table stu2;
create table stu2(
sno varchar(9),
name varchar2(20),
age int,
sex int);
insert into stu2 values (2, '丁二', 22, 0); insert into stu2 values (4, '丁四', 44, 0); insert into stu2 values (6, '丁六', 66, 0); insert into stu2 values (7, '丁七七',17, 1);
分别查看表stu1和stu2的数据,请记住拥有相同sno的数据即条件为where sno=7利用子查询修改表stu1,将其sno=7的数据修改为stu2中sno=7的数据
错误汇总:
ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务(已解决)
先开启Oracle相关的监听器等
Win+R 输入services.msc
在进入sqlplus的时候提示:
ORA-12560: TNS: 协议适配器错误(已解决)
查看了一下,原来是没有设置SID,在命令行下:
set ORACLE_SID=orcl
然后再进入就行了。
在网络上查找了一下,似乎有可能是因为下面的几个原因:
1.监听服务没有起起来。
windows平台个一如下操作:开始---程序---管理工具---服
务,打开服务面板,启动oraclehome92TNSlistener服务。
2.database instance没有起起来。
windows平台如下操作:开始---程序---管理工具---
服务,打开服务面板,启动oracleserviceXXXX,XXXX就是你的database SID.
3.注册表问题。
regedit,然后进入
HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/HOME0将该环境变量ORACLE_SI D设置为XXXX,XXXX就是你的database SID.或者右几我的电脑,属性--高级--环境变量---系统变量--新建
,变量名=oracle_sid,变量值=XXXX,XXXX就是你的database SID.或者进入sqlplus 前,在command line下
输set oracle_sid=XXXX,XXXX就是你的database SID.
ORA-00947: 没有足够的值(已解决)。