四川师范大学《oracle》实验报告

合集下载

oracle数据库实验报告

oracle数据库实验报告

oracle数据库实验报告《Oracle数据库实验报告》在当今信息化时代,数据库管理系统扮演着至关重要的角色。

Oracle数据库作为全球领先的企业级数据库管理系统,在各行各业都有着广泛的应用。

本次实验旨在通过对Oracle数据库的实验操作,深入了解其基本功能和特点,并探讨其在实际应用中的优势和局限性。

实验一:数据库的创建与连接在实验中,我们首先学习了如何使用SQL命令创建一个新的数据库,并通过用户名和密码连接到该数据库。

通过这一步骤,我们了解了Oracle数据库的基本操作流程,包括数据库的创建、用户的授权和连接等。

实验二:数据表的创建与管理在本次实验中,我们学习了如何使用SQL命令创建数据表,并进行数据的插入、查询、更新和删除操作。

通过这些操作,我们深入了解了Oracle数据库的数据管理功能,包括数据表的设计和维护等。

实验三:索引的创建与优化索引是数据库中非常重要的组成部分,能够提高数据的检索效率。

在本次实验中,我们学习了如何使用SQL命令创建索引,并通过优化查询语句来提高数据库的性能。

这些操作让我们更加深入地了解了Oracle数据库的优化功能,以及如何通过索引来提高数据库的性能。

实验四:备份与恢复数据库的备份与恢复是数据库管理中至关重要的一环。

在本次实验中,我们学习了如何使用Oracle数据库提供的工具进行数据库的备份和恢复操作。

这些操作让我们了解了数据库的灾难恢复功能,以及如何保障数据的安全性。

通过本次实验,我们深入了解了Oracle数据库的基本操作和功能,包括数据库的创建与连接、数据表的管理、索引的优化以及备份与恢复等。

同时,我们也发现了Oracle数据库在实际应用中的优势,如稳定性、安全性和性能优化等方面。

然而,我们也意识到Oracle数据库在一些特定场景下存在一定的局限性,如高昂的成本、复杂的配置和维护等。

总的来说,本次实验让我们更加深入地了解了Oracle数据库的特点和功能,对我们今后的数据库管理工作有着重要的指导意义。

Oracle实验报告模板

Oracle实验报告模板

实验报告实验名称:数据库的管理实验课时:2课时实验地点:知行楼305实验时间:年月日星期第周实验目的及要求:1)了解Oracle数据库的逻辑结构和物理结构。

2)熟悉Oracle的命令操作环境SQL*PLUS。

3)了解启动和关闭数据库的不同方式及其优缺点。

4)熟悉掌握各种启动、关闭方式。

实验环境:1)硬件设备:PC机一台2)操作系统:Windows XP3)应用工具:Oracle 11g实验内容:(算法、程序、步骤和方法)1、SQL*Plus的启动与关闭2、关闭数据库3、启动数据库4、改变数据库的状态5、使用DBCA创建数据库6、思考题小结:通过这次上机实验,我有以下收获:但是还上机操作过程中还存在以下几个方面的不足:指导老师评议:成绩:指导老师签名:年月日实验报告实验名称:表的管理实验课时:4课时实验地点:实验时间:年月日星期第周实验目的及要求:1)了解Oracle表和视图的概念。

2)熟练掌握使用SQL语句创建表。

3)学习使用SELECT语句查询数据。

实验环境:4)硬件设备:PC机一台5)操作系统:Windows XP6)应用工具:Oracle 11g实验内容:(算法、程序、步骤和方法)1)创建用户,指定密码、表空间。

用户名命名以本人姓名的缩写+_+学号后两位命名。

代码如下:2)创建如下表,将表保存到自己的用户方案中。

代码如下:3)为各表输入数据。

代码如下:4)查询每门课程被选修的学生数。

代码如下:5)查询出只选修了一门课程的全部学生的学号和姓名。

代码如下:6)查询男生、女生人数。

代码如下:7)查询姓“张”的学生名单。

代码如下:8)查询同名同姓学生名单,并统计同名人数。

代码如下:9)查询1981 年出生的学生名单。

代码如下:10)查询每门课程的平均成绩,结果按平均成绩升序排列,平均成绩相同时,按课程号降序排列。

代码如下:11)查询平均成绩大于85 的所有学生的学号、姓名和平均成绩。

代码如下:12)统计每门课程的学生选修人数(超过10 人的课程才统计)。

《Oracle数据库》实验报告

《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实训报告

oracle实训报告

oracle实训报告oracle实训报告Unix与数据库课程专业计算机应用技术学号308020xx533姓名赵彬彬实训内容:oracle9i在红旗4.1平台上的安装一.Oracle9.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)创建目录#mkdirp/oracle/binbin/product/9.2.0(3)配置虚拟机的网卡为桥接模式,配置id地址为192.168.1.54。

利用ping 命令,测试主机是否与linux通信。

利用xftp工具,将上面四个文件传入oracle 目录下。

(4)用putty登陆linux。

创建安装Oracle数据库所要求的Linux用户和组:用户名oracle/oracle、组dba#groupadddba#useraddgdbaoracle#passwdoracle输入oracle再次确认密码(5)oracle用户需要对/oracle目录有全部权限,修改/oracle目录的所有者为oracle用户所有。

#chownRoracle:dba/oracle(6)以oracle用户登录系统,修改oracle用户主目录下的.bash_profile 文件,增加以下内容:#vi/home/oracle/.bash_profileexportORACLE_BASE=/oracle/binbinexportORACLE_HOME=/oracle/binbin/product/9.2.0exportORACLE_SID=binbinexportNLS_LANG=“SIMPLIFIEDCHINESE_CHINA.ZHS16GBK”expor tPATH=$ORACLE _HOME/bin:$PATHexportORACLE_DOC=$ORACLE_HOME/docCLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib CLASSPATH=$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:.ex portCLASSPATHif[!$LD_LIBRARY_PATH];thenLD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib:$ORACLE_HOME/jd bc/libexportLD_LIBRARY_PATHfiulimit-n65535>/dev/null2>&1(7)以root登录系统为操作系统打补丁。

Oracle实训报告

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技术》实验报告5(答案)1

《Oracle技术》实验报告5(答案)1

《Oracle技术》实验报告实验名称PL/SQL编程(选作10题,程序另加附页)姓名学号日期专业班级实验目的(1)了解PL/SQL块的基本结构和分类。

(2)熟练掌握编写PL/SQL块的方法。

(3)了解PL/SQL存储过程、触发器、游标的作用。

(4)熟练掌握编写PL/SQL存储过工程的方法及维护过程。

(5)熟练掌握创建触发器的方法及维护过程。

(6)孰练掌握显式游标和隐式游标的使用。

实验内容(1)编写一个PL/SQL块,输出所有员工的员工名、员工号、工资和部门号。

BEGINFOR v_emp IN (SELECT * FROM EMP) LOOP DBMS_OUTPUT.PUT_LINE(v_emp.ename||’‘||v_emp.empno|| ’‘||v_emp.sal||’‘|| v_emp.deptno);END LOOP;END;/(2)编写一个PL/SQL块,查询名为“SMITH”的员工信息,并输出其员工号、工资、部门号。

如果该员工不存在,则插入一条新记录,员工号为2007,员工名为“SMITH”,工资为1500,部门号为10。

如果存在多个名为“SMITH”的员工,则输出所有名为“SMITH”的员工号、工资和部门号。

成绩DECLAREV_empno emp.empno%type;V_sal emp.sal%type;V_deptno emp.deptno%type;BEGINSELECT empno,sal,deptno INTOV_empno,v_sal,v_deptno FROM emp WHERE ename=’SMITH’;DBMS_OUTPUT.PUT_LINE(v_empno||’’||v_sal||’’||v_dept no);EXCEPTIONWHEN NO_DATA_FOUND THENINSERT INTO EMP(empno, ename,sal,deptno)V ALUES(2007,’SMITH’,1500,10);WHEN TOO_MANY_ROWS THENFOR v_emp IN (SELECT empno,sal,deptno FROM emp WHERE ename=’SMITH’) LOOPDBMS_OUTPUT.PUT_LINE(v_emp.empno||’‘||v_emp.sal|| ’‘||v_emp.deptno);END LOOP;END;/(3)创建一个存储过程,以员工号为参数,输出该员工的工资。

Oracle实验报告

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总实验报告

实验一Oracle数据库创建及SqlPlus的启动与退出一、实验目的1、掌握使用DBCA建立、删除和管理数据库模板;2、掌握sqlplus工具的启动和退出;二、实验内容1、用DBCA建立数据库;2、用DBCA删除数据库;3、用SQL Plus测试数据库正确;4、用DBCA管理数据库模板;5、基于DOC方式启动和退出sqlplus(1)单击“开始”菜单,选择运行选项,在运行对话框中输入cmd,进入Dos控制台以后在提示符下键入sqlplus-?比如:sqlplus scott/tiger@sa(2)在sql提示符下使用输入查询语句“select * from scott.emp”。

(3)执行完成后,输入quit或exit命令返回Dos控制台。

6、基于Windows方式启动与关闭sqlplus(1)单击“开始”按钮,在程序组中选择\Oracle-orahome92\application development\sql plus 选项。

在打开的对话框中输入用户名、密码和服务器名进行登陆。

(2)当成功连接后,可以来验证:比如输入查询语句:select * from scott.emp。

(3)使用Disconnect命令中断与数据库的会话连接;如果再次连接可以使用Connect命令。

比如输入connect system/manager@sa。

(4)如果想更改口令,可以使用Password命令。

(5)如果想从SQL*PLUS中退出,在SQL提示下输入Quit或Exit返回到Windows界面。

三、实验过程与步骤:1、用DBCA建立数据库;(1) 启动DBCA后,出现欢迎画面后,选择创建数据库,单击下一步。

(2) 选择数据库类型(3) 输入全局数据库名称和SID(4)设置数据库选项(5)创建数据库过程2、用DBCA删除数据库;过程同建立数据库相同,在选择时,要选择删除数据库。

3、用SQL Plus测试数据库正确;(使用Connect命令)4、用DBCA管理数据库模板;过程:开始——所有程序——DBCA——管理模板——下一步……5、基于DOC方式启动和退出sqlplus(1)单击“开始”菜单,选择运行选项,在运行对话框中输入cmd,进入Dos控制台以后在提示符下键入sqlplus-?比如:sqlplus scott/tiger@sa(2)在sql提示符下使用输入查询语句“select * from scott.emp”。

ORACLE实验报告完结版

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 实验报告

oracle 实验报告Oracle 实验报告导言:Oracle 是一种关系型数据库管理系统,被广泛应用于企业级应用中。

本实验报告旨在探讨 Oracle 数据库的基本概念、功能和使用方法,并通过实际操作来验证其性能和可靠性。

一、Oracle 数据库的概述Oracle 数据库是一种基于客户机/服务器模型的数据库管理系统。

它采用了关系模型来组织和管理数据,支持 SQL 查询语言,并提供了高度可扩展的架构。

Oracle 数据库的核心特点包括数据安全性、高性能、可靠性和可扩展性。

二、Oracle 数据库的安装与配置1. 安装 Oracle 数据库软件:在实验环境中,我们选择了 Oracle Database 19c 版本。

安装过程中需要选择适当的配置选项,并设置管理员密码。

2. 配置数据库实例:通过 Oracle 数据库配置助手(Database Configuration Assistant)创建数据库实例,并进行必要的参数设置和存储空间分配。

三、Oracle 数据库的基本操作1. 创建表和插入数据:使用 SQL 语句创建表,并通过 INSERT 语句插入数据。

可以定义各种数据类型、约束和索引来确保数据的完整性和性能。

2. 查询数据:使用 SELECT 语句查询数据库中的数据。

可以通过条件、排序和连接等操作来获取所需的结果集。

3. 更新和删除数据:使用 UPDATE 和 DELETE 语句来更新和删除数据库中的数据。

可以根据需要设置事务和回滚机制,确保数据的一致性。

4. 数据库备份和恢复:通过 Oracle 数据库管理工具进行数据库备份和恢复操作。

可以选择全量备份、增量备份或逻辑备份等方式来保护数据的安全性。

四、Oracle 数据库的高级功能1. 数据库性能优化:通过分析 SQL 语句的执行计划和索引的使用情况,优化查询性能。

可以使用索引、分区、缓存和并行处理等技术来提高数据库的响应速度。

2. 数据库安全性管理:通过用户和角色管理来控制对数据库的访问权限。

oracle实验报告

oracle实验报告

oracle实验报告模板实验 1数据库管理一、目的和要求(1)了解 Oracle 数据库的逻辑结构和物理结构;(2)了解 Oracle Enterprise Manager 的使用情况;(3)学习关闭和启动数据库实例的方法;(4)学习使用 SQL 语句创建数据库的方法;(5)学习使用 SQL 语句删除数据库的方法。

二、实验准备Enterprise Manager 10g 是 Oracle 10g 提供的新的管理工具,简称 EM。

使用它可以完成启动、关闭数据库,创建、删除数据库等功能。

只有系统管理员或拥有 CREAT E DATABASE权限的用户才能创建数据库。

可以在 Enterprise Manager 中通过图形界面创建数据库,也可以使用 CREATE DATABASE 语句创建数据库。

三、实验内容(1)练习使用不同方法启动和关闭数据库实例。

(2)练习使用不同方法创建和删除数据库,要使操作的数据库为用户管理数据库UserMan。

练习使用 SHUTDOWN 命令关闭数据库实例,分别按以下方式启动数据库实例。

(1)正常关闭。

等待当前所有已连接的用户断开与数据库的连接,然后关闭数据库。

正常关闭的语句如下:SHUTDOWN NORMAL(2)立即关闭。

回退活动事务处理并断开所有已连接的.用户,然后关闭数据库。

立即关闭的语句如下:SHUTDOWN IMMEDIATE(3)事务处理关闭。

完成事务处理后断开所有已连接的用户,然后关闭数据库。

事务处理关闭的语句如下:SHUTDOWN TRANSACTIONAL(4)中止关闭。

中止数据库实例,立即关闭数据库。

中止关闭的语句如下:SHUTDOWN ABORT每次执行 SHUTDOWN 语句关闭数据库实例之前,请执行 STARTUP 命令启动数据库。

2.使用 STARTUP 命令启动数据库实例练习使用 STARTUP 命令启动数据库实例,分别按以下方式启动数据库实例。

Oracle实验报告

Oracle实验报告

Oracle数据库实验报告实验一:Oracle 10g安装卸载及相关工具配置一、实验目标:安装Oracle 10g,了解OEM,通过DBCA安装数据库,通过DBCA删除数据库,sqldeveloper连接数据库,卸载oracle 10g。

二、实验学时数2学时三、实验步骤和内容:1、安装Oracle10g(默认安装数据库)双击,选择基本安装,安装目录D:盘,标准版,默认数据库orcl,口令bhbh。

进入先决条件检查界面时:网络配置需求选项不用打勾,直接下一步,是。

直到安装成功。

2、登陆和了解OEM主要是已网页的形式来对数据库进行管理。

- OraDb10g_home1->配置和移植工具->Database Configuration Assistant->删除数据库->……4、通过DBCA安装数据库xscj程序->Oracle - OraDb10g_home1->配置和移植工具->Database Configuration Assistant->创建数据库->……5、sqldeveloper连接数据库打开sqldeveloper,新建连接连接名:system_ora用户名:system口令:bhbh主机名:本机计算机名SID:xscj测试,显示成功,连接,保存。

6、卸载oracle 10gWindows下1>停止所有Oracle服务,点Universal Installer卸载2>删除注册表中的所有关于Oracle项在HKEY_LOCAL_MACHINE\SOFTWARE下,删除Oracle目录3>删除硬盘上所有Oracle文件。

(1)Oracle安装文件(2)系统目录下,在Program files文件夹中的Oracle文件四、上机作业根据实验步骤完成逐个实验目标中的任务。

五、心得体会通过这次的实验,我了解了oracle数据库的情况。

oracle实验报告

oracle实验报告

《Oracle数据库设计与实现》总结报告成绩:--------------学号:--------------姓名:----------------班级:-------------任课教师:-----------------2014-12-212、内容要求:1)课程体系总结(总结一学期所收获的课堂知识—---按章节进行)第一章:oracle简介主要是对oracle进行了总体的介绍,首先介绍了一些关系数据库的理论基础知识,并对oracle数据库提供的网络技术进行了介绍。

本章还对oracle的应用结构以及安装时的注意事项及常用的管理工具进行了讲解。

在关系数据库的基本理论中,我了解到了数据库系统经历了由层次模型到网状模型再由网状模型到关系模型的发展过程。

关系数据库主要由三部分构成:数据结构,关系操作和完整性规则。

在关系数据库的设计阶段,需要为它建立逻辑模型,关系数据库的逻辑模型可以通过实体和关系组成的图来表示,即E-R图。

使用E-R图表示的逻辑模型就是E-R模型,一个完整的E-R模型主要由实体,联系和属性组成。

这章中还介绍了关系数据库的设计规范和网格技术,网格计算是一种造价低廉而且数据处理能力超强的一种计算模式,它是随着互联网而发展起来的,实际上它也是分布式计算的一种,还介绍了oracle的网格体系结构。

Oracle的应用结构比较常用的有多数据库的独立宿主结构,客户机/服务器结构和分布式结构,我们在安装部署oracle数据库时需要根据硬件平台和操作系统的不同采取不同的结构。

最后了解到了Oracle的在Windows的安装与配置。

第二章:oracle的体系结构在这章中主要学习了oracle数据库系统的体系结构和基本理论。

数据库的体系结构是从某一角度来分析数据库的组成和工作过程,以及数据库如何管理和组织数据。

通过本章的学习,我对oracle数据库的物理和逻辑储存方式有了一个基本的认识,理解了这两种储存方式的基本概念与组成结构,还了解了数据库的组成。

oracle实验四

oracle实验四

课程名称Oracle数据库系统设计实验序号04实验项目子查询与高级查询实验地点综B502实验学时 2 实验类型操作性指导教师侯睿实验员专业_计算机科学与技术(师范)班级学号姓名2014年5 月26 日实验报告要求1、实验报告封面填表说明(每份实验报告必须附上封面)(1)课程名称:要求与实验大纲和实验指导书中的课程名称一致。

(2)实验序号:指该课程的第几个实验。

(3)实验项目:要求与实验大纲和实验指导书中的实验项目一致。

(4)实验地点:填写完成该实验项目所在的实验室名称。

(5)实验学时:要求与实验大纲和实验指导书中完成该实验项目所需学时一致。

(6)实验类型:是指演示性、操作性、验证性、综合性、设计性。

演示性:教师操作,学生观察,验证理论、说明原理和方法。

操作性:学生按要求动手拆装、调试实验装置或上机操作,掌握其基本原理和方法。

验证性:按实验指导书(教材)要求,由学生通过操作验证所学理论,加深对理论、知识的理解,掌握基本实验知识、方法、技能、数据处理等。

综合性:实验内容涉及本课程的综合知识或相关课程的知识,运用多的知识、多种方法,按要求或自拟实验方案进行实验。

主要培养学生综合运用所学知识、实验方法和实验技能,以培养其分析、解决问题的能力。

设计性:给定实验目的、要求和实验条件,学生自己设计实验方案并加以实现的实验。

学生独立完成从查阅资料、拟定实验方案、实验方法和步骤(或系统分析和设计)、选择仪器设备(或自行设计缺制作)进行实验并完成实验全过程,形成实验报告,培养学生自主实验的能力。

3、教师批改学生实验报告要求(1)批改:全部批改及更正错误。

(2)评分:按百分制评分,不能评分为“优、良、中、差”或“A、B、C”。

(3)签名及批改日期:任课教师必须在每份学生实验报告中签名和写上批改日期。

(4)成绩:填写学生实验成绩表,实验成绩作为考试成绩评定的依据。

(4)评语:任课教师批改学生实验报告时,应给出简明扼要的评语。

oracle实验报告模板实验报告

oracle实验报告模板实验报告

Oracle实验报告模板实验报告实验内容本次实验旨在掌握Oracle实验报告编写方法。

在本次实验中,我们将学会如下内容:1.如何使用Markdown文本格式编写Oracle实验报告;2.如何基于Oracle数据库平台进行实验。

实验环境与要求1.操作系统:Windows 7或以上版本;2.软件工具:Oracle Database 11g Release 2 Express Edition (XE);3.组件:Oracle SQL Developer;4.实验操作时间:3小时。

实验步骤1.下载安装Oracle Database 11g Release 2 Express Edition (XE)和Oracle SQL Developer软件。

2.创建下载好的Oracle数据库,设置用户名、密码和端口。

3.启动Oracle SQL Developer软件,连接到Oracle数据库。

4.在Oracle SQL Developer中创建一个新的数据库用户,并将其授权给数据库。

5.进行一些简单的SQL查询,如查询所有表、视图和索引的列表,以及一些常见的查询指标,如平均值、总计和最大值。

6.通过执行一些基本的SQL语句来创建表、插入数据,查询数据和删除数据。

7.测试Oracle数据库的性能和可靠性,如测试多用户并发操作的响应时间、测试数据备份和恢复功能等。

实验结果与分析运行实验步骤完成所有操作后,我们得到了如下结果:1.成功创建了一个下载好的Oracle数据库实例,并将数据库用户名、密码和端口设置正确。

2.成功启动了Oracle SQL Developer,并连接到了Oracle数据库。

3.成功创建了一个新的用户,并将其授权给数据库。

4.成功执行了一些简单的SQL查询。

5.成功创建了一些新的表,并成功插入了一些数据,并使用SQL语句成功对这些数据进行了查询和删除操作。

6.成功对Oracle数据库进行了性能和可靠性测试,并测试了数据备份和恢复功能。

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对象管理及使用一、实验目的及要求掌握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技术》实验报告5(答案)1资料

最新《Oracle技术》实验报告5(答案)1资料

《Oracle技术》实验报告实验名称PL/SQL编程(选作10题,程序另加附页)姓名学号日期专业班级实验目的(1)了解PL/SQL块的基本结构和分类。

(2)熟练掌握编写PL/SQL块的方法。

(3)了解PL/SQL存储过程、触发器、游标的作用。

(4)熟练掌握编写PL/SQL存储过工程的方法及维护过程。

(5)熟练掌握创建触发器的方法及维护过程。

(6)孰练掌握显式游标和隐式游标的使用。

实验内容(1)编写一个PL/SQL块,输出所有员工的员工名、员工号、工资和部门号。

BEGINFOR v_emp IN (SELECT * FROM EMP) LOOP DBMS_OUTPUT.PUT_LINE(v_emp.ename||’‘||v_emp.empno|| ’‘||v_emp.sal||’‘|| v_emp.deptno);END LOOP;END;/(2)编写一个PL/SQL块,查询名为“SMITH”的员工信息,并输出其员工号、工资、部门号。

如果该员工不存在,则插入一条新记录,员工号为2007,员工名为“SMITH”,工资为1500,部门号为10。

如果存在多个名为“SMITH”的员工,则输出所有名为“SMITH”的员工号、工资和部门号。

成绩DECLAREV_empno emp.empno%type;V_sal emp.sal%type;V_deptno emp.deptno%type;BEGINSELECT empno,sal,deptno INTOV_empno,v_sal,v_deptno FROM emp WHERE ename=’SMITH’;DBMS_OUTPUT.PUT_LINE(v_empno||’’||v_sal||’’||v_dept no);EXCEPTIONWHEN NO_DATA_FOUND THENINSERT INTO EMP(empno, ename,sal,deptno)V ALUES(2007,’SMITH’,1500,10);WHEN TOO_MANY_ROWS THENFOR v_emp IN (SELECT empno,sal,deptno FROM emp WHERE ename=’SMITH’) LOOPDBMS_OUTPUT.PUT_LINE(v_emp.empno||’‘||v_emp.sal|| ’‘||v_emp.deptno);END LOOP;END;/(3)创建一个存储过程,以员工号为参数,输出该员工的工资。

Oracle数据库 实验报告

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

声明:此文档只作为学习参考,不得用作它途!实验一了解ORACLE环境,使用ORACLE数据库实用工具1.目的要求:了解ORACLE数据库的各个常用工具软件2.实验内容:在ORACEL数据库下使用SQL*PLUS ,SQL*PLUS Worksheet,PL/SQL Developer 工具,企业管理器等实用工具与Oracle交互。

并在企业管理器中观察ORACLE的底层存储原理。

在PL/SQL Developer中书写简单的SQL语言。

3.主要仪器设备及软件1)PC2)ORACLE数据库实验二熟悉SQL语言1.目的要求在SQL*PLUS或PL/SQL Developer工具中编写SQL语句2.实验内容在ORACLE 数据库中定义用户,给用户赋权限,创建,修改和删除表格,视图等数据库对象,并向表格中插入,修改和删除数据。

体会SQL语言中ORACLE的“方言”。

对自己建立的表做查询:包括单表查询,多表查询,嵌套查询,分组查询,相关查询3.主要仪器设备及软件1)PC2)ORACLE数据库自定义用户:create user taozi identified by taozi;给用户赋DBA权限:grant dba to taozi;创建表格 student,sc,course:Create table student(sno char(10) primary key,sname varchar(20) not null,sage smallint,ssex char(2),sdept varchar(20));Create table course(cno char(10) primary key,cname varchar(50) not null,credit smallint);Create table sc(sno char(10),cno char(10),grade smallint,primary key(sno,cno));创建视图:create view oracle as (select sno,sname,sage from student);删除视图:delete oracle;为student 表增加一列 jiguan: alter table student add jiguan varchar(10);删除jiguan 列:alter table student drop column jiguan;删除student 表结构:drop table student;插入数据:insert into student values('004','AA','21','f','MA');insert into student values('005','BB','20','m','CS');insert into student values('006','CC','20','m','E');修改数据:update student set sname='DD' where sno='006';删除数据:delete student where sno='004' or sno='005' or sno='006';单表查询select * from student where sno='009';多表查询:查询001号学生选修课成绩大于或等于85分的课程名及成绩select sname,cname,grade from student,sc,course where student.sno='001' and grade>=85;嵌套查询:查询选修了软件工程学生的学号select sc.sno from sc,course where o=o ando=(select cno from course where cname='软件工程');分组查询:查询所有学生的姓名、所选课程的课程名,课程号和成绩,并按成绩降序和课程号升序排序。

select sname,cname, o,grade from student sc,course student where sc.sno=s.sno and o=o order by grade desc,cno asc;相关查询:查询所有学生都选修了的课程名及课程号select cno from sc group by cno having count(*)>=(select count(*) from student );实验三实现简单的PL/SQL程序1.目的要求编写简单的PL/SQL程序,熟悉PL/SQL编程环境2.实验内容在SQL*PLUS或PL/SQL Developer工具中编写PL/SQL的简单程序,熟悉PL/SQL 的编程环境和代码结构。

实现与Oracle数据库交互,并捕获和处理常见系统异常和用户自定义异常。

3.主要仪器设备及软件1)PC2)ORACLE数据库预定义异常处理查询课程“java”的课程号,若未成功,则提示异常v_cno varchar(40);beginselect cno into v_cno from course where cname='java';dbms_output.put_line('java对应的课程号是:'||v_cno);exception when no_data_found thendbms_output.put_line('该课程不存在。

');end;查询既选修了001又选修了002课程的学生的学号,未成功则提示:该学生不存在。

declarev_sno varchar(40);beginselect sno into v_sno from sc where cno='001'and sno=(select sno from sc where cno='002');dbms_output.put_line('既选修了001又选修了002课程的学生:'||v_sno);exception when no_data_found thendbms_output.put_line('ERROR:该学生不存在!');end;查询“周源”的学号,若未成功,则插入‘周源’信息:学号59,性别F,学院CS 查询既选修了001又选修了002课程的学生的学号,未成功则提示:该学生不存在。

declarev_sno varchar(40);beginbeginselect sno into v_sno from student where sname='DD';dbms_output.put_line('DD的学号是:'||v_sno);exception when no_data_found thendbms_output.put_line('error:该学生不存在,插入该学生信息');insert into student(sno,sname,ssex,sdept) values('59','DD','F','CS');commit;end;select sno into v_sno from sc where cno='001'and sno=(select sno from sc where cno='002');dbms_output.put_line('既选修了001又选修了002课程的学生:'||v_sno);exception when no_data_found thendbms_output.put_line('ERROR:该学生不存在');end;exception when no_data_found thendbms_output.put_line(sqlerrm);end;实验四在PL/SQL中使用游标1.目的要求在PL/SQL中使用无参数的游标和带参数的游标处理结果集2.实验内容在PL/SQL程序中使用游标来处理结果集,分别使用fetch, while和For循环来遍历查询结果集中的每一条记录,并对这些记录进行判断和处理,将处理的结果格式化打印出来。

使用带参数的游标来传递查询条件,使程序更加灵活实用。

实现下面功能:使用游标实现:将某门课程高于平均分的学生的姓名,课程名,成绩格式化输出。

3.主要仪器设备及软件1)PC2)ORACLE数据库--将某门课程高于平均分的学生的姓名,课程名,成绩格式化输出。

declarecursor c1 isselect s.sno,sname,o,cname,grade from student s,course c,scwhere s.sno=sc.sno and o=o and s.sno in(select sno from sc where grade>(select avg(grade) from sc wherecno=o)) order by s.sno asc;T c1%rowtype;a_sno varchar2(20):='null';beginopen c1;dbms_output.put_line(rpad(' ',15,' ')||rpad('=',30,'=')||rpad(' ',15,' '));dbms_output.put_line(rpad(' ',22,' ')||rpad('考试成绩信息',20,' '));dbms_output.put_line(rpad(' ',15,' ')||rpad('=',30,'=')||rpad(' ',15,' '));loopfetch c1 into T;exit when c1%notfound;if a_sno!=T.sno thendbms_output.put_line(rpad(' ',50,' '));dbms_output.put_line(rpad('--',50,'--'));dbms_output.put_line(rpad(' ',50,' '));dbms_output.put_line(rpad(' ',12,' ')||'学生姓名:'||T.sname);dbms_output.put_line(rpad(' ',5,' ')||rpad('=',30,'='));dbms_output.put_line(rpad('课程号',20,' ')||rpad('课程名',20,' ')||rpad('成绩',20,' '));dbms_output.put_line(rpad('=',10,'=')||rpad(' ',8,' ')||rpad('=',10,'=')||rpad(' ',9,' ')||rpad('=',10,'='));a_sno:=T.sno;end if;dbms_output.put_line(o||ame||T.grade);end loop;close c1;end;实验五实现过程,包,函数的编写1.目的要求使用PL/SQL语言编写过程,包和函数2.实验内容创建存储过程,包和函数,并能通过参数将结果传递出去。

相关文档
最新文档