Oracle数据库简介

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

oracle数据库是一种大型数据库系统,一般应用于商业,政府部门,它的功能很强大,能够处理大批量的数据,在网络方面也用的非常多。不过,一般的中小型企业都比较喜欢用SQL数据库系统,它的操作很简单,功能也非常齐全。只是比较oracle 数据库而言,在处理大量数据方面有些不如。

Oralce数据库的发展历程

Oralce数据库简介

Oracle简称甲骨文,是仅次于微软公司的世界第二大软件公司,该公司名称就叫Oracle。该公司成立于1979年,是加利福尼亚州的第一家在世界上推出以关系型数据管理系统(RDBMS)为中心的一家软件公司。

Oracle不仅在全球最先推出了RDBMS,并且事实上掌握着这个市场的大部分份额。现在,他们的RDBMS被广泛应用于各种操作环境:Windows NT、基于UNIX系统的小型机、IBM大型机以及一些专用硬件操作系统平台。

事实上,Oracle已经成为世界上最大的RDBMS供应商,并且是世界上最主要的信息处理软件供应商。由于Oracle公司的RDBMS都以Oracle为名,所以,在某种程度上Oracle己经成为了RDBMS的代名词。

Oracle数据库管理系统是一个以关系型和面向对象为中心管理数据的数据库管理软件系统,其在管理信息系统、企业数据处理、因特网及电子商务等领域有着非常广泛的应用。因其在数据安全性与数据完整性控制方面的优越性能,以及跨操作系统、跨硬件平台的数据互操作能力,使得越来越多的用户将Oracle作为其应用数据的处理系统。

Oracle数据库是基于“客户端/服务器”模式结构。客户端应用程序执行与用户进行交互的活动。其接收用户信息,并向“服务器端”发送请求。服务器系统负责管理数据信息和各种操作数据的活动。

Oracle数据库有如下几个强大的特性:

支持多用户、大事务量的事务处理

数据安全性和完整性的有效控制

支持分布式数据处理

可移植性很强

Oracle大体上分两大块,一块是应用开发,一块是系统管理。

开发主要是写存储过程、触发器什么的,还有就是用Oracle的Develop工具做form。有点类似于程序员,需要有较强的逻辑思维和创造能力。管理则需要对Oracle 数据库的原理有深刻的认识,有全局操纵的能力和紧密的思维,责任较大,因为一个小的失误就会丢失整个数据库,相对前者来说,后者更看重经验。

Oracle数据库服务器:

Oracle数据库包括Oracle数据库服务器和客户端

Oracle Server是一个对象一关系数据库管理系统。它提供开放的、全面的、和集成的信息管理方法。每个Server由一个 Oracle DB和一个 Oracle Server实例组成。它具有场地自治性(Site Autonomy)和提供数据存储透明机制,以此可实现数据存储透明性。每个 Oracle数据库对应唯一的一个实例名SID,Oracle数据库服务器启动后,一般至少有以下几个用户:Internal,它不是一个真实的用户名,而是具有SYSDBA优

先级的Sys用户的别名,它由DBA用户使用来完成数据库的管理任务,包括启动和关闭数据库;Sys,它是一个 DBA用户名,具有最大的数据库操作权限;System,它也是一个 DBA用户名,权限仅次于 Sys用户。

客户端

为数据库用户操作端,由应用、工具、SQL* NET组成,用户操作数据库时,必须连接到一服务器,该数据库称为本地数据库(Local DB)。在网络环境下其它服务器上的 DB称为远程数据库(Remote DB)。用户要存取远程 DB上的数据时,必须建立数据库链。

Oracle数据库的体系结构包括物理存储结构和逻辑存储结构。由于它们是相分离的,所以在管理数据的物理存储结构时并不会影响对逻辑存储结构的存取。

逻辑存储结构

它由至少一个表空间和数据库模式对象组成。这里,模式是对象的集合,而模式对象是直接引用数据库数据的逻辑结构。模式对象包括这样一些结构:表、视图、序列、存储过程、同义词、索引、簇和数据库链等。逻辑存储结构包括表空间、段和范围,用于描述怎样使用数据库的物理空间。而其中的模式对象和关系形成了数据库的关系设计。

数据块(Block)

是数据库进行UO操作的最小单位,它与操作系统的块不是一个概念。oracle数据库不是以操作系统的块为单位来请求数据,而是以多个Oracle数据库块为单位。

段(Segment)

是表空间中一个指定类型的逻辑存储结构,它由一个或多个范围组成,段将占用并增长存储空间。

其中包括:

数据段:用来存放表数据;.

索引段:用来存放表索引;

临时段:用来存放中间结果;

滚段:用于出现异常时,恢复事务。

范围(Extent):是数据库存储空间分配的逻辑单位,一个范围由许多连续的数据块组成,范围是由段依此分配的,分配的第一个范围称为初始范围,以后分配的范围称为增量范围。

优点

可用性强

可扩展性强

数据安全性强

稳定性强

写出SQL脚本

题目一:从EMP表中取得无重复的DEPTNO字段记录行数?

SQL>select count(distinct deptno) from emp;

题目二:从EMP表中获取所每个部门的员工平均工资和总和工资?

SQL>select deptno,avg(sal),sum(sal) from emp group by deptno;

题目三:显示EMP表平均工资高于2000的部门号,平均工资?

SQL>select deptno,avg(sal) from emp group by deptno having avg(sal)>2000;

题目四:除去EMP表中的重复数据

SQL>select distinct * from emp;

高级SQL连接查询

题目一:请查询EMP表和DEPT表,显示部门号为10的部门名称,该部门的雇员?

SQL>select e.ename,d.dname from emp e,dept d where e.deptno=d.deptno and e.deptno=10;

题目二:请查询EMP表和DEPT表,显示部门号为10的部门名称,该部门的雇员,以

及其他部门员工的名称?

SQL>select e.ename,d.dname from emp e left join dept d on e.deptno=d.deptno and d.deptno=10;

也可以写成:

SQL>select e.ename,d.dname from emp e ,dept d where e.deptno=d.deptno(+) and d.deptno=10;

高级SQL子查询

题目一:显示销售部(SALES) 雇员的总人数?

SQL>select count(empno) from emp where deptno=(select deptno from dept where dname='SALES');

题目二:显示工作岗位匹配与部门30的雇员名称,岗位,工资,部门号?

SQL>select ename,job,sal,deptno from emp where job in(select job from emp where deptno=30);

题目三:显示工资高于部门30的所有雇员的雇员名称,工资,部门号?

SQL> select ename,sal,deptno from emp where sal>all(select sal from emp where deptno=30);

Oracle数据库的优缺点:

优点: 1.Oracle的稳定性要比Sql server好。

2.Oracle在导数据工具sqlload.exe功能比Sqlserver的Bcp功能强大,Oracle

可以按照条件把文本文件数据导入.

3.Oracle的安全机制比Sql server好。

4.Sql server的易用性和友好性方面要比Oracle好。

5.在处理大数据方面Oracle会更稳定一些。

6.Sql Server在数据导出方面功能更强一些。

7.处理速度方面比Sql server快一些,和两者的协议有关.

缺点:价格昂贵

Oracle 9i、10g、11g版本的区别

相关文档
最新文档