Oracle数据库基础教程课后实验---实验报告
- 格式:doc
- 大小:6.58 MB
- 文档页数:63
oracle数据库实验报告《Oracle数据库实验报告》在当今信息化时代,数据库管理系统扮演着至关重要的角色。
Oracle数据库作为全球领先的企业级数据库管理系统,在各行各业都有着广泛的应用。
本次实验旨在通过对Oracle数据库的实验操作,深入了解其基本功能和特点,并探讨其在实际应用中的优势和局限性。
实验一:数据库的创建与连接在实验中,我们首先学习了如何使用SQL命令创建一个新的数据库,并通过用户名和密码连接到该数据库。
通过这一步骤,我们了解了Oracle数据库的基本操作流程,包括数据库的创建、用户的授权和连接等。
实验二:数据表的创建与管理在本次实验中,我们学习了如何使用SQL命令创建数据表,并进行数据的插入、查询、更新和删除操作。
通过这些操作,我们深入了解了Oracle数据库的数据管理功能,包括数据表的设计和维护等。
实验三:索引的创建与优化索引是数据库中非常重要的组成部分,能够提高数据的检索效率。
在本次实验中,我们学习了如何使用SQL命令创建索引,并通过优化查询语句来提高数据库的性能。
这些操作让我们更加深入地了解了Oracle数据库的优化功能,以及如何通过索引来提高数据库的性能。
实验四:备份与恢复数据库的备份与恢复是数据库管理中至关重要的一环。
在本次实验中,我们学习了如何使用Oracle数据库提供的工具进行数据库的备份和恢复操作。
这些操作让我们了解了数据库的灾难恢复功能,以及如何保障数据的安全性。
通过本次实验,我们深入了解了Oracle数据库的基本操作和功能,包括数据库的创建与连接、数据表的管理、索引的优化以及备份与恢复等。
同时,我们也发现了Oracle数据库在实际应用中的优势,如稳定性、安全性和性能优化等方面。
然而,我们也意识到Oracle数据库在一些特定场景下存在一定的局限性,如高昂的成本、复杂的配置和维护等。
总的来说,本次实验让我们更加深入地了解了Oracle数据库的特点和功能,对我们今后的数据库管理工作有着重要的指导意义。
河南财经政法大学计算机与信息工程学院
2011年---2012年第一学期
专业:信息管理与信息系统
课程名称:Oracle数据库
班级:
姓名:学号:
指导教师:张巧荣
实验一创建数据库和表
实验二表数据的插入、修改和删除
实验三数据库的查询
实验四数据库的视图
实验五索引和完整性
实验六用户、角色管理
实验七备份和恢复
实验八PL/SQL编程
实验九存储过程和触发器的使用
友情提示:范文可能无法思考和涵盖全面,供参考!最好找专业人士起草或审核后使用,感谢您的下载!。
《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数据库,掌握数据库的设计和实现方法,学习如何创建表、插入数据、查询数据以及对数据进行更新和删除等操作。
二、实验环境本次实验使用的是Oracle 11g Express Edition,操作系统为Windows 10。
三、实验步骤1. 创建表格在Oracle中创建表格需要使用CREATE TABLE语句。
下面是一个例子:CREATE TABLE employees (employee_id INT PRIMARY KEY,first_name VARCHAR2(50),last_name VARCHAR2(50),email VARCHAR2(100),phone_number VARCHAR2(20));这个例子创建了一个名为“employees”的表格,其中包含了五个列:employee_id、first_name、last_name、email和phone_number。
其中employee_id被指定为主键。
2. 插入数据在Oracle中插入数据需要使用INSERT INTO语句。
下面是一个例子:INSERT INTO employees (employee_id, first_name, last_name, email, phone_number)VALUES(1,'John','Doe','********************','555-1234');这个例子向“employees”表格中插入了一条记录,包含了五个值:employee_id为1,first_name为“John”,last_name为“Doe”,email为“********************”,phone_number为“555-1234”。
实验二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》实验报告姓名:李奕学号:12600120班级:计非121班实验一:Oracle平台下基本SQL语言的应用1、列出至少有一个员工的全部部门及人数。
SQL> select deptno ,count(ename) from emp group by deptno having count(ename)>1;2、列出薪金比“SMITH”多的全部员工。
SQL> select ename from emp where sal>ALL(select sal from emp where ename='SMITH');3、列出全部员工的姓名及其直接上级的姓名SQL> SELECT 员工.ENAME,上级.ENAME FROM EMP 员工,emp 上级 WHERE 员工.MGR=上级.EMPNO;4、列出受雇日期早于其直接上级的全部员工。
edate;5、列出部门名称和这些部门的员工信息,同时列出那些没有员工的部门。
select d.dname,ename,empno,job,hiredate,sal from emp e right join dept d on e.deptno=d.deptno;6、列出全部“CLERK”(做事员)的姓名及其部门名称。
select e.ename,d.dname from emp e,dept d wheree.deptno=d.deptno and e.job='CLERK';7、列出最低薪金大于1500的种种工作。
SQL> select job from emp group by job having min(sal)>1500;8、列出在部分门“SALES”(贩卖部)做事的员工的姓名,假定不知道贩卖部的部门编号。
select ename from emp where deptno=(select deptno from dept where dname='SALES');o = d.deptno AND d.dname='SALES';SELECT e.ename FROM emp e JOIN dept d ON e.deptno = d.deptno AND d.dname='SALES';9、列出薪金高于公司平均薪金的全部员工。
广东金融学院实验报告课程名称: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。
实验一实验名称:数据库的安装与管理实验学时:2实验目的:1)了解Oracle数据库的基本安装流程。
1)了解Oracle数据库的逻辑结构和物理结构。
2)熟悉Oracle的命令操作环境SQL*PLUS。
3)了解启动和关闭数据库的不同方式及其优缺点。
4)熟悉掌握各种启动、关闭方式。
实验内容及步骤:1、完成Oracle 12c数据库的安装2、SQL*Plus的启动与关闭(一)SQL*Plus的启动(二)断开与数据库的连接(三)退出SQL*Plus3、使用shutdown命令关闭数据库(1)正常关闭。
等待当前所有已连接的用户断开与数据库的连接,然后关闭数据库。
正常关闭的语句如下:SHUTDOWN NORMAL(2)立即关闭。
回退活动事务处理并断开所有已连接的用户,然后关闭数据库。
立即关闭语句如下:SHUTDOWN IMMEDIATE(3)事务关闭:完成事务处理后断开所有已连接的用户,然后关闭数据库。
事务处理关闭语句如下:SHUTDOWN TRANSACTIONAL4、使用startup命令启动数据库(1)启动数据库实例时不装载数据库。
执行此操作的命令如下:STARTUP NOMOUNT(2)启动数据库实例,装载数据库,但不打开数据库。
通常在数据库维护时执行此操作,对应的命令如下:STARTUP MOUNT4.改变数据库的状态(1)装载数据库实例。
ALTER DATABASE MOUNT(2)打开已关闭的数据库。
ALTER DATABASE OPEN(3)以只读方式打开数据库。
ALTER DATABASE OPEN READ ONLY思考题:1、在数据库的nomount、mount、open三种模式下,分别打开数据库的什么文件?nomount状态:读参数文件,启动实例和后台进程;mount状态:加载控制文件,让实例和数据库相关联;open状态:根据控制文件找到并打开数据文件和日志文件,从而打开数据库。
2、当关闭数据库时使用shutdown命令,好久没有关闭,随即将“命令提示符”窗口关闭,之后重新“启动命令提示符”并登录SQL*PLUS,使用shutdown immediate关闭数据库出现如下问题如何解决?ORA-24324: 未初始化服务句柄 ORA-24323: 不允许此值 ORA-01090: 正在关闭 - 不允许连接3、如何把数据库从nomount状态改为mount状态?alter database mount;。
Oracle_实践实训报告01_学号姓名Oracle_实践实训报告01_学号姓名《Oracle数据库基础》课程实践实训报告系别:班级:学号:姓名:实训任务一:指导老师:目标:在windows操作系统上成功安装与配置Oracle10G数据库服务器,并卸载Oracle软件之后重新安装,熟悉Oracle软件的安装与卸载,初步使用oracle10g软件操作过程:注意事项:123确保安装盘有3G的硬盘空间,建议安装C盘以外的盘,修改默认安装文件夹时只修改盘符,不要修改其他,安装文件夹不要有中文名确保操作系统的登录用户为系统管理员,不要是中文用户名安装以后请不要删除和修改当前使用的windows用户4如要卸载Oracle10g,请严格按照以下流程卸载:1、停止或禁用所有Oracle服务。
2、开始->程序->OracleOradb10g_Home1->OracleInstallationProducts->UniversalInstaller卸装所有Oracle产品,但UniversalInstaller本身不能被删除3、运行regedit,选择HKEY_LOCAL_MACHINE/SOFTWARE,删除所有Oracle入口。
4、手工删除Oracle的安装目录,以及系统盘(C:)下programfiles里的Oracle文件夹5、重新启动机器操作异常问题:解决方案:操作结果:(可贴图)南海东软信息技术职业学院计算机系数据库与WEB技术教研室李强制作11-12学年第一学期心得体会(包括建议与意见): 南海东软信息技术职业学院计算机系数据库与WEB技术教研室李强制作11-12学年第一学期扩展阅读:Oracle_实践实训报告01_安装与配置软件《Oracle数据库基础》课程实践实训报告系别:计算机系班级:09应用一班学号:09210510112姓名:方远波实训任务一:安装与卸载Oracle软件指导老师:李强目标:在windows操作系统上成功安装与配置Oracle10G数据库服务器,并卸载Oracle软件之后重新安装,熟悉Oracle软件的安装与卸载,初步使用oracle10g软件操作过程:注意事项:1确保安装盘有3G的硬盘空间,建议安装C盘以外的盘,修改默认安装文件夹时只修改盘符,不要修改其他,安装文件夹不要有中文名2确保操作系统的登录用户为系统管理员,不要是中文用户名3安装以后请不要删除和修改当前使用的windows用户4如要卸载Oracle10g,请严格按照以下流程卸载:1、停止或禁用所有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数据库用户和角色的概念。
(2)学习使用SQL语句创建Oracle用户。
(3)学习使用SQL语句创建Oracle角色。
(4)学习使用SQL语句指定用户的角色。
实验准备(1)了解Oracle数据库用户可以分为6种类型,即数据库管(2)了解角色是对用户的一种分类管理办法,不同权限的用户可以分为不同的角色。
(3)了解使用CREATE ROLE语句创建角色的方法。
(4)了解使用DROP ROLE语句删除角色的方法。
(5)了解使用GRANT语句指定用户角色的方法。
(6)了解使用CREATE USER语句创建用户的方法。
(7)了解使用DROP USER语句删除用户的方法。
实验内容1.创建用户在YGGL 数据库中创建一个用户manager 授予dba角色和sysdba系统权限,他可以替代system 系统用户。
Connect system/mrl as sysdba /*以sysdba 身份登录*/Create user managerProfile "default"Identified by managerDefault tablespace "users"Temporary tablespace "temp"Account unlock;图2-1图2-2/*授予权限*/Grant sysdba to "manager";Grant "connect" to "manager";Grant "dba" to "manager";Alter user manager grant connect through system;图2-32.创建角色在YGGL 数据库中创建一个角色admin 授予dba角色和sysdba系统权限Create role adminIdentified by "manager";Grant sysdba to admin;图2-4Grant sysoper to admin;Grant "connect" to admin;Grant "dba" to "admin";图2-53.创建概要文件在YGGL数据库中创建概要文件YGGL——PROFILE 并分配给用户MANAGER。
Create profile yggl_profile limitComposite_limit default failed_login_attempts 3Password_lock_time 20 password_grace_time 60Password_life_time 30 password_reuse_max unlimitedPassword_reuse_time 120 password_verify_function default;图2-6实验三表和视图管理目的与要求(1)了解Oracle表和视图的概念。
(2)学习使用SQL语句创建表。
(3)学习使用SELECT语句查询数据。
(4)学习使用SQL语句创建视图。
实验准备了解表是数据库中最常用的存储单元,它包括所有用户可以访问的数据。
作为关系型数据库,Oracle表由行和列组成。
视图是一个虚拟的表,它在物理上并不存在。
视图可以把表或其他视图的数据按照一定的条件组合起来所以也可以把它看成是一个存储的查询。
视图并不包含数据,它只是从基本表中读取数据。
了解使用CREATE TABLE语句创建表的方法。
了解使用SELECT语句查询数据的方法。
了解使用SQL语句创建视图的方法。
实验内容使用PL/SQL语句,在实验1建立的数据库的三个表Employees、Departments 和Salary中分别插入多行数据记录,然后修改和删除一些记录。
使用PL/SQL进行有限制的修改和删除。
使用PL/SQL命令操作数据(1)使用PL/SQL命令分别向Employees、Departments和Salary表中插入一行记录。
在启动SQL*PLUS窗口中输入以下PL/SQL语句并执行。
INSERT INTO Employees VALUES('011112','罗林',TO_DATE('19730626','YYYYMMDD'),1,'解放路100号',210002,4055663,5);select * from Employees;图3-1INSERT INTO Departments VALUES('2','人力资源部',NULL); select * from Departments;INSERT INTO Salary VALUES('011112',1200.09,50);select * from Salary;图3-2(2)使用PL/SQL命令命令修改表Salary中的某个记录的字段值。
UPDATE Salary SET InCome=2890 WHERE EmployeeID='011112'; 查询修改结果:select * from Salary;图3-3(3)修改表employees和表departments的记录值,注意完整性。
UPDATE Employees SET Address='中南林业科技大学涉外学院' WHERE EmployeeID='011112';select * from Employees;UPDATE Departments SET Departmentname='中情局' WHERE DepartmentID=2;select * from Departments;图3-5(4)使用PL/SQL命令修改表Salary中的所有记录的字段值。
UPDATE Salary SET InCome=InCome+100;查询修改结果,与之前的内容对比。
图3-6(5)使用DELETE语句删除Salary表中一行记录。
查询删除前后对比。
DELETE from Salary Where EmployeeID=’011112’;图3-7(6)使用TRANCATE TABLE语句删除表中所有行。
TRUNCATE TABLE Salary;图3-87、SELECT语句的基本使用(1)对于实验2给出的数据表结构,查询每个雇员的所有数据。
在SQL*PLUS窗口中输入如下的语句并执行:SELECT *FROM Employees;图3-9用select语句查询department表和salary表所有记录。
select * from departments;图3-10select * from salary;图3-11(2)查询每个雇员的地址和电话。