Oracle实验总结
oracle数据库实验报告

oracle数据库实验报告《Oracle数据库实验报告》在当今信息化时代,数据库管理系统扮演着至关重要的角色。
Oracle数据库作为全球领先的企业级数据库管理系统,在各行各业都有着广泛的应用。
本次实验旨在通过对Oracle数据库的实验操作,深入了解其基本功能和特点,并探讨其在实际应用中的优势和局限性。
实验一:数据库的创建与连接在实验中,我们首先学习了如何使用SQL命令创建一个新的数据库,并通过用户名和密码连接到该数据库。
通过这一步骤,我们了解了Oracle数据库的基本操作流程,包括数据库的创建、用户的授权和连接等。
实验二:数据表的创建与管理在本次实验中,我们学习了如何使用SQL命令创建数据表,并进行数据的插入、查询、更新和删除操作。
通过这些操作,我们深入了解了Oracle数据库的数据管理功能,包括数据表的设计和维护等。
实验三:索引的创建与优化索引是数据库中非常重要的组成部分,能够提高数据的检索效率。
在本次实验中,我们学习了如何使用SQL命令创建索引,并通过优化查询语句来提高数据库的性能。
这些操作让我们更加深入地了解了Oracle数据库的优化功能,以及如何通过索引来提高数据库的性能。
实验四:备份与恢复数据库的备份与恢复是数据库管理中至关重要的一环。
在本次实验中,我们学习了如何使用Oracle数据库提供的工具进行数据库的备份和恢复操作。
这些操作让我们了解了数据库的灾难恢复功能,以及如何保障数据的安全性。
通过本次实验,我们深入了解了Oracle数据库的基本操作和功能,包括数据库的创建与连接、数据表的管理、索引的优化以及备份与恢复等。
同时,我们也发现了Oracle数据库在实际应用中的优势,如稳定性、安全性和性能优化等方面。
然而,我们也意识到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实验报告

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实验总结Oracle实验总结Oracle实验总结近日做了基于ORACLE的数据库安全、对象sql数据库,XML数据库的实验,其中遇到很多问题,先总结如下。
1、安装Oracle的过程中可以‘选择建立数据库’,也可以选择‘只安装软件’,后者可在安装好软件后,建立数据库,可参考网上的很多安装步骤。
2、Oracle的默认用户有sys和system,在命令行或者sQl*plus中登陆时,写法如下:Connectsys/123456assysdba;其中123456是密码,在创建数据库的时候设置的。
普通用户登录,connectzhangsan/123456;3、grantselect不支持对表中选定的几列授权,只能将整个表的select权限授权出去。
所以实验中先建立了基于选课信息表的视图SelectiveInfo1,视图中包含成绩列,学号列以及班级列(不包含其他的列),再将对视图SelectiveInfo1的select权限授予角色teacher。
4、创建用户的时候,一定要说明该用户对表空间的权限即(quotaunlimitedontablespace或者具体限定大小的句子),否则该用户即使被授予了建表权限,也不能建表。
创建用户的时候必须给用户授予createsession的权限,这是最基本的权限。
5、不同的用户可以创建相同的表格,例如,teacher用户创建了table1,student 用户也创建了table1,且这两个表格式完全相同的,那么其他用户需要用这两个表格时,可以用teacher.table1和student.table1加以区分。
系统用户创建的表,和用户自己创建的表,本用户引用是可不加前缀。
6、oracle 有自带的密码验证函数,默认情况下是不启用的,可以用下面的语句启用,注意必须以Connectsys/123456assysdba的身份登陆(其他DBA身份的用户可不可以,本人没有试过)才能启用密码函数,启用方式如下7、将日期装换为字符串可以to_char()函数,将字符串转换为日期用to_date()函数。
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实验报告

指导教师:赵荣香2015年4月8日实验一ORACLE的安装与配置一、实验目的和要求:◆了解ORACLE数据库的基本原理,练习ORACLE 11g的安装与配置。
◆练习在SQL*PLUS和sql developer下登录数据库。
二、实验内容:⏹ORACLE 11g的安装与配置1)关闭所有正在运行的程序2)启动操作系统,以Administrator身份安装安装开始:1)启动universal installer2)设置Oracle主目录名和路径3)选择安装产品 Oracle10g Database4)选企业版(SERVER)5)选择数据库通用配置6)选全局数据库名7)选缺省数据库字符集8)开始安装9)自动安装配置工具,并通过(Database Configuration Assistant)自动创建新数据库10)显示数据库创建总结信息11)口令管理”,修改sys和system的口令,锁定别的用户口令12)退出安装参考操作:在上图所示的界面上输入相关的SQL语句:1)创建用户user1,user2(提示:create user user1 identified by pass1;)2)分别为user1,user2授予相应的权限(提示:grant connect,resourceto user1;)3)退出SQL-plus (quit)4)在CLIENT端进入SQL-PLUS,分别试用user1,user2登录试验。
5)练习修改口令:alter user username identified by password;注:用户名可自定义。
SQL Developer界面创建表五、讨论、心得(可选)Oracle 安装包挺智能,可以根据你的系统语言自动选择安装语言,甚至连帮助都是中文的。
终于把 Oracle 11g 包括帮助文档都安装好了太原理工大学实验报告二Departments表Salary表2.select语句的基本使用(1)查询每个雇员的所有数据(2)查询每个雇员的地址和电话EmployeeID为000001的雇员的地址和电话(4)查询Employees表中所有女雇员的地址和电话(5)计算每个雇员的实际收入(6)找出所有姓王的雇员的部门号3.子查询的使用(1)查找在财务部工作的雇员的情况(2)查找财务部年龄不低于所有研发部雇员年龄的雇员的姓名(3)查找比所有财务部的雇员收入都高的雇员的姓名4.连接查询的使用(1)查询每个雇员的情况以及其薪水的情况5.数据汇总(1)求财务部雇员的平均收入(2)求财务部雇员的平均实际收入(3)求财务部雇员的总人数6.GROUP BY 和ORDER BY 子句的使用7.使用视图(1)创建视图限制查看雇员的某些情况限制各部门经理只能查找本部雇员的薪水情况查询财务部雇员信息查询财务部雇员薪水情况将张无忌从经理办公室转到市场部把张无忌从表Employees中删除五、讨论、心得(可选)视图是一个虚拟表,其内容由查询定义。
oracle实验报告总结

实验三数据库的启动和关闭实验目的(1)掌握使用DBCA创建数据库的方法(2)掌握启动和关闭数据库的命令实验内容(1)使用DBCA创建数据库test,并通过SQLPLUS登录到test数据库。
(两种方式:A. set oracle_sid=test ,然后再正常登录B.sqlplus sys/密码@test as sysdba登录以后可以通过show parameter db_name查看数据库的名称)(2)练习启动数据库的五种命令,并理解它们的使用含义。
练习使用TRANSACTIONAL、IMMEDIATE选项来关闭数据库。
(3)只有数据库处于open模式下scott用户才能连接上,nomount和mount 模式不行。
试着设计一系列命令,验证这句话的正确性。
(4)对于startup restrict,分别使用system用户和scott用户连接,将命令结果和由此总结出来的结论记录到实验报告中,再使用alter命令结束限制访问状态,并将使用的命令按顺序记录到实验报告中。
实验数据记录及分析(或程序及运行结果)(1)sqlplus sys/123@test as sysdbashow parameter db_name(2)sqlplus sys/orcl@orcl as sysdbaShutdown immediateStartup nomountAlter database mount;Shutdown immediateStartup forceShutdown transactionalStartup restrictShutdown immediate(3) sqlplus sys/orcl@orcl as sysdbaShutdown immediateConn scott/tiger没有打开数据库conn sys as sysdbaorclshutdown immediatestartup mountconn scott/tiger没有打开数据库conn sys as sysdbaorclshutdown immediatestartup openconn scott/tiger(4)sqlplus sys/orcl@orcl as sysdbaShutdown immediateStartup restrictConn systemOrclConn sys as sysdbaOrclShutdown immediateStartup restrictConn scottTiger无restricted session 权限Conn sys as sysdbaorclShutdown immediateStartup restrictAlter system disable restricted session;Conn scotttiger结论:用RESTRICT选项启动数据库时,会将数据库启动到OPEN模式,但此时只有拥有RESTRICT SESSION 权限的用户才能访问数据库。
《Oracle数据库》实验报告一

4、修改表空间stu_tbs
(1)在表空间stu_tbs中添加数据文件stu003.dbf,路径为c:\ ora_data\ stu,大小为10 MB,如果该数据文件已经存在,则被覆盖,数据文件具有自动扩展属性,每次增量为64 KB,最大值为50 MB,且将其修改为脱机状态。
copy c:\oracle\product\10.2.0\oradata\orcl\control01.ctl d:\oracle\product\10.2.0\oradata\orcl\control04.ctl
copy e:\oracle\product\10.2.0\oradata\orcl\control01.ctl e:\oracle\product\10.2.0\oradata\orcl\control05.ctl
熟悉了使用Configuration Assistant创建数据库的过程,实现查询,创建,修改等Oracle语句。
六、教师评语
1、完成所有的实验内容,实验步骤和实验结果基本正确。
2、至少完成主要的实验内容,实验步骤和实验结果基本正确。
3、仅完成部分的实验内容,实验步骤和结果基本正确。
4、虽然完成了主要实验内容,但是实验步骤和结果存在多处重大错误。
四、实验步骤及结果(包含简要的实验步骤流程、结论陈述)
1、创建数据库
(1)选择“Database Configuration Assistant”命令,启动DBCA
(2)进入操作界面,选择“创建数据库”, 设置“全局数据库的名”和“实例名”
(3)为账户设置口令
(4)设置数据库存储类型和存储位置(选择存储类型为“文件类型”,存储位置为“使用模板中的数据库文件位置”)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Oracle实验总结Oracle实验总结Oracle实验总结近日做了基于ORACLE的数据库安全、对象sql数据库,XML数据库的实验,其中遇到很多问题,先总结如下。
1、安装Oracle的过程中可以‘选择建立数据库’,也可以选择‘只安装软件’,后者可在安装好软件后,建立数据库,可参考网上的很多安装步骤。
2、Oracle的默认用户有sys和system,在命令行或者sQl*plus中登陆时,写法如下:Connectsys/123456assysdba;其中123456是密码,在创建数据库的时候设置的。
普通用户登录,connectzhangsan/123456;3、grantselect不支持对表中选定的几列授权,只能将整个表的select权限授权出去。
所以实验中先建立了基于选课信息表的视图SelectiveInfo1,视图中包含成绩列,学号列以及班级列(不包含其他的列),再将对视图SelectiveInfo1的select权限授予角色teacher。
4、创建用户的时候,一定要说明该用户对表空间的权限即(quotaunlimitedontablespace或者具体限定大小的句子),否则该用户即使被授予了建表权限,也不能建表。
创建用户的时候必须给用户授予createsession的权限,这是最基本的权限。
5、不同的用户可以创建相同的表格,例如,teacher用户创建了table1,student 用户也创建了table1,且这两个表格式完全相同的,那么其他用户需要用这两个表格时,可以用teacher.table1和student.table1加以区分。
系统用户创建的表,和用户自己创建的表,本用户引用是可不加前缀。
6、oracle有自带的密码验证函数,默认情况下是不启用的,可以用下面的语句启用,注意必须以Connectsys/123456assysdba的身份登陆(其他DBA身份的用户可不可以,本人没有试过)才能启用密码函数,启用方式如下7、将日期装换为字符串可以to_char()函数,将字符串转换为日期用to_date()函数。
网上有很多这两个函数的资料。
8、Xml数据库使用的简单举例(具体路劲写法好像不对,只要将改改‘//’为‘/’并把路径写全就可以了,路径的用法其实是xpath技术)建立含xmltype数据的表createtableabc(idnumber,xmldocsys.xmltype);向表中插入数据insertintoabc(id,xmldoc)values(1,sys.xmlType.createXML(““abc”“));查询表中的数据:得到id=1的value变脸的值selecti.xmldoc.extract(““//name/a[@id=1]/@value”“).getStringVal()asenna mes,idfromabci得到a节点的值selectid,i.xmldoc.extract(“/name/a/text()”).getStringVal()astruenam efromabci得到节点id属性的值Selecthd.Data_t.extract(““/root/name/@id”“).getStringVal()AsName FROMsehr_house_datahd扩展阅读:ORACLE实训总结1、Conn/assysdba:以sysdba连接数据库,在这里可以解锁system、hr(oracle内建的用户名)、scott(oracle内建的用户名)用户,并修改它们的密码。
2、修改密码:Alteruseridentifiedby3、解锁用户:Alteruseraccountunlock4、解锁hr、scott,并修改system、hr、scott密码Alteruserhraccountunlock;Alteruserscottaccountunlock;Alteruserhrident ifiedbyk;Alteruserscottidentifiedbyk;Alterusersystemidentifiedbyk;5、连接网络数据库在\\product\\10.0.2\\db_1\\NETWORK\\ADMIN\\tnsname.ora文件中添加内容:test=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=)(PORT=1521))(CONNECT_DATA=(SERVER=DEDIC ATED)(SERVICE_NAME=orcl)))连接数据库时,输入:conn/@test6、创建用户的语句以创建用户名hr为例:Connsystem/assysdba;//连接到指定数据库Dropuserhrcascade;//如果hr用户名已存在的话删除该用户名Createuserhridentifiedbyhrdefaulttablespaceuserstemporarytablespacete mp;//创建用户hrHostimphr/hrfile=\\hr.dmplog=\\1.logfromuser=hrtouser=hrignore=y;7、hr环境搭建connhr/k:以用户名hr、密码k连接数据库createtableEMP(EMPNONUMBER(6)notnull,ENAMEVARCHAR2(25),HIREDATEDATE,J OBVARCHAR2(10),SALNUMBER(8,2),COMMNUMBER(2,2),DEPTNONUMBER(4)); INSERTINTOEMPSELECTEMPLOYEE_ID,LAST_NAME,HIRE_DATE,JOB_ID,SALARY,COMMISSION_PCT,DEPARTME NT_IDFROMEMPLOYEES;createtableDEPT(DEPTNONUMBER(4)notnull,DNAMEVARCHA R2(30),LOCNUMBER(4)); INSERTINTODEPTSELECTDEPARTMENT_ID,DEPARTMENT_NAME,LOCATION_IDFROMDEPARTMENTS;createtableemp_jobasselectempno,jobfromempwhere1=2;insertintoemp_job(empno,job)selectempno,jobfromempwheredeptno=30;crea tetablenew_emp(id,name)asselectempno,enamefromemp;createtableSALGRADE S(grade_levelvarchar2(4),lowest_salaryNUMBER,highest_salaryNUMBER );insertintosalgradesvalues(“L1”,1000,2999);insertintosalgradesvalues (“L2”,3000,5999);insertintosalgradesvalues(“L3”,6000,8999);insert intosalgradesvalues(“L4”,9000,14999);insertintosalgradesvalues(“L5”,15000,22999);insertintosalgradesvalues(“L6”,23000,30000);commit;8、SQL语句的分类DQL:dataquerylanguage数据查询语言:selectDML:datamanipulationlanguage数据操作语言insert/update/delete/mergeDDL:datedefinitionlanguage数据定义语言create/alter/drop/truncateDCL:datecontrollanguage数据控制语言grant/revokeTCL:transitoncontrollanguage事务控制语言commit/rollback/savepoint9、NULL:它不等于零或空格,任意的类型都可以支持nulla)包含null的任何算术表达式的结果都为nullb)包含null的连接表达式等于与””(空字符串)连接10、列别明的两种书写形式a)列名列别名b)列名as列别名11、列别名必须加””的情况a)列别名中包含有空格b)列别名中要求区分大小写c)列别名中包含有特殊字符12、使用||连接符代替,实例:Selectfirst_name||||last_name||sphonenumberis||phone_number“employee Phonenumber”fromemployees;其中first_name、last_name、phone_number位列变量,表示输出空格,中前两个表示输出,sphonenumberis表示输出sphonenumber,”employeePhonenumber”表示输出列的别名。
13、SQL*PLUS/ISQL*PLUS命令a)desc:显示表结构,其中desc是describe 的缩写,可以写全。
b)set[系统变量]on|off,例如:setheadingon|off:控制是否显示列标题。
setescapeon|off:控制是否打开转义符,showescape:显示转义字符setautocommiton|off:空值是否打开自动提交,showautocommit:显示当前提交方式14、ISQL*PLUS的默认显示格式Date和Character型左对齐,Numeric 型右对齐、列标题居中大写字符函数:其中字符串可以代表列名或字符表达式 a)lower(字符串)将所有大写字符转换为小写字符b)upper(字符串)将所有小写字符转换为大写字符c)iniicap(字符串)所有单词的首字母大写,其它的小写d)concat(字符串1,字符串2)将字符串1与字符串2连接e)substr(字符串,m,n)从字符串中第m位开始截取n位,字符串从1开始计数f)length(字符串)返回字符串的长度g)instr(字符串1,字符串2,m,n)返回字符串2在字符串1中,从第m位开始,第n次出现的位置。
h)lpad(字符串1,n,字符串2)用字符串2在字符串1的左边进行填充,使字符串1达到n位i)rpad(字符串1,n,字符串2)用字符串2在字符串1的右边进行填充,使字符串1达到n位j)trim(leading|trailing|both字符from字符串)将字符串中开头(leading)和结尾(trailing)的指定字符(只能是字符)去掉。