什么是Oracle数据库?oracle数据库是一种大型数据库系统,一般应用于商业,政府部门,它的功能很强大,能够处理大批量的数据,在网络方面也用的非常多。不过,一般的中小型企业都比较喜欢用SQL数据库系统,它的操作很简单,功能也非常齐全。只是比较oracle数据库而言,在处理大量数据方面有些不如。Oralce数据库的发展历程Oralce数据库简介Oracle简称甲骨文,是仅次于微软公司的世界第二大软件公司,该公司名称就叫Oracle。该公司成立于1979年,是加利福尼亚州的第一家在世界上推出以关系型数据管理系统(RDBMS)为中心的一家软件公司。Oracle不仅在全球最先推出了RDBMS,并且事实上掌握着这个市场的大部分份额。现在,他们的RDBMS被广泛应用于各种操作环境:WindowsNT、基于UNIX系统的小型机、IBM大型机以及一些专用硬件操作系统平台。事实上,Oracle已经成为世界上最大的RDBMS供应商,并且是世界上最主要的信息处理软件供应商。由于Oracle公司的RDBMS都以Oracle为名,所以,在某种程度上Oracle己经成为了RDBMS的代名词。Oracle数据库管理系统是一个以关系型和面向对象为中心管理数据的数据库管理软件系统,其在管理信息系统、企业数据处理、因特网及电子商务等领域有着非常广泛的应用。因其在数据安全性与数据完整性控制方面的优越性能,以及跨操作系统、跨硬件平台的数据互操作能力,使得越来越多的用户将Oracle作为其应用数据的处理系统。Oracle数据库是基于“客户端/服务器”模式结构。客户端应用程序执行与用户进行交互的活动。其接收用户信息,并向“服务器端”发送请求。服务器系统负责管理数据信息和各种操作数据的活动。Oracle数据库有如下几个强大的特性:支持多用户、大事务量的事务处理数据安全性和完整性的有效控制支持分布式数据处理可移植性很强Oracle体系庞大,对于初学者来说,大体上要明白定位思想:Oracle大体上分两大块,一块是应用开发,一块是系统管理。开发主要是写存储过程、触发器什么的,还有就是用Oracle的Develop工具做form。有点类似于程序员,需要有较强的逻辑思维和创造能力。管理则需要对Oracle数据库的原理有深刻的认识,有全局操纵的能力和紧密的思维,责任较大,因为一个小的失误就会丢失整个数据库,相对前者来说,后者更看重经验。Oracle数据库服务器:Oracle数据库包括Oracle数据库服务器和客户端OracleServer是一个对象一关系数据库管理系统。它提供开放的、全面的、和集成的信息管理方法。每个Server由一个OracleDB和一个OracleServer实例组成。它具有场地自治性(SiteAutonomy)和提供数据存储透明机制,以此可实现数据存储透明性。每个Oracle数据库对应唯一的一个实例名SID,Oracle数据库服务器启动后,一般至少有以下几个用户:Internal,它不是一个真实的用户名,而是具有SYSDBA优先级的Sys用户的别名,它由DBA用户使用来完成数据库的管理任务,包括启动和关闭数据库;Sys,它是一个DBA用户名,具有最大的数据库操作权限;System,它也是一个DBA用户名,权限仅次于Sys用户。客户端为数据库用户操作端,由应用、工具、SQL*NET组成,用户操作数据库时,必须连接到一服务器,该数据库称为本地数据库(LocalDB)。在网络环境下其它服务器上的DB称为远程数据库(RemoteDB)。用户要存取远程DB上的数据时,必须建立数据库链。Oracle数据库的体系结构包括物理存储结构和逻辑存储结构。由于它们是相分离的,所以在管理数据的物理存储结构时并不会影响对逻辑存储结构的存取。逻辑存储结构它由至少一个表空间和数据库模式对象组成。这里,模式是对象的集合,而模式对象是直接引用数据库数据的逻辑结构。模式对象包括这样一些结构:表、视图、序列、存储过程、同义词、索引、簇和数据库链等。逻辑存储结构包括表空间、段和范围,用于描述怎样使用数据库的物理空间。而其中的模式对象和关系形成了数据库的关系设计。数据块(Block)是数据库进行UO操作的最小单位,它与操作系统的块不是一个概念。oracle数据库不是以操作系统的块为单位来请求数据,而是以多个Oracle数据库块为单位。段(Segment)是表空间中一个指定类型的逻辑存储结构,它由一个或多个范围组成,段将占用并增长存储空间。其中包括:数据段:用来存放表数据;.索引段:用来存放表索引;临时段:用来存放中间结果;滚段:用于出现异常时,恢复事务。范围(Extent):是数据库存储空间分配的逻辑单位,一个范围由许多连续的数据块组成,范围是由段依此分配的,分配的第一个范围称为初始范围,以后分配的范围称为增量范围。优点可用性强可扩展性强数据安全性强稳定性强写出SQL脚本题目一:从EMP表中取得无重复的DEPTNO字段记录行数?SQLselectcount(distinctdeptno)fromemp;题目二:从EMP表中获取所每个部门的员工平均工资和总和工资?SQLselectdeptno,avg(sal),sum(sal)fromempgroupbydeptno;题目三:显示EMP表平均工资高于2000的部门号,平均工资?SQLselectdeptno,avg(sal)fromempgroupbydeptnohavingavg(sal)2000;题目四:除去EMP表中的重复数据SQLselectdistinct*fromemp;高级SQL连接查询题目一:请查询EMP表和DEPT表,显示部门号为10的部门名称,该部门的雇员?SQLselecte.ename,d.dnamefromempe,deptdwheree.deptno=d.deptnoande.deptno=10;题目二:请查询EMP表和DEPT表,显示部门号为10的部门名称,该部门的雇员,以及其他部门员工的名称?SQLselecte.ename,d.dnamefromempeleftjoindeptdone.deptno=d.deptnoandd.deptno=10;也可以写成:SQLselecte.ename,d.dnamefromempe,deptdwheree.deptno=d.deptno(+)andd.deptno=10;高级SQL子查询题目一:显示销售部(SALES)雇员的总人数?SQLselectcount(empno)fromempwheredeptno=(selectdeptnofromdeptwheredname='SALES');题目二:显示工作岗位匹配与部门30的雇员名称,岗位,工资,部门号?SQLselectename,job,sal,deptnofromempwherejobin(selectjobfromempwheredeptno=30);题目三:显示工资高于部门30的所有雇员的雇员名称,工资,部门号?SQLselectename,sal,deptnofromempwheresalall(selectsalfromempwheredeptno=30);Oracle数据库的优缺点:优点:1.Oracle的稳定性要比Sqlserver好。2.Oracle在导数据工具sqlload.exe功能比Sqlserver的Bcp功能强大,Oracle可以按照条件把文本文件数据导入.3.Oracle的安全机制比Sqlserver好。4.Sqlserver的易用性和友好性方面要比Oracle好。5.在处理大数据方面Oracle会更稳定一些。6.SqlServer在数据导出方面功能更强一些。7.处理速度方面比Sqlserver快一些,和两者的协议有关.缺点:价格昂贵Oracle9i、10g、11g版本的区别Oracle10g比9i多的新特性1.10g支持网格计算,即多台结点服务器利用高速网络组成一个虚拟的高性能服务器,负载在整个网格中衡,按需增删结点,避免单点故障。2.支持自动管理增删硬盘不再需要操作系统管理员设置的镜像、负载均衡物理卷、逻辑卷、分区、文件系统,只要打一条Oracle命令,ASM会自动管理增加或删除的硬盘。3.内存自动化,根据需要自动分配和释放系统内存。4.快速纠正人为错误的闪回(Flashback)查询和恢复,可以恢复数据库、表甚至记录。5.数据泵高速导入、导出数据,比传统方法导出速度快两倍以上,导入速度快15--45倍.6.精细审计,记录一切对敏感数据的操作7.存储数据的表空间跨平台复制,极大的提高数据仓库加载速度。8.流复制,实现低系统消耗、双向、断点续传、跨平台、跨数据源的复杂复制。9.容灾的数据卫士增加了逻辑备份功能,备份数据库日常可以运行于只读状态,充分利用备份数据库。10.支持许多新EE选件,加强数据库内部管理的“DatabaseVault”,数据库活动的审计的,数据仓库构建高级功能。Oracle11g比10g多的新特性1.11g扩展了Oracle独家具有的提供网格计算优势的功能,来提高用户服务水平、减少停机时间以及更加有效地利用IT资源,同时还增强全天候业务应用程序的性能、可伸缩性和安全性,利用真正应用测试尽量降低更改的风险2.11g降低了数据库升级以及其他硬件和操作系统更改的成本,显著简化了更改前后的系统测试以便您可以识别和解决问题。如:利用DatabaseReplay在数据库级别轻松捕获实际的生产负载并在测试系统上重新播放,这样有效的全面测试系统更改(包括关键的并发特性)的影响。3.利用自学功能自动进行SQL优化系统全局区和程序全局区的内存缓存区的自动、统一调整新的advisor用于分区、数据恢复、流性能和空间管理针对自动数据库诊断监视器的增强,能够提供Oracle真正应用集群环境中的更好的性能全局视图以及改进的性能比较分析功能。