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第3、4章简单报表及表空间实验报告
第三章实验目的:了解SQL*Plus工具的功能;掌握SQL*Plus连接与断开数据库的多种方式;熟悉掌握DESCRIBE命令的使用;熟悉掌握各种编辑命令;掌握临时变量与已定义变量的使用;掌握格式化查询结果的设置;掌握简单报表的创建。
实验内容:3.1使用connect命令通过scott用户连接数据库,然后使用disconn命令断开数据库。
在执行对表的查询时,提示未连接。
3.2使用describe命令,查看scott用户的emp表的结构。
3.3查看scott用户的emp表,查询条件为empno的值大于7800且小于7900,在查询结果中显示数据的empno、job、mgr、sal列的信息。
对第一行的select语句进行操作使用append命令追加一列使用change命令对列执行修改操作使用del命令和list命令使用run命令执行语句3.4将缓冲区中的SQL语句保存到文件中如果该文件已存在,若不指定append或replace,将显示错误指定append或replace选项,保存数据成功scott_emp_query.sql文件的内容以该文件所在的目录位置如图3.5将scott_emp_query.sql文件的内容读入缓冲区中3.6使用start命令读取并运行scott_emp_query.sql文件3.7执行edit命令显示缓冲区中的内容3.8使用spool命令,指定文件scott_emp_outcome.txt在安装目录下,找到scott_emp_outcome.txt文件3.9使用select语句对scott用户的表emp执行查询操作,在where子句中,定义一个临时变量temp3.10在select语句中,指定临时变量column_name3.11使用&&符号定义改变量3.12执行set verify off命令3.13使用set define命令将变量定义字符设置为@字符3.14创建一个脚本文件temp.sql,在该脚本文件中定义上述select语句3.15使用define命令,查看系统中所有已定义变量3.16使用define命令,定义一个变量temp,为该变量赋值78503.17使用accept命令定义temp变量,并指定相应的选项设置3.18使用column命令,对scott用户的emp表的输出进行格式化设置3.19使用pagesize命令,设置一页显示20行信息3.20对scott用户的表emp执行查询操作时,使用linesize命令之前之后的输出结果3.21查询scott用户的emp表时,使用ttitle和btitle命令设置页眉和页脚信息3.22使用break命令和compute命令将scott.emp表的输出结果进行分组·3.23将scott用户的emp表放入到缓冲区,然后设置ename列和job列的格式,再使用column ename clear语句清除ename列的格式实验指导——使用报表统计各部门人数实验感悟:通过本章的实验操作,我对SQL*Plus工具的功能有个初步了解,基本熟悉SQL*Plus命令和相关变量,比如使用spool命令复制输出结果到文件;其次,我们还需掌握格式化查询结果的设置及简单报表的制作。
Oracle实训报告
ORACLE数据库开发实践报告要求1.实践名称:Oracle数据库开发2.实践题目:(1)Oracle数据库的操作(2)小型数据库系统的设计与开发3.实践目的:初步掌握Oracle关系数据库语言;掌握 Oracle的操作与使用;数据库的建立与管理、数据表的建立与操作等;PL/SQL语言的使用与编程。
4.实践内容与结果:4.1 Oracle数据库的操作4.1.1实践操作11、熟悉Oracle运行环境,理解存储管理器、方案管理器和安全管理器的作用及操作过程。
要求:(1).登录到存储管理器中,查看表空间和回滚段中的情况。
(2).登录到方案管理器中,查看SYS方案下的ACCESS$表。
(3).在SQL Plus环境下,键入下面内容,执行并观察结果。
•SQL>SET SERVEROUTPUT ON;•SQL>DECLARE• 2 n1 NUMBER:=18;• 3 n2 NUMBER:=6;• 4 BEGIN• 5 IF n2<=10 THEN• 6 n1:=n1+n2;•7 DBMs_Output.Put_Line(To_Char(n1));•8 END IF;•9 END;•10 /•4.1.2实践操作21、建立数据库(熟悉DBCA工具的使用)2、利用OEM创建新用户SOL语句:CREATE USER "MENG072" PROFILE "DEFAULT"IDENTIFIED BY "m" DEFAULT TABLESPACE "USERS"ACCOUNT UNLOCK;GRANT UNLIMITED TABLESPACE TO "MENG072" GRANT "CONNECT" TO "MENG072";GRANT "DBA" TO "MENG072";3、利用OEM创建Departments表(1)设置一般信息(2)设置约束条件SQL语句:CREATE TABLE "MENG072"."DEPARTMENTS" ("DEPARTMENTID" CHAR(3) NOTNULL, "DEPARTMENGTNAME" CHAR(20) NOT NULL, "NOTE"V ARCHAR2(100) NOT NULL, PRIMARY KEY("DEPARTMENTID")) 4、创建Employees表SOL语句:CREATE TABLE "MENG072"."EMPLOYEES" ("EMPLOYEEID" CHAR(6) NOT NULL, "NAME" CHAR(10) NOT NULL, "BIRTHDAY" DATE NOT NULL, "SEX"NUMBER(1) NOT NULL, "ADDRESS" CHAR(20) NOT NULL, "ZIP"CHAR(6) NOT NULL, "PHONENUMBER" CHAR(12) NOT NULL, "DEPARTMENTID"CHAR(3) NOT NULL, PRIMARY KEY("EMPLOYEEID"))5、创建Salary表SOL语句:CREATE TABLE "MENG072"."SALARY" ("EMPLOYEEID" CHAR(6) NOT NULL, "INCOME"NUMBER(8, 2) NOT NULL, "OUTCOME" NUMBER(8, 2) NOT NULL,PRIMARY KEY("EMPLOYEEID"))6、用PL/SQL语句创建表Departments、表Employees、表Salary:4.1.3实践操作31、用OEM向表Employ、表Departments、表Salary中各插入记录:(1)表Departments插入记录SOL语句:INSERT INTO "DEPARTMENTS" V ALUES ('1' ,'财务部' ,'1' ); INSERT INTO "DEPARTMENTS" V ALUES ('2' ,'人力资源部' ,'2' ); INSERT INTO "DEPARTMENTS" V ALUES ('3' ,'经理办公室' ,'3' ); INSERT INTO "DEPARTMENTS" V ALUES ('4' ,'研发部' ,'4' ); INSERT INTO "DEPARTMENTS" V ALUES ('5' ,'市场部' ,'5' ); (2)表Employ插入记录SOL语句:INSERT INTO "MENG072"."EMPLOYEES" ("EMPLOYEEID" ,"NAME" ,"BIRTHDAY" ,"SEX" ,"ADDRESS" ,"ZIP" ,"PHONENUMBER" , "DEPARTMENTID" ) V ALUES ('000001' ,'王林' ,TO_DA TE('23-1月-1966', 'dd-Mon-yyyy HH:MI:SS AM') ,1 ,'中山路32-1-508' ,'210003' ,'83355668' ,'2' )INSERT INTO "MENG072"."EMPLOYEES" ("EMPLOYEEID" ,"NAME" ,"BIRTHDAY" ,"SEX" ,"ADDRESS" ,"ZIP" ,"PHONENUMBER" , "DEPARTMENTID" ) V ALUES ('010008' ,'伍荣华' ,TO_DA TE('28-3月-1976', 'dd-Mon-yyyy HH:MI:SS AM') ,1 ,'北京东路100-2' ,'210001' ,'83321321' ,'4' )INSERT INTO "MENG072"."EMPLOYEES" ("EMPLOYEEID" ,"NAME" ,"BIRTHDAY" ,"SEX" ,"ADDRESS" ,"ZIP" ,"PHONENUMBER" , "DEPARTMENTID" ) V ALUES ('020010' ,'王向荣' ,TO_DATE('09-12月-1982', 'dd-Mon-yyyy HH:MI:SS AM') ,1 ,'四牌楼10-0-108' ,'210006' ,'83792361' ,'1' )INSERT INTO "MENG072"."EMPLOYEES" ("EMPLOYEEID" ,"NAME" ,"BIRTHDAY" ,"SEX" ,"ADDRESS" ,"ZIP" ,"PHONENUMBER" , "DEPARTMENTID" ) V ALUES ('020018' ,'李莉' ,TO_DA TE('30-7月-1976', 'dd-Mon-yyyy HH:MI:SS AM') ,0 ,'中山东路102-2' ,'210002' ,'83413301' ,'1' )INSERT INTO "MENG072"."EMPLOYEES" ("EMPLOYEEID" ,"NAME" ,"BIRTHDAY" ,"SEX" ,"ADDRESS" ,"ZIP" ,"PHONENUMBER" , "DEPARTMENTID" ) V ALUES ('102201' ,'刘明' ,TO_DA TE('02-9月-1965', 'dd-Mon-yyyy HH:MI:SS AM') ,1 ,'虎踞路100-2' ,'210013' ,'83606608' ,'5' )INSERT INTO "MENG072"."EMPLOYEES" ("EMPLOYEEID" ,"NAME" ,"BIRTHDAY" ,"SEX" ,"ADDRESS" ,"ZIP" ,"PHONENUMBER" , "DEPARTMENTID" ) V ALUES ('102208' ,'朱俊' ,TO_DA TE('10-8月-1979', 'dd-Mon-yyyy HH:MI:SS AM') ,1 ,'牌楼巷5-3-106' ,'210004' ,'84708817' ,'5' )INSERT INTO "MENG072"."EMPLOYEES" ("EMPLOYEEID" ,"NAME" ,"BIRTHDAY" ,"SEX" ,"ADDRESS" ,"ZIP" ,"PHONENUMBER" , "DEPARTMENTID" ) V ALUES ('108991' ,'忠民' ,TO_DA TE('01-10月-1974', 'dd-Mon-yyyy HH:MI:SS AM') ,1 ,'中山路10-3-105' ,'210003' ,'83346722' ,'3' )(3)表Salary中插入记录SOL语句:INSERT INTO "MENG072"."SALARY" ("EMPLOYEEID" ,"INCOME" ,"OUTCOME" ) V ALUES ('000001' ,2100.8 ,123.09 )INSERT INTO "MENG072"."SALARY" ("EMPLOYEEID" ,"INCOME" ,"OUTCOME" ) V ALUES ('010008' ,1582.62 ,88.03 )INSERT INTO "MENG072"."SALARY" ("EMPLOYEEID" ,"INCOME" ,"OUTCOME" ) V ALUES ('102201' ,2569.88 ,185.65 )INSERT INTO "MENG072"."SALARY" ("EMPLOYEEID" ,"INCOME" ,"OUTCOME" ) V ALUES ('108991' ,3259.98 ,281.52 )INSERT INTO "MENG072"."SALARY" ("EMPLOYEEID" ,"INCOME" ,"OUTCOME" ) V ALUES ('020010' ,2860.0 ,198.0 )INSERT INTO "MENG072"."SALARY" ("EMPLOYEEID" ,"INCOME" ,"OUTCOME" ) V ALUES ('020018' ,2347.68 ,180.0 )INSERT INTO "MENG072"."SALARY" ("EMPLOYEEID" ,"INCOME" ,"OUTCOME" ) V ALUES ('102208' ,1980.0 ,100.0 )2、用PL/SOL语句向表Employ、表Departments、表Salary中插入记录:4.1.4实践操作41、建立索引:2、实现域完整性:注:该同学此题完成有误,下面给出另一同学的正确解答为数据库中的employees表的phonenumber列建立check约束:3、实现实体完整性:(1)为表Departments设置主键DepartmentID:(2)为表Departments的DepartmentName建立唯一性索引:4实现参照完整性:4.1.5实践操作51、SELECT语句的基本使用:(1)查询每个雇员的所有数据:(2)查询每个雇员的地址和电话:(3)查询EmployeeID为000000的雇员的地址和电话:(4)查询Employees表中女雇员的地址和电话;(5)计算每个雇员的实际收入:(6)找出所有姓王的雇员的部门号:(7)找出所有收入在2000~5000元之间的雇员号码:2 子查询的使用(1)查找在财务部工作的雇员的情况:(2)查找财务部年龄不低于研发部雇员年龄的雇员的姓名:(3)查找比所有财务部的雇员收入都高的雇员的姓名:3.连接查询的使用(1)查询每个雇员的情况及其薪水的情况:(2)查找财务部收入在2200元以上的雇员姓名及其薪水情况:4.数据汇总(1)求财务部雇员的平均水平:(2)求财务部雇员的平均实际收入:(3)求财务部雇员的总人数:5.GROUP BY、ORDER BY 子句的使用(1)求各部门的雇员数:(2)将各雇员的情况按收入由低到高排列:6.视图(1)创建视图——限制查看雇员的某些情况:各部门经理只能查找本部门雇员的薪水情况:(2)使用视图查询财务部雇员的信息:查询财务部雇员薪水情况:向表EMPLOYEES中插入一条记录:从经理办公室转到市场部:从表EMPLOYEES中删除:4.1.6实践操作61.条件结构的使用例5.52.循环结构的使用例5.92.选择和跳转语句例5.134.自定义函数的使用例5.27例5.284.1.7实践操作71.创建触发器(1)修改DEPARTMENTS表中的DEPARTMENTID字段值(2)删除DEPARTMENTS表中一条记录的同时删除该记录DEPARTMENTID字段在EMPLOYEES表中对应的记录2.创建存储过程(1)添加职员记录的存储过程:(2)修改职员记录的存储过程;(3)删除职员记录的存储过程:3.调用存储过程4.1.8实践操作8 1.创建用户2.创建角色3.创建概要文件5.实践小结:在实训之前,我对Oracle一无所知,后来经过老师课上耐心细致的讲解,我对Oracle 渐渐有了较为清晰的认识。
oracle实验报告3
实验报告(六)1、通过实验来验证oracle的TX和TM锁。
(1)自己创建一个表,并向表中插入数据。
(2)修改表中某一列的某一行内容。
然后观察v$lock 和v$transaction的内容。
并要解释清楚这两个表中出现中出现的内容之间的关系。
说明得到了一个排他锁,request=0说明没有发出请求。
(3)如果表更新这个表中的某一列的多行内容,在v$lock和v$transaction会出现什么样的内容?怎么和前面没有变化?(4)开启另外一会话(运行另外的sqlplus),先更新这个表的另外的一些列的内容,然后再更新前面那个会话所更新的列。
观察v$lock和v$transaction出现的内容。
打开另外一个窗口,更新首先显示阻塞,然后看前一个会话的,看v$lock和v$transaction出现的内容。
这时显示的有2个锁,这是因为id159的事物阻塞了id148的事物。
(5)如何才能出现TM锁,做实验验证。
因为修改了2个对象出现了2个tm锁,也就是说修改了多少对象就出现了多少tm锁(6)注意观察TM锁和TX锁在v$lock中所对应的ID1和ID2列的值的不同之处2、验证TM锁的作用。
步骤:(1)自己创建一个表,并向表中插入数据,并提交。
(2)修改这个表中的内容。
(3)开启另一个会话(运行另外的sqlplus),执行删除这个表的sql(drop table test1)。
3、验证DDL的产生原理。
步骤:(1)自己创建一个表,并向表中插入数据。
(2)更新这个表的第一行数据,但不要提交。
(3)开启另一个会话,同样更新这个表的第一行,这时会看到阻塞。
4、自己为表中的数据行加锁(使用这种方法时要小心,一般都不会用)。
(2)在这个表上建一个触发器,其代码如下:(3)在一个会话插入下面信息。
insert into demo values ( 1 );(4)在另一个话插入下面信息。
insert into demo values ( 1 );。
(完整word版)Oracle报告
实验报告课程名称:大型数据库管理与应用实验项目:Oracle 数据库管理及应用专业班级:计算机1103班姓名:王圣林学号:110405305 实验室号:205 实验组号:05 实验时间:批阅时间:指导教师:崔文成成绩:一、o racle数据库基础操作(写出创建语句和运行结果截图)1.库的创建Create database dzq1 datafile 'F:\app\product\11。
2。
0\dbhome_1\oradata\orcl\system01.dbf' size 300M reuse autoextend on next 10 240K maxsize unlimited extent management local sysaux datafile ’F:\app\product\11.2.0\dbhome_1\oradata\orcl\sysaux01.dbf' size 120M reuse aut oextend on next 10240K maxsize unlimited default temporary tablespace temp te mpfile 'F:\app\oradata\orcl\temp01。
dbf’ size 20M reuse autoextend on next 640K maxsize unlimited undo tablespac e "UNDOTBS1” datafile ’F:\app\product\11。
2。
0\dbhome_1\oradata\orcl\undotbs01.dbf’ size 200M reuse autoextend on next 5120K maxsize unlimited logfile group 1 ('F:\app\product\11.2.0\dbhome_1\orad ata\orcl\redo01。
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 数据库课程上机实验报告学院名称:专业班级:姓名:学号:实验成绩:任课教师:目录实验一 (3)实验三 ORACLE数据库结构与网络配置 (3)实验四 (8)实验五数据表及其操作 (10)实验六 SQL命令操作 (14)实验七创建索引 (21)实验一实验三 ORACLE数据库结构与网络配置实验内容与数据库结构相关的数据字典查询实验1、查看表空间的名称及大小2、查看表空间物理文件的名称及大小3、查看回滚段名称及大小4、查看控制文件5、查看日志文件6、查看表空间的使用情况7、查看数据库库对象8、查看数据库的版本9、查看数据库的创建日期和归档方式10、查看临时数据库文件常用数据库信息查看命令(1)oracle中怎样查看总共有哪些用户(2)查看oracle当前连接数(3)列出当前数据库建立的会话情况3.2 表空间操作●创建表空间●修改表空间的相关操作1)增加表空间中的数据文件2)删除表空间中的数据文件3)修改表空间文件的数据文件大小4)修改表空间数据文件的自动增长属性。
实验四实验五数据表及其操作实验内容5.1创建基本表以system用户登录sqlplus创建表空间创建Testpace表空间5.2修改表清空表中的数据5.3 删除表5.4聚集表(1)创建聚集(聚集表的创建与操作)引用参照完整性三表定义了suppliers,products,order details三表间的三个级联关系实验六 SQL命令操作实验内容6.1数据查询select创建student,sc,course三表,并且插入数据查询1:查询2:查询3:查询4;实验七创建索引实验内容7.1在emp表中的sal字段上创建一个名为index_sal的b树索引,按字段值的蒋序排序7.2 在dept表的dname字段上创建一个具有唯一性的b树索引,索引值为字母序排序。
7.3在emp表的ename和deptno字段上创建一个复合索引7.10将参数设置为跟踪状态,执行对emp表的查询命令,查看索引应用的跟踪结果。
Oracle实验指导书和实验报告
中北大学软件学院Oracle数据库实验报告说明:此版本实验报告分为实验指导书和实验报告两部分,实验指导书在前,截图和代码在后。
在目录中按Ctrl键可以快速到达对应位置目录实验一Oracle数据库的体系结构——逻辑结构(2学时) (3)Oracle实验1运行结果截图 (6)实验二Oracle数据库的体系结构——物理结构(2学时) (9)Oracle实验2截图 (14)实验三常用SQL语言的使用(2学时) (24)Oracle实验3截图 (29)实验四扩展SQL语言的使用(2学时) (38)Oracle实验4运行结果截图 (42)实验五PL/SQL-----过程(2学时) (62)Oracle实验5运行结果截图 (66)实验六PL/SQL-----函数和包(2学时) (77)Oracle实验6运行结果截图 (78)实验七PL/SQL-----游标(2学时) (80)Oracle 实验7运行结果截图 (86)实验八数据库的备份和恢复(2学时) (101)Oracle实验8 运行结果截图 (101)1.闪回数据库 (101)2.闪回表 (104)3.闪回回收站 (105)4.闪回查询 (107)5.闪回版本查询 (108)6.闪回事务查询 (110)7.导出 (110)8.导入数据库 (112)实验一Oracle数据库的体系结构——逻辑结构(2学时)实验目的:在理解在Oracle数据库的体系结构的基础上,在sqlplus环境下查看oracle的逻辑体系结构中括表空间、段、区、块的信息,熟练掌握各种查看语句。
实验内容:1.通过sql语句查看表空间信息2. 通过sql语句查看段信息3. 通过sql语句查看区信息4. 通过sql语句查看块信息1.理解逻辑体系结构2.表空间的查看(1)使用V$TABLESPACE视图查看表空间信息SELECT * FROM V$TABLESPACE;(2)查看表空间的属性dba_tablespacesSELECT TABLESPACE_NAME,CONTENTS, STATUS FROM DBA_TABLESPACES; (3)查看表空间组及其所属的表空间信息dba_tablespace_groups(4)查看表空间中所包含的段信息dba_segmentsSelect segment_name,segment_type,extents,tablespace_name fromdba_segments where tablespace_name=‘SYSTEM’;Select * from v$rollname ;查看回滚段的名称列表Select * from v$rollstat ;查看回滚段的统计信息;Select segment_name,tablespace_name,bytes,blocks,segment_type from dba_segments where segment_type=‘ROLLBACK’(5)查看表空间中空闲区间的信息dba_free_spaceselect * from dba_segments where user=‘SCOTT’;SELECT TABLESPACE_NAME, FILE_ID, BYTES, BLOCKS FROMDBA_FREE_SPACE;Oracle实验1运行结果截图SELECT * FROM V$TABLESPACE;(2)查看表空间的属性dba_tablespacesSELECT TABLESPACE_NAME,CONTENTS, STATUS FROM DBA_TABLESPACES;(3)查看表空间组及其所属的表空间信息dba_tablespace_groupsSelect * from v$rollname ;查看回滚段的名称列表Select segment_name,tablespace_name,bytes,blocks,segment_type from dba_segments where segment_type=‘ROLLBACK’(5)查看表空间中空闲区间的信息dba_free_spaceselect * from dba_segments where user=‘SCOTT’;SELECT TABLESPACE_NAME, FILE_ID, BYTES, BLOCKS FROM DBA_FREE_SPACE;实验二Oracle数据库的体系结构——物理结构(2学时)实验目的:在理解在Oracle数据库的体系结构的基础上,在sqlplus环境下对oracle的物理体系结构的操作,其中包括控制文件、数据文件、日志文件,熟练掌握以上操作的各种语句。
oracle实训报告3
实训报告:Unix与数据库课程设计专业大型数据库与小型机技术方向学号 30802001533 姓名赵彬彬实训内容:oracle9i在红旗4.1平台上的安装一.Oracle 9.2.0.4安装步骤安装目录/oracle/binbin/product/9.2.01.安装环境检查首先检查软硬件环境是否满足要求。
要求:物理内存512M、安装所需磁盘空间约4G、临时存储空间如/tmp约1.5G、32位操作系统。
2.安装前准备(1)从FTP下载安装文件和所需的操作系统补丁文件。
3个安装文件:disk1.cpio、disk2.cpio、disk3.cpio1个操作系统补丁文件:p3006854_9204_LINUX.zip(2)修改虚拟机的网卡为桥接模式。
配置linux的ip地址为192.168.1.54。
查看主机是否与虚拟机能通信。
利用xftp工具,将上面四个文件传入linux的/oracle目录下。
(3)创建目录#mkdir –p /oracle/binbin/product/9.2.0(4)利用puttty工具登陆系统。
创建安装Oracle数据库所要求的Linux用户和组:用户名oracle/oracle、组dba#groupadd dba#useradd –g dba oracle#passwd oracle输入oracle再次确认密码(4) oracle用户需要对/oracle目录有全部权限,修改/oracle目录的所有者为oracle用户所有。
#chown –R oracle:dba /oracle(5)以oracle用户登录系统,修改oracle用户主目录下的.bash_profile 文件,增加以下内容:#vi /home/oracle/.bash_profileexport ORACLE_BASE=/oracle/binbinexport ORACLE_HOME=/oracle/binbin/product/9.2.0export ORACLE_SID=binbinexport NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"export PATH=$ORACLE_HOME/bin:$PATHexport ORACLE_DOC=$ORACLE_HOME/docCLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlibCLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlibCLASSPATH=$CLASSPATH:$ORACLE_HOME/jdbc/lib/classes12.zipCLASSPATH=$CLASSPATH:$ORACLE_HOME/jdbc/lib/nls_charset12.zipCLASSPATH=$CLASSPATH:$ORACLE_HOME/sqlj/lib/translator.zipCLASSPATH=$CLASSPATH:$ORACLE_HOME/sqlj/lib/runtime.zipCLASSPATH=$CLASSPATH:$ORACLE_HOME/jdbc/lib/*.jarCLASSPATH=$CLASSPATH:$JAVA_HOME/lib/*.jarCLASSPATH=$CLASSPATH:$JAVA_HOME/jre/lib/*.jarCLASSPATH=$CLASSPATH:.export CLASSPATHif [ ! $LD_LIBRARY_PATH ]; thenLD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib:$ORACLE _HOME/jdbc/libexport LD_LIBRARY_PATHfiulimit -n 65535 >/dev/null 2>&1(6)以root登录系统为操作系统打补丁。
ORACLE实验报告完结版
实验报告(三)院系:信息学院课程名称:日期:班级姓名专业信息管理与信息系统学号实验室实验名称Oracle的存储管理与分析(1)成绩评定教师签名实验目的索引实验内容一、请写三个表明oracle读取数据所用的三种方式的SQL语句,并列出它们的执行计划二、以emp为原型,创建一个test表,在test的empno列上创建索引三、分析索引,通过index_stats查看的索引高度,结构等信息四、往test表中删除,插入,更新3-5条记录,再分析索引,查看三所列的索引结构的信息五、往test表中插入600条记录,查看索引结构六、删除500条记录,查看索引结构七、对索引进行合并,查看索引变化八、重构索引,查看索引变化一、请写三个表明oracle读取数据所用的三种方式的SQL语句,并列出它们的执行计划1.全表扫描(full table scan--fts)并行查询可能会使得我们的路径选择采用全表扫描2.通过行ID(ROWID)向表中插入对象时隐含会创建改行ROWID,它是数据行所存储的数据块地址,这样可以以最快的速度找到该行数据,是oracle中读取单行数据最快的方法。
3.使用索引(1)使用索引找到相应ROWID(2)通过找到的ROWID从表中读取相应的数据二、以emp为原型,创建一个test表,在test的empno列上创建索引三、分析索引,通过index_stats查看的索引高度,结构等信息四、往test表中删除,插入,更新3-5条记录,再分析索引,查看三所列的索引结构的信息五、往test表中插入600条记录,查看索引结构这样依次插入到表test中600条记录,再查看索引结构有如下变化:六、删除500条记录,查看索引结构;按照这样删除的方法把插入的600记录删除500条后在查看索引结构:七、对索引进行合并,查看索引变化;八、重构索引,查看索引变化;实验报告(三)院系:信息学院课程名称:日期:班级姓名专业信息管理与信息系统学号实验室实验名称oracle存储管理与优化(2)成绩评定教师签名实验目的日志管理实验内容1查看日志组和日志文件的相关信息(v$log,v$logfile)了解日志组状态真正涵义;2切换日志组,跟踪日志切换的时间频率;3往数据里增加两个日志组,再删除其中的一个,结合日志组的状态,分析哪些类型的日志组不能删除4.往日志组里增加日志成员,再删除添加的日志成员,分析哪些类型的日志文件不能删除;5日志文件的恢复:1.nactive日志损坏清洗日志2.active日志损坏,只要数据库是一致性关闭,与1的恢复一样3.current日志损坏不完全恢复1查看日志组和日志文件的相关信息(v$log,v$logfile)了解日志组状态真正涵义;v$log记录了当前数据库的日志组号、日志序列号、每个日志文件的大小、以字节为单位、每个日志组的成员数量,以及日志组的当前状态。
Oracle数据库应用 Oracle维护 实验报告3
课程名:Oracle数据库应用地点:6306(6)数据库用户与权限的管理。
实验内容:配置net manager依次选择开始—>Oracle –OraHome92—>Configuration and Migration Tools—>Net Manager输入Net服务名172.30.4.205_ora91 点击下一步选择TCP/IP(Internet协议)点击下一步输入主机名172.30.4.205 点击下一步选择(Oracle8i或更高版本)服务名:ora91 点击下一步点击测试选择更改登陆,输入用户名xiecha,口令xiecha点击确定,出现测试成功后选择关闭点击完成保存网络配置(2)配置Enterprise Manager Console用dbca配置em在命令提示符下输入dbca,出现"Database Configuration Assistant 欢迎使用"界面,点下一步,选择配置数据库,在点下一部,选择要配制em的数据库,然后在点下一步,把"使用Enterprise Manager配置数据库"选项打上钩,因为是配制单实例的,所以选择"使用Database Control管理数据",下面两个选项启用电子邮件通知和启用每日备份根据自己情况选择,在点一下部,把"Enterprise anager 资料档案库"也选择起来,否则不能使用em,在点下一步,然后提示需要设置DBSNMP和SYSMAN两个用户设置口令,根据自己情况来设置是否口令设置成一样,还是分开设置。
再点一下步,再点完成,就出现配制数据库提示信息框,等配制完成就退出dbca,完成数据库em配制(3)Oracle数据库备份与恢复原理和方法Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP)、热备份和冷备份。
oracle数据库实训总结
oracle数据库实训总结第一篇:oracle数据库实训总结个人总结本次实训为期两个星期,时间充裕,也给予了我足够的学习和实践的时间。
在这次实训里,我了解到了数据库设计的过程和任务,对之前所学的oracle知识也起了很好的复习和巩固作用。
我们小组的选择的实训项目是《电子商城系统》,在做产品需求的时候,因为对商城系统的了解不够充分,我们在产品的功能性需求分类处的一些细节做了多次改进,通过参考网上的需求分析文档以及老师的指导,总算是顺利完成。
我负责的是购物板块,幸亏我多年的网购经验,对购物流程有着深刻的理解,并积极参考小米和华为等网上商城的网站,最后也是顺利完成。
接下来是第二个重头戏——数据库设计。
首先,我们的数据库原型设计使用的软件是PowerDesigner,使用也还算简单吧。
数据库的实体我们进行了深入的讨论,最后也做了多次修改,主要原因还是因为我们对电子商城的了解以及对于数据库实体之间的掌握还不够。
在老师的指导下也算是顺利完成了。
接下来也很顺利的完成了《数据库设计说明书》等的文档编写。
实训进入尾声,学习了半个学期的oracle知识总算的到了应用,并且通过实训,我也了解到了数据库开发的过程,感觉还是不错滴。
第二篇:oracle实训总结Oracle实训总结系别:班级:姓名:学号:日期:实训总结:由于感到oracle实训担子很重,而自己的学识、能力和阅历与其任职都有一定的距离,所以总不敢掉以轻心,总在学习,向书本学习、向周围的领导学习,向同事学习,这样下来感觉自己半年来还是有了一定的进步。
颠末一个星期的oracle数据库实训,让我体会到了日常仄凡是很多讲堂上所还出有启受的内容,很让人支获颇丰,明白若何往应用,而停止的一次剖析设计综开的练习。
而本次数据库时真训的目标是让我们把握数据库系统的道理、手艺。
将理论与现真联开,利用现有的数据库办理系统硬件、范例、科学地完成一个设计与真现。
这个星期是我们oracle 数据库管理课的实训,经过一个星期的实训,让我领会到了许多平时课堂上所没有接受的课外知识,很让人受益匪浅,懂得如何去运用,而进行的一次分析设计综合的训练。
Oracle数据库实验报告
Oracle数据库实验报告第一篇:Oracle数据库实验报告中南林业科技大学实验报告课程名称:Oracle数据库专业班级:姓名:学号:****年**月**日实验一安装和使用Oracle数据库【实验目的】1.掌握Oracle软件安装过程,选择安装组件2.掌握建立Oracle数据库,配置网络连接3.掌握Oracle企业管理器的基本操作4.使用SQL*Plus,登录到实例和数据库5.掌握命令方式的关闭和启动实例及数据库【实验内容】1.查看已安装的Oracle组件2.查看服务,记录下和数据库有关的服务名,将他们设为手动方式,启动相关服务。
3.配置监听器,查看是否在服务中有LISTENER,是否能启动。
4.配置本地net服务,提示:设置正确的服务器地址和端口号。
5.打开SQL*Plus,用SYS和SYSTEM用户名和密码登录。
6.思考题:有几种打开SQL*Plus的方法?分别是什么?7.用命令关闭实例和数据库,记录命令8.用命令以NOMOUNT的方式启动实例,再加载数据库,打开数据库。
【实验结论】1.查看已安装的Oracle组件2.查看服务,记录下和数据库有关的服务名,将他们设为手动方式,启动相关服务。
3.配置监听器,查看是否在服务中有LISTENER,是否能启动。
4.配置本地net服务,提示:设置正确的服务器地址和端口号。
5.打开SQL*Plus,用SYS和SYSTEM用户名和密码登录。
6.思考题:有几种打开SQL*Plus的方法?分别是什么?(1)直接打开 sql plus 即窗口方式(2)cmd 命令行方式(3)WEB 页面中 iSQL*Plus 方式 7.用命令关闭实例和数据库,记录命令 SQL>shutdown immediate8.用命令以NOMOUNT的方式启动实例,再加载数据库,打开数据库。
sql>startup nomount sql>alter database mount;sql>alter database open;sql>startup(1).用SQLplus 命令:show parameters参数名(2).用select [列名] from 表名2.初始化文件有几种?默认的保存位置在哪里?初始化文件有三种:数据文件,日志文件,控制文件;默认的保存位置E:oracleproduct10.2.0oradataorcl4.打开OEM,查看三类物理文件信息三类物理文件:数据文件、控制文件、日志文件数据文件:.DBF 存储表、索引及数据结构信息日志文件:.LOG记录对数据库的所有修改信息,用于恢复控制文件:.CTL二进制文件,记录数据库名、文件标识、检查点5.分别用select命令查询V$parameter动态性能视图,用show 命令查看全局数据库名、实例名、是否启动自动归档、标准数据块大小这四个参数的值,记录命令和结果。
oracle上机实验报告
ORACLE数据库上机实验报告专业班级:09计算机1班姓名:付向飞学号:实验一创建数据库和表目的与要求(1)了解数据库的结构以及一些基本概念(2)了解表的结构特点(3)了解oracle 11g的基本数据类型(4)学会使用DCBA创建数据库(5)学会使用界面方式创建表(6)学会使用SQL语句手工创建数据库(7)学会使用SQL语句创建表实验准备首先要明确,能够创建数据库的用户必须是系统管理员,或是被授权使用CREATE DATABASE语句的用户。
其次创建数据库必须要确定数据名、所有者(即创建数据库的用户)、数据库大小、SGA分配和存储数据的文件。
然后,确定数据库包含哪些表以及所包含的各表的结构,还要了解oracle 11g 的常用数据类型,以创建数据库表。
此外还要了解两种常用的创建数据库、表的方法,即利用DCBA创建和使用PL/SQL的CREATE DATABASE语句创建。
实验内容在scott用户中创建表1,Employees(员工信息表)表create table Employees(EmployeeID char(6) primary key,Name char(10) not null,Birthday date not null,Sex number(1) not null,Address char(20),Zip char(6),PhoneNumber char(12),DepartmentID char(3) not null);查看创建后的Employees表2,Departments(部门信息)表create table Departments(DepartmentID char(3) primary key, DepartmentName char(20) not null, Note varchar2(100));查看创建后的Departments表3,Salary(员工薪水情况)表create table Salary(EmployeeId char(6) primary key, InCome number(8,2) not null, OutCome number(8,2) not null );查看创建后的Salary表实验二表数据插入,修改和删除目的与要求(1)学会使用PL/SQL语句对数据库表进行插入,修改,和删除数据的操作(2)学会使用SQL Developer对数据库表进行,修改,和删除数据的操作(3)了解数据库更新操作时要注意数据完整性(4)了解PL/SQl语句对表数据操作的灵活控制功能实验准备首先了解对表数据的插入、删除、修改都属于表数据的更新操作。
Oracle数据库基础教程课后实验---实验报告
Oracle数据库基础教程实验报告专业计算机科学与技术姓名李文成学号 2010指导老师肖卓宇实验一创建数据库和表目的与要求(1)了解oracle数据库的逻辑结构和物理结构。
(2)了解Oracle Enterprise Manager的使用情况。
(3)学习关闭和启动数据库实例的方法。
(4)学会使用SQL语句创建数据库的方法。
(5)学会使用SQL语句删除数据库的方法。
实验准备首先要了解Oracle数据库的逻辑结构,包括方案对象,数据块、区间、段、和表空间等。
数据库由若干个表空间组成,表空间由表组成,表由段组成,段由区间组成,区间则由数据块组成。
Oracle数据库的物理结构由构成数据库的操作系统文件所决定。
每个Oracle数据库都由3种类型的文件组成:数据文件、日志文件和控制文件。
这些数据库文件为数据库信息提供真正的物理存储。
Enterprise Manager 10g是Oracle 10g提供的新的管理工具,简称EM。
使用它可以完成启动、关闭数据库,创建、删除数据库等功能。
只有系统管理员或拥有CREATE DATABASE权限的用户才能创建数据库。
可以在Enterprise Manager 中通过图形界面创建数据库,也可以使用CREATE DATABASE语句创建数据库。
实验内容oracle 服务器端的安装先解压10201_client_win32.zip压缩包,双击setup.exe。
如下图:稍等之后进入欢迎界面,如下图:点击下一步选择“管理员”安装类型,点击下一步:选择安装的详细目录后点击下一步。
点击安装:选择执行典型配置:点击下一步:完成。
创建数据库使用OEM创建表图1-1创建Employees表图1-2成功创建Employees表图1-3成功删除Employees表图1-4创建Departments表图1-5成功创建Departments表图1-6 成功删除Departments表图1-7创建Salary表图1-8成功创建Salary表图1-9成功删除Salary表在PL/SQL语句创建表1.创建Employees表create table Employee(EmployeeID char(6) NOT NULL PRIMARY KEY,Name char(10) NOT NULL,Bithday date N OT NULL,Sex number(1) NOT NULL,Address char(20) NULL,Zip char(6) NULL,PhoneNumber char(12) NULL,DepartmentID char(3) NOT NULL REFERENCES Departments(DepartmentID))tablespace users;图1-10 使用SQL语句创建Employees表2.创建Departments表create table Departments(DepartmentID char(3) NOT NULL PRIMARY KEY, Departmentname char(20) NOT NULL,Note varchar2(100) NULL)tablespace users;图1-11 使用SQL语句创建Departments表3.创建Salary表create table Salary(EmployeeID char(6) NOT NULL PRIMARY KEY,InCome number(8,2) NOT NULL,OutCome number(8,2) NOT NULL)tablespace users;图1-11 使用SQL语句创建Salary表实验二角色和用户管理目的与要求(1)了解Oracle数据库用户和角色的概念。
oracle实训报告
目录一、实践名称 ................................................... - 1 -二、实践题目 ................................................... - 1 -三、实践目的 ................................................... - 1 -四、实践内容与结果 ............................................. - 1 -第一部分 Oracle数据库的操作................................ - 1 - 第二部分 oracle数据库连接................................. - 26 - 第三部分建立oracle数据库应用系统--学生成绩管理系统........ - 28 - 五、实践小结 .................................................. - 34 -一、实践名称Oracle数据库开发二、实践题目(1)Oracle数据库的操作(2)Visual Basic访问Oracle数据库(3)建立一个oracle数据库应用系统---学生成绩管理系统三、实践目的Oracle数据库开发是信息管理与信息系统专业和相关专业本科生的一门实践课。
它的主要任务是在学生已经学过数据库原理与应用的基础上,通过教师的少而精的讲课和逐梯次的大量实际训练,使学生初步掌握数据库管理系统Oracle的基本原理和基本操作,能够运用数据库技术设计Oracle数据库及其应用系统。
学生实践后,应达到:(1)初步掌握Oracle关系数据库语言(2)掌握 Oracle的操作与使用(3)数据库的建立与管理、数据表的建立与操作等(4)PL/SQL语言的使用与编程(5)设计和开发一个小型数据库应用系统四、实践内容与结果第一部分Oracle数据库的操作(1)实践操作1熟悉Oracle运行环境和主要管理工具1.登录到存储管理器中,查看表空间和回滚段中的情况。
Oracle实验三实验报告
实验三 oracle对象管理及使用一、实验目的及要求掌握Oracle的常用对象的操作方法。
会使用常用对象解决一些实际问题。
二、实验主要内容(1)表结构的建立、修改、查看、删除操作。
(2) 索引的建立、修改、查看、删除操作。
(3) 视图的建立、查询、修改、删除操作。
(4) 同义词的建立、查询、修改、删除操作,比较对同义词的操作与对原数据库对象的操作是否一致。
(5) 掌握序列的建立、查询、修改、删除操作,利用序列向数据库表中插入数据。
三、实验仪器设备在局域网环境下,有一台服务器和若干台客户机。
服务器成功安装Oracle 11g数据库服务器(企业版),客户机成功安装Oracle 11g客户端软件,网络服务配置正确,数据库和客户端正常工作。
四、实验步骤1.创建表结构利用命令行方式将下列各表建立到员工医疗保险系统数据库中。
表结构如附录员工医疗保险系统表1-表7所示。
2.查看表结构(2) 利用SQL*Plus或PL/SQL Developer从数据字典DBA_TAB _COLUMNS查看员工医疗保险系统所有表的字段信息。
(3) 利用SQL*Plus或PL/SQL Developer从数据字典DBA_ CONSTRAINTS查看员工医疗保险系统所有表的约束信息。
3.修改表结构(1) 利用SQL*Plus或PL/SQL Developer将表“staff_sql”重新命名为“staff_sql0”。
(2) 利用企业管理器为“staff_sql0”表添加“age INT”字段,利用DESC命令查看“staff_sql0”表的字段信息。
(3) 利用SQL*Plus或PL/SQL Developer为“staff_sql0”表添加“salary NUMBER(5,2)”、“salary_add NUMBER(3,1)”两个字段,利用DESC命令查看“staff_sql0”表的字段信息。
(4) 利用SQL*Plus或PL/SQL Developer向“staff_sql0”表添加“sname”字段惟一性约束,从数据字典DBA_CONSTRAINTS查看“staff_sql0”表的约束信息。
Oracle实验报告三
实验报告三课程名称: Oracle10数据库 实验项目: 数据库安全管理操作 指导教师: 李庆风 实验位置: 计算中心软件工程实验室姓 名: 叶贝贝 学 号: 10401010447 班 级: 计科104 日 期: 2013-3-14一、实验目的掌握Oracle10g 数据用户的管理,学会用户的创建,掌握数据库权限的管理,学会对用户权限的授权和回收操作,掌握数据库角色的管理,学会角色的创建、授权等操作,会的角色权限管理。
掌握概要文件的管理,学会概要文件的创建、修改等操作。
二、实验环境安装有Oracle10g 数据库软件等的计算机。
三、实验内容1.用户管理操作 2.权限管理操作 3.角色管理操作 4.概要文件操作四、实验操作实验内容一: 一、创建用户1.创建用户名user3,口令user3,初始状态为locked(锁定)测试用户结果2.创建用户名user4,密码user4,初始状态为密码过期初次登陆需要更改密码测试用户二、修改用户1.将用户user3的口令设置为newuser3,并解锁帐户2.修改user4默认表空间为orcltbs1,分配额为2M,在users表空间分配额为5M三、删除用户实验内容二:一、系统权限的授权1.为public用户组授予create session系统权限2.为user1授予create session,create table,create view,授权后为user2授予create table二、系统权限的收回将user2的create table功能收回三、对象权限的授权对user1授予select,insert,update 权限四、对象权限的回收收回user1的select和update 权限实验内容三:一、创建角色创建高、中、低三种角色二、授权和回收权限三、删除权限四、对用户或角色授予角色和收回角色实验内容四:一、概要文件的创建创建名为res_profile概要文件,要求最多创建4个并发会话,可持续60分钟/会话,并且20分钟内空闲,结束会话,每个会话私有SQL空间100k 每句占CPU不超过10秒。
Oracle数据库 实验报告
在SQL*PLUS或PL/SQL Developer工具中编写PL/SQL的简单程序,熟悉PL/SQL的编程环境和代码结构。实现与Oracle数据库交互,并捕获和处理常见系统异常和用户自定义异常。
3.主要仪器设备及软件
1)PC
2)ORACLE数据库
-------------------------------------------------------------------------
实现下面功能:
使用游标实现:将某门课程高于平均分的学生的姓名,课程名,成绩格式化输出。
3.主要仪器设备及软件
1)PC
2)ORACLE数据库
-------------------------------------------------------------------------
实验一 了解ORACLE环境,使用ORACLE数据库实用工具
( 验证性实验 4学时)
1.目的要求:
了解ORACLE数据库的各个常用工具软件
2.实验内容:
在ORACEL数据库下使用SQL*PLUS ,SQL*PLUS Worksheet,PL/SQL Developer工具,企业管理器等实用工具与Oracle交互。并在企业管理器中观察ORACLE的底层存储原理。在PL/SQL Developer中书写简单的SQL语言。
3.主要仪器设备及软件
1)PC
2)ORACLE数据库
-------------------------------------------------------------------------
实验六 触发器,序列及同义词
( 验证性实验 6学时)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验三 oracle对象管理及使用
一、实验目的及要求
掌握Oracle的常用对象的操作方法。
会使用常用对象解决一些实际问题。
二、实验主要内容
(1)表结构的建立、修改、查看、删除操作。
(2) 索引的建立、修改、查看、删除操作。
(3) 视图的建立、查询、修改、删除操作。
(4) 同义词的建立、查询、修改、删除操作,比较对同义词的操作与对原数据库对象的操作是否一致。
(5) 掌握序列的建立、查询、修改、删除操作,利用序列向数据库表中插入数据。
三、实验仪器设备
在局域网环境下,有一台服务器和若干台客户机。
服务器成功安装Oracle 11g数据库服务器(企业版),客户机成功安装Oracle 11g客户端软件,网络服务配置正确,数据库和客户端正常工作。
四、实验步骤
1.创建表结构
利用命令行方式将下列各表建立到员工医疗保险系统数据库中。
表结构如附录员工医疗保险系统表1-表7所示。
2.查看表结构
(2) 利用SQL*Plus或PL/SQL Developer从数据字典DBA_TAB _COLUMNS查看员工医疗保险系统所有表的字段信息。
(3) 利用SQL*Plus或PL/SQL Developer从数据字典DBA_ CONSTRAINTS查看员工医疗保险系统所有表的约束信息。
3.修改表结构
(1) 利用SQL*Plus或PL/SQL Developer将表“staff_sql”重新命名为“staff_sql0”。
(2) 利用企业管理器为“staff_sql0”表添加“age INT”字段,利用DESC命令查看“staff_sql0”表的字段信息。
(3) 利用SQL*Plus或PL/SQL Developer为“staff_sql0”表添加“salary NUMBER(5,2)”、“salary_add NUMBER(3,1)”两个字段,利用DESC命令查看“staff_sql0”表的字段信息。
(4) 利用SQL*Plus或PL/SQL Developer向“staff_sql0”表添加“sname”字段惟一性约束,从数据字典DBA_CONSTRAINTS查看“staff_sql0”表的约束信息。
(5) 利用SQL*Plus或PL/SQL Developer删除“staff_sql0”表上“sname”字段惟一性约束,从数据字典DBA_CONSTRAINTS查看“staff_sql0”表的约束信息。
(6) 利用企业管理器从“staff_sql0”表删除“age”字段,利用DESC命令查看“staff_sql0”表的字段信息。
(7) 利用SQL*Plus或PL/SQL Developer从“staff_sql0”表删除“salary”、“salary_add”两个字段,利用DESC命令查看“staff_sql0”表的字段信息。
(8) 利用SQL*Plus或PL/SQL Developer将“staff_sql0”表“sname”字段长度修改为30,利用DESC命令查看“staff_sql0”表的字段信息。
4.删除表结构
(1) 利用SQL*Plus或PL/SQL Developer删除员工表3,看能否成功。
从原理上解释原因,同时记录外键约束表删除顺序的影响。
没有数据不足以引发外键冲突,可以删除
然而插入数据,直接删除时若引发外键冲突,就无法删除了staff表外键没有设置级联删除索引、视图、同义词及序列操作
1.创建索引
(1) 利用企业管理器为医院表的医院名称创建索引,并以降序排列,索引名为
“hospital_name_index”。
(2) 利用SQL*Plus或PL/SQL Developer为员工表的员工姓名、员工性别、出生年月排序,以员工姓名升序、员工性别降序、出生年月降序排列,索引名为“staff_info_index”。
2.查看索引
(2) 利用SQL*Plus或PL/SQL Developer从DBA_INDEXES数据字典中查看员工医疗保险系统所有索引的信息。
(3) 利用SQL*Plus或PL/SQL Developer从DBA_INDEXES数据字典中查看
“staff_info_index”索引的信息,并查看该索引列的顺序及状态。
3.删除索引
(1) 利用企业管理器删除“hospital_name_index”索引。
(2) 利用SQL*Plus或PL/SQL Developer将“staff_info_index”索引删除。
4.创建视图
(1) 利用企业管理器为实现显示医保卡信息创建视图,该视图中包括医保卡信息、医保卡所属人信息和所属人单位信息,视图名为“ygbx_card_view”。
(2) 利用SQL*Plus或PL/SQL Developer为实现员工持医保卡到医院消费的功能创建视图,该视图中包括员工的信息、医保卡信息、医保信息和消费等信息,视图名为“consume_view”。
(3) 利用SQL*Plus或PL/SQL Developer为企业医保缴费信息功能创建视图,该视图中包括医保缴费的企业信息,医保卡信息和企业医保缴费费用等信息,视图名为“insurnce_view”。
(4) 利用SQL*Plus或PL/SQL Developer为企业表创建视图,视图名为“business_view”。
5.查看视图
(2) 利用企业管理器查看“consume_view”视图的信息。
(3) 利用SQL*Plus或PL/SQL Developer查看“card_view”视图的子查询语句。
(4) 利用SQL*Plus或PL/SQL Developer显示“insurance_view”视图的信息。
6.视图数据的更新
(1) 利用SQL*Plus或PL/SQL Developer向“business_view”插入一个记录,企业编号为“B1997010287”,企业名称为“格林制药”,企业类型为“企业”,企业地址为“鸭绿江街98号”,
联系电话为“84692315”。
(2) 利用SQL*Plus或PL/SQL Developer查看“business”表是否有变化。
7.删除视图
(1) 利用企业管理器删除“business_view”视图。
(2) 利用企业管理器删除“card_view”视图。
(3) 利用SQL Plus或PL/SQL Developer删除“consume_view”视图。
(4) 利用SQL Plus或PL/SQL Developer删除“insurnce_view”视图。
8.创建同义词
(2) 利用SQL*Plus或PL/SQL Developer创建医保卡表的同义词,名为“ybk”。
9.查询同义词
(2) 利用SQL*Plus或PL/SQL Developer查看同义词“ybk”。
10.删除同义词
(1) 利用企业管理器删除同义词“qyb”。
(2) 利用SQL*Plus或PL/SQL Developer删除同义词“ybk”。
11.创建序列
(2) 利用SQL*Plus或PL/SQL Developer创建序列,该序列最大值无限制,最小值为“1”,步长为“10”,序列名为“ygbx_seq2”。
12.查询序列
(2) 利用SQL*Plus或PL/SQL Developer查看同义词“ygbx_seq2”。
13.修改序列
利用SQL*Plus或PL/SQL Developer修改序列“ygbx_seq2”,将该序列最大值设为“1000”。
14.删除序列
(2) 利用SQL*Plus或PL/SQL Developer删除序列“ygbx_seq2”。