oracle实验二

合集下载

oracle数据库实验报告

oracle数据库实验报告

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

oracle实验2广东技术师范学院 (1)

oracle实验2广东技术师范学院 (1)

广东技术师范学院实验报告学院: 专业:班级: 成绩:姓名:学号:组别:组员:实验地点:实验日期:指导教师签名:实验名称: Oralce 控制文件与日志文件管理一、 实验目的:1.了解初始化参数文件的作用、类型、参数的查看和修改方法;2.掌握数据库的启动和关闭状态及相应命令;3.通过常用的数据字典了解ORACLE 数据库的基本信息;4.掌握控制文件和日志文件的日常维护操作。

二、实验内容:1.启动和关闭数据库;2.查看数据库参数文件及常用参数;3.利用数据字典查看数据库基本信息;4.完成参数文件、控制文件和日志文件的基本操作; 三、实验步骤(说明代码及运行结果)1.启动SQL*PLUS ,作为SYSDBA 身份连接到数据库,查看数据库当前使用的参数文件名及常用参数设置;以DBA 身份登录数据库:查看数据库当前使用的参数文件名:查看数据库当前常用参数设置:2.在SQL*PLUS中通过数据字典了解数据库的总体信息和结构信息;3.练习PFILE 和SPFILE文件的创建;4.对控制文件进行查看、移动、备份操作(控制文件分散到三个不同的目录存放);对控制文件进行查看:对控制文件进行移动:(控制文件分散到三个不同的目录存放)对控制文件进行备份:5.对日志文件进行查看、增加组和成员、日志切换操作(设置三个日志组、每组两个成员,分散到两个不同的目录存放)。

对日志文件进行查看:对日志文件进行增加组:(设置三个日志组)。

对日志文件进行增加成员:(每组两个成员,分散到两个不同的目录存放)。

对日志文件进行日志切换操作:四、实验问题及原因1、建立日志文件组时,提示not logged on原因:没有登录,登录即可2、对日志文件进行增加成员时,只能一个个加,十分麻烦,目前未找到更好的方法。

《oracle 10g 数据库基础教程》实验报告

《oracle 10g 数据库基础教程》实验报告

《oracle 10g 数据库基础教程》实验报告实验名称:金融数据库技术实验二实验目的:远程登录数据库,使用OEM、SQL等方法创建表,熟悉创建语句实验内容:1、远程连接数据库。

2、用OEM管理表。

3、用SQL*Plus管理表。

4、Oracle数据操纵和查询实验步骤:远程登录显示用户创建用户要连接远程的网络数据库,先要在客户端上设定被连接的数据库服务器的Net服务名。

在客户端启动Net Configuration Assistant选择“本地Net服务名配置”。

添加服务器的IP可以创建具有个人特色的名字回到OEM登录界面配置完毕后回到OEM,进行表的创建等。

⏹以管理员身份登录OEM,为用户scott创建一个名称为employee的表,指定表空间example。

⏹该表包含以下属性:eno,ename,eage,sex,salary。

为其设置合适的数据类型和大小。

⏹为各属性设置如下约束:eno为主键,约束名称为T_PK。

在“管理”中寻找“表”进行创建,选择创建在方案上选择用户名,对象名为要创建的表名添加列名,添加束缚语句等。

在OEM界面完成表的创建和添加约束条件后,在SQL中查看表格情况⏹在sql plus命令行界面创建和管理表,并写出相应的SQL语句。

⏹创建一个表student,指定表空间为STU,占用空间大小为10M。

⏹表中的各列及约束仿照OEM表设置。

用SQL语句为表添加phone和birthdates属性,并为phone列添加unique约束。

输入信息:向student表中插入一行记录,姓名为serena,学号为5,其余信息与名为王霞的学生一样。

利用select子查询语句实现。

将学生李晨的phone改为139,birthdates改为22-6月-92。

将赵勇性别改为M。

实验总结:今天学习1、远程连接数据库。

2、用OEM管理表。

3、用SQL*Plus管理表。

4、Oracle 数据操纵和查询。

远程连接的难度在于,要分清楚服务器与客户端之间的差别。

《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数据库》实验报告二(2)

《Oracle数据库》实验报告二(2)

广东金融学院实验报告课程名称:Oracle数据库1四、实验步骤及结果(包含简要的实验步骤流程、结论陈述)1. 创建表空间 stu_tbsSQL>create tablespace stu_tbs2 datafile 'c:\finance_db\' size 25m online;创建用户 stuuser5SQL>create user stuuser5_sql identified by user2sql;SQL>alter user stuuser5_sql account lock;查看“stuuser+学号_sql”用户的信息SQL>select * from all_users;3查看该用户验证的方式DBA_USERS 数据字典中查看“stuuser+学号_sql”用户的默认表空间和临时表空间用企业管理器,修改“stuuser+学号”用户,验证方式为外部用户解锁,并修改密码SQL>alter user stuuser2_sql account unlock;SQL>alter user stuuser2_sql identified by sql2user;5授予“stuuser+学号_sql”用户“SYSOPER”系统权限SQL>grant sysoper to stuuser5_sql;sqlplus 收回用户在“SYSTEM”方案中对“help”表的查看、修改、删除等对象权限SQL>revoke select,alter,delete on from stuuser2;用 Ssqlplus 收回用户的“SYSOPER”系统权限SQL>revoke sysoper from stuuser2_sql;利用企业管理器查看所有表的字段信息和约束信息SQL>select * from DBA_TAB_COLUMNS;表数据编辑(用“stuuser+学号_sql”用户完成)①用“stuuser+学号”用户完成对“stuuser+学号_sql”用户的相关授权SQL> grant create session, create table to stuser5 with admin option;SQL> conn stuser5/orace;SQL> grant create session,create table to stuuser5_sql;对表中数据的编辑,包括添加、修改和删除SQL> create table Customer2 (CustomerNumber NUMBER(10,0) not null constraint pk primary key,3 CustomerName VARCHAR(10) not null,4 CustomerSex NCHAR(1) not null,5 CustomerIDCard CHAR(18) not null)SQL>insert into2 Customer (CustomerNumber, CustomerName, CustomerSex, CustomerIDCard)3 values('1','杨虹','女', '23216');SQL>update Customer set CustomerSex='女',CustomerName= '赵敏'2 where CustomerNumber=2;SQL>delete from Customer where CustomerName like '杨%';7利用 SQL*Plus 或 iSQL*Plus 实现对表中数据的各种实用性查询SQL> select * from Customer where CustomerNumber=19。

Oracle实验报告2答案

Oracle实验报告2答案

Oracle实验报告2答案《Oracle数据库技术》实验指导书2基本SELECT、WHERE和ORDER BY子句的使用实验要求1)掌握SQL*PLUS的基本使用.2)掌握SELECT语句的简单用法.3)掌握WHERE子句的用法。

4)掌握ORDER BY子句的用法。

实验步骤(1)登录到SQL*Plus,初始用户名:SCOTT,口令为TIGER。

(2)分别显示EMP﹑DEPT﹑SALGRADE表结构,并查看表中的数据.(3)创建一个查询显示每个雇员的姓名﹑工作﹑受雇日期及雇员编号,并且要将雇员编号作为第一列显示,最后将该SQL语句保存成文件plql.sql,并执行该脚本文件。

(4)将脚本文件plql.sql调取到SQL缓冲区,并将列标题设置为Emp #,Employee,Job及Hire Date,将SQL语句保存成文件plq2.sql,最后返回查询结果。

(5)创建一个查询显示工资大于2850美元的姓名及工资。

将该查询保存成脚本文件p2q1.sql,并执行该文件。

(6)修改脚本文件p2q1.sql,显示工资不在1500到2850美元之间的雇员的姓名及工资,并以p2q2.sql文件重新保存该查询。

(7)修改文件p2q2.sql,显示在10和30部门工作并且工资大于1500美元的雇员的姓名和工资,列标题显示为Employee和MonthlySalary,最后以p2q3.sql重新保存该文件,返回查询结果。

(8)修改脚本文件p2q3.sql显示奖金比工资多10﹪以上的雇员的姓名﹑工资及奖金。

将该查询保存成p2q4.sql脚本文件,并返回查询结果。

思考练习题1.下面的SELECT语句能成功执行吗?SQL>SELECT ename, job, sal Salary2 FROM emp;可以执行!2.下面的语句有三处错误,请纠正它们.SQL>SELECT empno,ename2 salary *12 ANNUAL SLARY3 FROM emp;3.创建一个查询EMP表中检索出不重复的工作名称4.创建一个查询显示雇员编号为7566 的雇员的姓名和部门编号。

orcle实验

orcle实验

哈尔滨工业大学华德应用技术学院实验报告课程名称:分布式数据库管理与实现系别:计算机应用技术系专业:数据库开发设计学号:1110111433姓名:于洋学期:2013-2014学年第一学期实验成绩:实验项目列表序号实验名称成绩1 实验一Oracle基本操作2 实验二Oracle中的表对象3 实验三Oracle中的各类对象及支持的SQL4 实验四PL/SQL和数据导入/导出56789101112指导教师签字:翟霞实验名称:实验一oracle基本操作实验时间: 2013.10.10实验地点: 教六505实验目的: 1.熟练掌握SQL*Plus的使用;2.熟悉oracle网络连接配置;3.掌握系统与对象权限管理;4.掌握DBAC创建数据库和表空间的维护;实验步骤:3.熟悉oracle目录结构,查看并写出当前机器中orcl数据库的数据文件、重做日志文件和控制文件的存放位置。

C:\Oracle\product\10.2.0\oracle\oracle6.使用sys登录SQL*Plus,查看系统中各表空间的状态,使用数据字典DBA_TABLESPACES,写出相关的命令。

Conn/@orcl as sysdbaSelect tablespace name,block_size,status,segment_space_managementFrom dba_tablespaces7.使用scott登录SQL*Plus,查看该用户下有哪些表,并查看dept表和emp表结构以及表中数据;使用hr连接SQL*Plus,查看该用户下有哪些表,并查看jobs表和employees表结构以及表中的数据,写出完成以上操作的各个命令。

Conn scott/tigerSelect*from tab;Select*from dept;Desc deptSelect*from emp’Desc empConn hr/hrpwdSelect*from tab;Select*from job;Desc jobsSelect *from employees;Desc employees10.使用scott用户登录em,写出操作步骤。

Oracle试验一,二模板

Oracle试验一,二模板

实验1 数据库管理目的和要求(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语句创建数据库。

实验内容本实验主要包含以下内容。

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

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

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

(1)正常关闭。

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

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

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

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

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

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

oracle模式对象的管理

oracle模式对象的管理

ALTER TABLE EMP MODIFY (ENAM CHAR(25)); (3)删除表
用DROP TABLE命令删除Oracle数据表的定义。 命令格式: DROP TABLE table_name [CASCADE CONSTRAINT] 例如:
DROP ABLE EMP; CASCADE CONSTRAINT选项说明了也把完整性约束一起删除。 注意:
CREATE TABLE new_emp( empno PRIMARY KEY,ename) ORGANIZATION INDEX
AS SELECT empno,ename FROM emp; 4. 分区表的管理
创建分区表
(1)范围分区
范围分区是按照分区列值的范围来对表进行分区的。 通过PARTITION BY RANGE子句说明根据范围进行分区,其后括号中 列出分区列。 每个分区以PARTITION关键字开头,其后是分区名。VALUES LESS THAN子句用于设置分区中分区列值的范围。 示例: 创建一个分区表,将学生信息根据其出生日期进行分区,将1980年1 月1日前出生的学生信息保存在ORCLTBS1表空间中,将1980年1月1日 到1990年1月1日出生的学生信息保存在ORCLTBS2表空间中,将其他学 生信息保存在ORCLTBS3表空间中。
示例 创建一个分区表,将学生信息按性别不同进行分区,男学生信息保存 在表空间ORCLTBS1中,而女学生信息保存在ORCLTBS2中。 CREATE TABLE student_list( sno NUMBER(6) PRIMARY KEY, sname VARCHAR2(10), sex CHAR(2) CHECK(sex in ('M', 'F')) ) PARTITION BY LIST(sex) (PARTITION student_male VALUES('M') TABLESPACE ORCLTBS1, PARTITION student_female VALUES('F') TABLESPACE ORCLTBS2 );

Oracle实验报告二

Oracle实验报告二

实验报告二课程名称: Oracle10数据库 实验项目:数据库物理和逻辑储存结构操作 指导教师: 李庆风 实验位置: 计算中心软件工程实验室姓 名: 叶贝贝 学 号: 10401010447 班 级: 计科104 日 期: 2013-3-12一、实验目的掌握Oracle10g 数据库物理结构的操作,学会数据文件的管理,利用SQL*Plus 对数据文件的创建、修改等操作,学会控制文件的创建、备份、删除等操作,学会重做日志文件。

掌握Oracle10g 数据库逻辑结构的操作,学会表空间的操作,利用SQL*Plus 对表文件创建、修改、删除等操作。

二、实验环境安装有Oracle10g 数据库软件等的计算机。

三、实验内容1.Oracle10g 数据库数据文件管理(创建、删除等操作) 2.控制文件操作(创建、备份、删除等操作) 3.重做日志文件4.表控件操作(创建、修改、删除等操作)四、实验操作实验内容一:数据文件操作1启动SQL*Plus2创建Oracle10g 数据库数据文件 创建5MB 的users02.dbf创建5MB 的temp02.dbf3.修改数据文件创建users03.dbf并设置为自动增长512k空间最大50M修改users02.dbf设置为自动增长512k空间最大50M取消users02.dbf的自动增长将users02.dbf的空间设置为8M4.删除数据文件删除users03.dbf数据文件删除temp02.dbf数据文件实验内容操作二:控制文件的创建检查数据库是否打开三个都可以打开,数据库处于打开状态关闭数据库转换工作环境创建新的控制文件恢复数据库正常打开数据库指定resetlogs方式打开实验内容三:重做日志文件1.添加重做日志文件组2.添加重做日志成员3.删除重做日志成员4.删除重做日志文件组实验内容四:表空间操作1.创建永久表空间2.创建临时表空间3修改表空间4.删除表空间五、实验心得小结在本次实验中,让我学会了数据文件的创建、删除等操作,控制文件的操作,对日志文件和表空间的操作都实践了一次,实验课上时间有限,总体感觉仍须不断实践,熟练掌握。

Oracle实验二

Oracle实验二

实验二存储及对象管理一、实验内容1、在SQL中创建表空间MYTBS,初始大小万恶哦20MB当该表空间的容量不足时自动扩展,每次扩展的大小为5MB最大扩展容量为100M2、在SQL*PLUS中将MYTBS表空间立即脱机后再联机3、在SQL*PLUS中修改MYTBS的表空间大小为200MB4、在SQL*PLUS中将MYTBS表空间对应的数据换一个目录。

5、在ORACLE企业管理器中创建名为TEST的表空间,初始大小为10MB可以无限扩展存储空间。

6、在SQL*PLUS中将SYSTEM系统表空间对应的数据移到上一级目录7、在SQL*PLUS中移去表空间MYTBS8、在SQL*PLUS中通过SQL语句列出当前数据库中表空间和数据文件的对应关系9、在SQL中列出当前数据库总共有多少重做日志文件以及各自的状态10、在SQL*PLUS中列出当前数据库的重做日志文件以及当前日志组和序列号信息11、在SQL*PLUS中执行一次日志切换。

12、在sql*plus中,在hr模式下创建下面四个表13、在企业管理器中查看创建的四个表的结构,然后插入若干数据14、通过数据字典查看HR用户拥有得索引信息15、通过数据字典查看HR用户拥有得索引信息16、在题库表上创建只包含题号,题干,四个选项得视图,视图名称为:v_tk17、查询HR用户得所有视图信息18、创建考生信息表的共有同义词SYN_KSNNB19、通过数据字典查看HR模式下的所有同义词名称20、创建一个序列SQ,类型为升序,初始值为1,每次增量为1,最大值为999999,最小值为1,不循环,序列每次产生20个值21、通过数据字典查看Hr模式下的所有序列名称22、创建远程数据库的一个数据库链接,并访问远程数据库的数据表二、实验小结:此次实验的学习,对Oracle数据库的存储及对象管理有了深一步的了解,它不仅可以在sql*plus中输入语句实现对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数据库实验二

作业二数据库创建与表空间维护
一、实验目的
掌握数据库创建和删除方法;对表空间进行维护。

二、实验内容
1、练习使用DBCA向导工具创建数据库、删除数据库
2、表空间创建和维护
三、实验步骤
1、练习使用DBCA向导工具创建数据库
全局数据库名为db01,SID也为db01
设置密码为system
其他选项可默认,但请查看每一步的具体内容
选中“生成数据库创建脚本”
成功创建数据库后,查看其数据库创建脚本
进入SQL Plus,以system登录该实例db01
查看当前实例名:select instance_name from v$instance;
查看系统表空间:select tablespace_name from dba_tablespaces;并在资源管理器中找到相应的数据库目录查看。

以system登录实例db01
创建用户u6,密码为u6,为其授予创建、修改、删除表空间和修改数据库的权限
以u6登录,创建名为data01的数据表空间,路径为:%oracle_base%\oradata\db01\ds01.dbf,大小为50M,区间统一为128K,并在资源管理器中找到相应的数据库文件。

为表空间data01增加数据文件ds02.dbf,大小为10M,并在资源管理器中找到相应的数据库文件。

重置数据文件ds02.dbf的大小为15M
创建临时表空间temp02,其数据文件名为temp02.dbf,路径同数据表空间,大小为10M
以system登录,修改用户u6的默认表空间为data01,临时表空间为temp02
3、练习使用DBCA向导工具删除数据库db01
删除后请查看安装目录,将未删除的文件进行删除。

oracle实验内容2(共40题)

oracle实验内容2(共40题)

Part 11.Write a query to display the current date. Label the column Date.select to_char(sysdate,'year-mon-day')“D ate”from dual2. The HR department needs a report to display the employee number, last name, salary, and salary increased by 15.5% (expressed as a whole number) for each employee. Label the column New Salary. Place your SQL statement in a text file named lab_03_02.sql.select employee_id,last_name,salary,salary*1.155 new_salaryfrom employees3. Run your query in the file lab_03_02.sql.4. Modify your query lab_03_02.sql to add a column that subtracts the old salary fromthe new salary. Label the column Increase. Save the contents of the file as lab_03_04.sql. Run the revised query.select employee_id,last_name,salary,salary*1.155new_salary,salary*0.155 increasefrom employees……5.Write a query that displays the last name (with the first letter uppercase and all other letterslowercase) and the length of the last name for all employees whose name starts with the letters J, A, or M. Give each column an appropriate label. Sort the results by the employees’ last names.select last_name,length(last_name) lengthfrom employeeswhere last_name like'A%'or last_name like'J%'or last_name like'M%' order by last_nameRewrite the query so that the user is prompted to enter a letter that starts the last name. For example, if the user enters H when prompted for a letter, then the output should show all employees whose last name starts with the letter H.6. The HR department wants to find the length of employment for each employee. For each employee, display the last name and calculate the number of months between today and the date on which the employee was hired. Label the column MONTHS_WORKED. Order your results by the number of months employed. Round the number of months up to the closest whole number.Note: Your results will differ.select last_name,round(months_between(sysdate,hire_date))"MONTHS_WORKED"from employeesorder by hire_date desc7. Create a report that produces the following for each employee:<employee last name> earns <salary> monthly but wants <3 times salary>. Label the column Dream Salaries.select last_name||' earns'||to_char(salary,'$999,999.99')||' monthly but wants'||to_char(3*salary,'$999,999.99')from employees8.Create a query to display the last name and salary for all employees. Format the salary to be15 characters long, left-padded with the $ symbol. Label the column SALARY.select last_name,lpad(salary,15,'$')"SALARY"from employees9.Display ea ch employee’s last name, hire date, and salary review date, which is the firstMonday after six months of service. Label the column REVIEW. Format the dates to appear in the format similar to “Monday, the Thirty-First of July, 2000.”Select last_name,to_char(hire_date,'dd-mm-yy')"hire_date",to_char(next_day(add_months(hire_date,’星期一'),'day,"the" ddspth "of" month,yyyy') "REVIEW"from employees10.Display the last name, hire date, and day of the week on which the employee started. Labelthe column DAY. Order the results by the day of the week, starting with Monday.select last_name,hire_date,to_char(hire_date,'day')"DAY"from employeesorder by to_char(hire_date-1,'d')11.Create a query that displays the employees’ last names and commission amounts. If anemployee does not earn commission, show “No Commission.” Label the column COMM. Select last_name,nvl(to_char(commission_pct),' No Commission')"COMM"From employees12.Create a query that displays the first eight characters of the employees’ last names andindicates the amounts of their salaries with asterisks. Each asterisk signifies a thousand dollars. Sort the data in descending order of salary. Label the column EMPLOYEES_AND_THEIR_SALARIES.Select rpad(substr(last_name,1,8),8)|| lpad(' ',salary/1000,'*')from employeesorder by salary desc13. Using the DECODE function, write a query that displays the grade of all employees based on the value of the column JOB_ID, using the following data:Job GradeAD_PRES AST_MAN BIT_PROG CSA_REP DST_CLERK ENone of the above 0select job_id,decode(job_id,'AD_PRES','A','ST_MAN','B','IT_PROG','C','SA_REP','D','ST_CLERK','E',0)"GRA"from employees14. Rewrite the statement in the preceding exercise using the CASE syntax.select job_id,case job_id when'AD_PRES'then'A'when'ST_MAN'then'B'when'IT_PROG'then'C'when'SA_REP'then'D'when'ST_CLERK'then'E'else'0'end"GRA"from employees15.Group functions work across many rows to produce one result per group.True/False T16.Group functions includee nulls in calculations.True/False F17.The WHERE clause restricts rows before inclusion in a group calculation.True/False TThe HR department needs the following reports:18.Find the highest, lowest, sum, and average salary of all employees. Label the columns Maximum, Minimum, Sum, and Average, respectively. Round your results to the nearest whole number. Place your SQL statement in a text file named lab_04_04.sql.select max(salary)"maximum",min(salary)"minimum",sum(salary) "Sum", round(avg(salary))"Average"from employees19,Modify the query in lab_04_04.sql to display the minimum, maximum, sum, and average salary for each job type. Resave lab_04_04.sql as lab_04_05.sql. Run the statement in lab_04_05.sql.select job_id,max(salary)"maximum",min(salary)"minimum",sum(salary)"Sum", round(avg(salary))"Average"from employeesgroup by job_id20.Write a query to display the number of people with the same job.select job_id,count(*)from employeesgroup by job_id21. Determine the number of managers without listing them. Label the column Number of Managers. Hint: Use the MANAGER_ID column to determine the number of managers.select count(distinct manager_id) "Number of Managers"from employees22.Find the difference between the highest and lowest salaries. Label the column DIFFERENCE. select max(salary)-min(salary)"Difference"from employees23.Create a report to display the manager number and the salary of the lowest-paid employeefor that manager. Exclude anyone whose manager is not known. Exclude any groups where the minimum salary is $6,000 or less. Sort the output in descending order of salary.select manager_id,min(salary)from employeeswhere manager_id is not nullgroup by manager_idhaving min(salary)>600024.Create a query to display the total number of employees and, of that total, the number of employees hired in 1995, 1996, 1997, and 1998. Create appropriate column headings.select count(*) total,sum(decode(to_char(hire_date,'yyyy'),'1995',1,0))"1995",sum(decode(to_char(hire_date,'yyyy'),'1996',1,0))"1996",sum(decode(to_char(hire_date,'yyyy'),'1997',1,0))"1997",sum(decode(to_char(hire_date,'yyyy'),'1998',1,0))"1998"from employees25. Create a matrix query to display the job, the salary for that job based on department number, and the total salary for that job, for departments 20, 50, 80, and 90, giving each column an appropriate heading.select job_id "JOB",sum(decode(department_id,20,salary,0))"Dept 20",sum(decode(department_id,50,salary,0))"Dept 50",sum(decode(department_id,80,salary,0))"Dept 80",sum(decode(department_id,90,salary,0))"Dept 90",sum(salary)"Total" from employeesgroup by job_id26.Write a query for the HR department to produce the addresses of all the departments. Use the LOCATIONS and COUNTRIES tables. Show the location ID, street address, city, state or province, and country in the output. Use a NATURAL JOIN to produce the results.select LOCATION_ID,STREET_ADDRESS,CITY,STATE_PROVINCE,COUNTRY_NAMEfrom LOCATIONS natural join COUNTRIES27.The HR department needs a report of all employees. Write a query to display the last name, department number, and department name for all employees.select last_name,department_id,department_namefrom employees natural join departments28.The HR department needs a report of employees in Toronto. Display the last name, job, department number, and department name for all employees who work in Toronto.select last_name,job_id,department_id,department_name,cityfrom employees join departments using(department_id)join locations using(location_id)where city='Toronto'29.Create a report to display employees’ last name and employee number along with theirmanager’s last name and manager number. Label the columns Em ployee, Emp#, Manager,and Mgr#, respectively. Place your SQL statement in a text file named lab_05_04.sql. Select st_name,e1.employee_id,st_name,e1.manager_idFrom employees e1 join employees e2 on e1.manager_id=e2.employee_id30.Modify lab_05_04.sql to display all employees including King, who has no manager. Orderthe results by the employee number. Place your SQL statement in a text file named lab_05_05.sql. Run the query in lab_05_05.sql.Select st_name,e1.employee_id,st_name,e1.manager_idFrom employees e1 left join employees e2 on e1.manager_id=e2.employee_idOrder by e1.employee_id31.Create a report for the HR department that displays employee last names, departmentnumbers, and all the employees who work in the same department as a given employee.Give each column an appropriate label. Save the script to a file named lab_05_06.sqlselect e1.department_id,st_name EMPLOYEE,st_name COLLEAGUE from employees e1 join employees e2 on e1.DEPARTMENT_ID =e2.DEPARTMENT_ID and ST_NAME<>ST_NAMEorder by e1.department_id32.The HR department needs a report on job grades and salaries. To familiarize yourself withthe JOB_GRADES table, first show the structure of the table. Then create a query that displays the name, job, department name, salary, and grade for all employees.select last_name,job_id,department_name,salary,GRADE_LEVELfrom employees join departments using(department_id)join JOB_GRADES on salary>LOWEST_SAL and salary<HIGHEST_SAL33.The HR department wants to determine the names of all employees who were hired afterDavies. Create a query to display the name and hire date of any employee hired after employee Davies.select last_name,hire_datefrom employeeswhere hire_date>(select hire_date from employees where last_name ='Davies')34.The HR department needs to find the names and hire dates for all employees who werehired before their managers, along with their managers’ names and hire dates. Save the script to a file named lab5_09.sql.select ST_NAME,e1.HIRE_DATE,st_name,e2.hire_datefrom employees e1 join employees e2 on e1.MANAGER_ID = e2.employee_idwhere e1.hire_date<e2.hire_date35.The HR department needs a query that prompts the user for an employee last name. Thequery then displays the last name and hire date of any employee in the same department as the employee whose name they supply (excluding that employee). For example, if the user enters Zlotkey, find all employees who work with Zlotkey (excluding Zlotkey).select last_name,hire_datefrom employeeswhere department_id =(select department_idfrom employeeswhere last_name='&name')and last_name!='&name'36 .Create a report that displays the employee number, last name, and salary of all employees who earn more than the average salary. Sort the results in order of ascending salary.select department_id,last_name,salaryfrom employeeswhere salary>(select avg(salary)from employees)order by salary37.Write a query that displays the employee number and last name of all employees who work in a department with any employee whose last name contains a u. Place your SQL statement in a text file named lab_06_03.sql. Run your query.select employee_id,last_namefrom employeeswhere department_id in(select department_idfrom employeeswhere last_name like'%u%')38.The HR department needs a report that displays the last name, department number, and job ID of all employees whose department location ID is 1700.select last_name,department_id,job_idfrom employees join departments using(department_id)join locations using(LOCATION_ID )where LOCATION_ID =1700order by department_idModify the query so that the user is prompted for a location ID. Save this to a file named lab_06_04.sql.39.Create a report for HR that displays the last name and salary of every employee who reportsto King.select last_name,salaryfrom employeeswhere manager_id =(select employee_idfrom employeeswhere last_name ='King')40. Create a report for HR that displays the department number, last name, and job ID for every employee in the Executive department.select department_id,last_name,job_idfrom employees join departments using(department_id)where department_name='Executive'If you have time, complete the following exercise:40.Modify the query in lab_06_03.sql to display the employee number, last name, and salary ofall employees who earn more than the average salary and who work in a department withany employee whose last name contains a u. Resave lab_06_03.sql as lab_06_07.sql. Run the statement in lab_06_07.sql.select employee_id,last_name,salaryfrom employeeswhere department_id in(select department_idfrom employeeswhere last_name like'%u%')and salary >(select avg(salary)from employees)。

oracle实验二

oracle实验二

oracle实验⼆电信学院《oracle数据库技术及应⽤》实验报告<⼆>实验名称:管理参数⽂件及控制⽂件成绩:专业班级:姓名:学号:实验⽇期:2018 年 3 ⽉ 29 ⽇⼀、实验报告填写要求按顺序写出相应的命令,列出重要执⾏结果的截图,截图的宽度统⼀为10cm⼆、实验⽬的1、通过查看参数⽂件的内容,理解参数⽂件的作⽤;(必)2、掌握参数⽂件的创建⽅法pfile及spfile;(必)3、掌握查看控制⽂件内容的⽅法及备份控制⽂件的⽅法;(必)4、掌握多元化控制⽂件的⽅法;(必)5、掌握重建控制⽂件的⽅法;(必)6、掌握字符串、数字、⽇期和null的常⽤函数(选)7、掌握条件函数(选)三、实验内容1、查看参数⽂件内容:两种⽅式;(10分)⾸先,默认是没有pfile参数⽂件的。

需要create pfile from spfile;创建⼀个pfile参数⽂件。

pfile是⼀个⽂本⽂件,可以直接使⽤操作系统编辑器直接打开查看spfile是⼀个⼆进制⽂件,由oracle server管理,必须在sqlplus下使⽤命令查看。

show parmameter可以查看当前数据库实例启动时所⽤的参数⽂件(包括pfile和spfile)SQL> startup; #默认以spfile启动时SQL>show parameter;SQL> shutdown immediate; #关闭数据库,准备以pfile参数⽂件启动SQL> startup pfile=’ C:\oracle\ora92\database\INITora9i.ORA’; #当以pfile为启动时的参数⽂件时SQL>show parameter; #格式化⽅式查看pfile内容2、在D:\创建⼀个spfile,⼀个pfile;(10分)#在D盘根⽬录创建spfile,⽂件名为”SPFILEOra9i02.ora”SQL> create spfile=’D:\SPFILEOra9i02.ora’ from pfile;注:如果未指定spfile⽂件位置和⽂件名,将在默认位置创建,但是此时创建时应该处于数据库实例关闭的情况下,或者启动数据库实例时使⽤的是pfile参数⽂件,否则会因为spfile正在时候⽤⽽报错。

(完整word版)实验二 PL SQL编程实验报告(word文档良心出品)

(完整word版)实验二 PL SQL编程实验报告(word文档良心出品)

湖南第一师范学院信息科学与工程系实验报告课程名称:ORACLE数据库系统及应用成绩评定:实验项目名称:实验二:PL/SQL编程指导教师:学生姓名:学号:专业班级:实验项目类型:设计实验地点:实验时间:年月日一、实验目的与要求:1、掌握PL/SQL 程序设计的基本知识;2、掌握PL/SQL 中SELECT 语句和DML 语句的正确使用方法;3、掌握存储过程、函数、游标、触发器与包的创建与使用。

二、实验环境:(硬件环境、软件环境)1.硬件环境:奔ⅣPC。

2.软件环境:Windows2000 操作系统,Oracle 9i。

三、实验内容:(原理、操作步骤、程序代码等)任务:1、编写存储过程,根据用户输入的部门编号实现在PL/SQL 中逐行显示emp 表中该部门员工的工资级别。

工资级别是:当工资为空时,为空,工资在1000 元以下的为‘低’,在1000 和3000之间的为‘中’,高于3000 元的为‘高’。

要有异常处理(该部门编号不存在)。

create or replace procedure review_ep(v_deptno in dept.deptno%type)iscursor c1is select * from empwhere emp.deptno=v_deptno;record1emp%rowtype;deptno_not_found exception;beginopen c1;fetch c1into record1;if(not c1%found) then raise deptno_not_found;end if;while c1%found loopif nvl(record1.sal,0)<1000thendbms_output.put_line(record1.ename||'工资低');elsif nvl(record1.sal,0)<3000thendbms_output.put_line(record1.ename||'工资中等');elsedbms_output.put_line(record1.ename||'工资高');end if;fetch c1into record1;end loop;close c1;exception when deptno_not_found thendbms_output.put_line('deptno not found');end;2.有这么一张表temp1,他只有一个number(8)的字段no,由于在创建表时忘记设置主键约束,导致表中有很多重复的记录。

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)。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

重做日志文件:
(4)写出查询当前Oracle数据库系统中的所有数据文件的SQL命令。

(7)在scott用户下查询表emp的所在表空间、段、区信息。

SQL> column segment_name format a20;
SQL> select segment_name,tablespace_name,blocks。

相关文档
最新文档