`

Oracle 10g 的版本和变量类型

阅读更多
Oracle10g
      ☆Oracle Database 10g版本     Oracle Database 10g 提供了四个版本


    Oracle数据库10g标准版1(Oracle Database 10g Standard Edition One  )为工作组、部门级和互联网/内联网应用程序提供了前所未有的易用性和性能价格比。从针对小型商务的单服务器环境到大型的分布式部门环境, Oracle Database 10g Standard Edition  包含了构建关键商务的应用程序所必需的全部工具。 Standard Edition One 仅许可在最高容量为两个处理器的服务器上使用。 


    Oracle数据库10g标准版(Oracle Database 10g Standard Edition ) 提供了  Standard Edition One 的前所未有的易用性、能力和性能,并且利用真正应用集群提供了对更大型的计算机和服务集群的支持。它可以在最高容量为四个处理器的单台服务器上、或者在一个支持最多四个处理器的服务器的集群上使用。


    Oracle数据库10g企业版(Oracle Database 10g Enterprise Edition )为关键任务的应用程序(如大业务量的在线事务处理 (OLTP)  环境、查询密集的数据仓库和要求苛刻的互联网应用程序)提供了高效、可靠、安全的数据管理。Oracle  数据库企业版为企业提供了满足当今关键任务应用程序的可用性和可伸缩性需求的工具和功能。它包含了 Oracle  数据库的所有组件,并且能够通过购买选项和程序包(本文稍后将加以说明)来进一步得到增强。


    Oracle数据库10g个人版 (Oracle Database 10g Personal Edition)   支持需要与Oracle数据库10g标准版1、Oracle  数据库标准版和 Oracle  数据库企业版完全兼容的单用户开发和部署。通过将 Oracle Database 10g 的获奖的功能引入到个人工作站中,Oracle 提供结合了世界上最流行的数据库功能的数据库,并且该数据库具有桌面产品通常具有的易用性和简单性。


    Oracle  数据库个人版、Oracle  数据库标准版、标准版1和 Oracle  数据库企业版包含了一系列常见的应用程序开发功能(包括与 SQL  对象相关的功能、用于编写存储过程和触发器的 PL/SQL  和 Java  编程接口)。

      ☆数据类型    定义了:标量(SCALAR)、复合(COMPOSITE)、引用(REFERENCE)和LOB四种数据类型

      ☆标量(SCALAR)    合法的标量类型与数据库的列所使用的类型相同,此外它还有一些扩展。它又分为七个组:数字、字符、行、日期、行标识、布尔和可信。

      ☆数字   数字,它有三种基本类型--NUMBER、PLS_INTEGER和BINARY_INTENER。NUMBER可以描述整数或实数,而PLS_INTEGER和BINARY_INTENER只能描述整数。

  NUMBER,是以十进制格式进行存储的,它便于存储,但是在计算上,系统会自动的将它转换成为二进制进行运算的。它的定义方式是NUMBER(P,S),P是精度,最大38位,S是刻度范围,可在-84127间取值。例如:NUMBER(5,2)可以用来存储表示-999.99999.99间的数值。P、S可以在定义是省略,例如:NUMBER(5)、NUMBER等;

  BINARY_INTENER用来描述不存储在数据库中,但是需要用来计算的带符号的整数值。它以2的补码二进制形式表述。循环计数器经常使用这种类型。

  PLS_INTEGER和BINARY_INTENER唯一区别是在计算当中发生溢出时,BINARY_INTENER型的变量会被自动指派给一个NUMBER型而不会出错,PLS_INTEGER型的变量将会发生错误。

      ☆Number补充    在Oracle中Number类型可以用来存储0,正负定点或者浮点数,可表示的数据范围在 1.0 * 10(-130) —— 9.99 * 10(125) {38个9后边带88个0} 的数字,当Oracle中的数学表达式的值>=1.0*10(126)时,Oracle就会报错。

   Number的数据声明如下:
   1)Number(p, s) 声明一个定点数 p(precision)为精度,s(scale)表示小数点右边的数字个数,精度最大值为38,scale的取值范围为-84到127
   2)Number(p) 声明一个整数 相当于Number(p, 0)
   3)Number 声明一个浮点数 其精度为38,要注意的是scale的值没有应用,也就是说scale的指不能简单的理解为0,或者其他的数。

   定点数的精度(p)和刻度(s)遵循以下规则:
   当s>0时(s表示小数点右边的数字的个数):
    当一个数的整数部分的长度 > p-s 时,Oracle就会报错
    当一个数的小数部分的长度 > s 时,Oracle就会舍入。
   当s<0时(s表示小数点左边的数字的个数):
    Oracle就对小数点左边的s个数字进行舍入。
    当s > p 时, p表示小数点后第s位向左最多可以有多少位数字,如果大于p则Oracle报错,小数点后s位向右的数字被舍入例如:
   Value-->Datatype-->Stored Value
   123.2564-->NUMBER-->123.2564(不限制)
   1234.9876-->NUMBER(6,2)-->1234.99(精确到小数点后两位)
   12345.12345-->NUMBER(6,2)-->Error(小数点左边的有效数字长度5+小数点右边的有效数字长度2>规定精度6)
   1234.9876-->NUMBER(6)-->1235 (等价于NUMBER(6,0))
   12345.345-->NUMBER(5,-2)-->12300 (小数点左边两位做四舍五入)
   12345678-->NUMBER(5,-2)-->Error (8-2>5)
   123456789-->NUMBER(5,-4)-->123460000
   1234567890-->NUMBER(5,-4)-->Error
   12345.58-->NUMBER(*, 1)-->12345.6
   0.1-->NUMBER(4,5)-->Error
   0.01234567-->NUMBER(4,5)-->0.01235
   0.09999-->NUMBER(4,5)-->0.09999
   0.099996-->NUMBER(4,5)-->Error

      ☆字符   字符,包括CHAR、VARCHAR2(VARCHAR)、LONG、NCHAR和NVARCHAR2几种类型。

  CHAR,描述定长的字符串,如果实际值不够定义的长度,系统将以空格填充。它的声明方式如下CHAR(L),L为字符串长度,缺省为1,作为变量最大32767个字符,作为数据存储在ORACLE8中最大为2000。

  VARCHAR2(VARCHAR),描述变长字符串。它的声明方式如下VARCHAR2(L),L为字符串长度,没有缺省值,作为变量最大32767个字节,作为数据存储在ORACLE8中最大为4000。在多字节语言环境中,实际存储的字符个数可能小于L值,例如:当语言环境为中文(SIMPLIFIED CHINESE_CHINA.ZHS16GBK)时,一个VARCHAR2(200)的数据列可以保存200个英文字符或者100个汉字字符。

  LONG,在数据库存储中可以用来保存高达2G的数据,作为变量,可以表示一个最大长度为32760字节的可变字符串。

  NCHAR、NVARCHAR2,国家字符集,与环境变量NLS指定的语言集密切相关,使用方法和CHAR、VARCHAR2相同。

    (varchar2是oracle提供的独特的数据类型,oracle保证在任何版本中该数据类型向上和向下兼容,但不保证varchar。因为varchar是标准sql提供的数据类型,有可能随着sql标准的变化而改变,推荐用varchar2。)

    (CHAR如果存放字母数字占1个字节,存放GBK编码的汉字存放2个字节,存放UTF-8编码的汉字占用3个字节;NCHAR根据所选字符集来定义存放字符的占用字节数,一般都为2个字节存放一个字符(不管字符或者汉字)。同理VARCHAR2与NVARCHAR2的区别。)

      ☆行   行,包括RAW和LONG RAW两种类型。用来存储二进制数据,不会在字符集间转换。

  RAW,类似于CHAR,声明方式RAW(L),L为长度,以字节为单位,作为数据库列最大2000,作为变量最大32767字节。

  LONG RAW,类似于LONG,作为数据库列最大存储2G字节的数据,作为变量最大32760字节。

   (raw这种格式可以用来保存较小的图形文件或带格式的文本文件,如Miceosoft Word文档。raw是一种较老的数据类型,将来会逐渐被BLOB、CLOB、NCLOB等大的对象数据类型所取代。long raw 无可变长二进制数据,最大长度是2GB。Oracle用这种格式来保存较大的图形文件或带格式的文本文件,如Miceosoft Word文档,以及音频、视频等非文本文件。在同一张表中不能同时有long类型和long raw类型,long raw也是一种较老的数据类型,将来会逐渐被BLOB、CLOB、NCLOB等大的对象数据类型所取代)

      ☆其他   日期,只有一种类型--DATE,用来存储时间信息,站用7个字节(从世纪到秒),绝对没有“千年虫”问题。

  行标识,只有一种类型--ROWID,用来存储“行标识符”,可以利用ROWIDTOCHAR函数来将行标识转换成为字符。

  布尔,只有一种类型--BOOLEAN,仅仅可以表示TRUE、FALSE或者NULL。

  可信,只有一种类型--MLSLABEL,可以在TRUSTED ORACLE中用来保存可变长度的二进制标签。在标准ORACLE中,只能存储NULL值。

      ☆复合(COMPOSITE)与引用(REFERENCE)【略】


      ☆LOB   LOB变量主要是用来存储大量数据的数据库字段,最大可以存储4G字节的内容。主要有:

  CLOB:和ORACLE7中的LONG类型相似,存储单字节字符数据。(别用来存中文)

  NCLOB:用来存储定宽多字节字符数据。

  BLOB:和LONG RAW相似,用来存储无结构的二进制数据。

  BFILE:它用来允许ORACLE对数据库外存储的大型二进制文本进行只读形式的访问。

      ☆附参考网址 http://database.ctocio.com.cn/tips/388/7012888.shtml
分享到:
评论

相关推荐

    oracle10G和oracle11G的OCI.dll

    在Oracle 10G和11G版本中,oci.dll扮演了至关重要的角色,为应用程序提供了访问数据库的底层接口。Navicat是一款流行的数据库管理工具,它利用oci.dll来连接并操作Oracle数据库。 Oracle 10G是Oracle公司在2003年...

    ORACLE 10g 数据类型

    Oracle 10g 数据类型是数据库管理的基础,它定义了数据在存储和处理时的格式。Oracle 提供了丰富的数据类型来满足各种数据存储需求,主要包括字符型、数值型、日期时间型和大对象型。 1. 字符型 字符型数据类型包括...

    Oracle 10g 操作手册 Oracle数据类型精解

    通过学习Oracle 10g操作手册和PowerDesigner教程,不仅能够掌握数据库的基本操作,还能深入了解数据类型的应用,以及如何用PowerDesigner进行高效的数据库设计和管理。这将为你的数据库管理工作提供坚实的基础。

    oracle10g 安装操作实用手册

    Oracle 10g是甲骨文公司发布的一款关系型数据库管理系统,属于Oracle Database产品系列的第十个主要版本。它于2003年发布,支持当时流行的操作系统平台,并引入了众多新特性,包括对网格计算的支持、数据泵、自动...

    Linux下Oracle 10g安装

    在Linux环境下安装Oracle数据库10g是一项复杂但必要的任务,对于数据库管理员(DBA)和想要学习如何在Linux平台上安装和配置Oracle数据库的IT专业人员来说,这是一项基础技能。以下是在Linux上安装Oracle 10g的详细...

    Oracle 10g入门与提高

    Oracle 10g是Oracle公司推出的数据库管理系统的一个版本,它在数据库管理领域具有广泛的使用,尤其对于企业级应用和大数据处理。本资料“Oracle 10g入门与提高”是一份PPT教程,旨在帮助初学者掌握Oracle 10g的基础...

    Oracle10g 在windows上的安装

    它是Oracle 9i Application Server(Oracle9iAS)Release 2.0版本9.0.2和版本9.0.3之后的最新版本。该版本提供了更强大的功能和服务,旨在为企业级应用提供更加稳定、高效的支持。 #### 二、Oracle 10g的主要特点 ...

    oracle10g数据导入到oracle9i解决方案

    由于Oracle 9i与Oracle 10g之间存在版本差异,这可能涉及到一些兼容性问题,特别是当导出的数据包含BLOB、CLOB等大数据类型字段时。本文旨在提供一种解决方案来解决这一问题。 #### 问题描述 Oracle 9.2.0.5之前的...

    linux之oracle10g安装

    Oracle 10g是一款功能强大的关系型数据库管理系统,常用于企业级的数据存储和处理。以下将详细阐述安装过程中涉及的关键知识点。 首先,安装前准备是至关重要的。确保你的Linux系统版本与Oracle 10g兼容,例如RHEL...

    oracle11g数据备份导入到10g数据库中

    4. **错误处理**:在执行导入过程中可能会遇到各种错误,如版本不兼容、数据类型不匹配等。对于这些错误,可以通过查看日志文件来定位问题并进行相应处理。 #### 五、总结 通过上述步骤,可以实现从Oracle 11g到10...

    oracle11g 导到 10g

    6. **数据类型和功能兼容**:某些11g特有的数据类型或函数在10g中可能不存在,需要检查并处理这些差异。 7. **预处理和后处理脚本**:可能需要在迁移前后运行SQL脚本来调整数据库设置,例如索引、触发器、存储过程...

    oracle10g 函数返回游标类型

    此标题直接指向了Oracle 10g环境下,如何设计和实现返回游标类型的数据的函数。游标是数据库中的一个重要概念,它允许用户在数据库中定位、检索、更新和删除数据行。当函数返回一个游标时,调用者可以使用循环或其他...

    Oracle 10g 联机文档

    Oracle 10g增强了对XML的支持,包括XML类型、XMLDB存储方案和XML索引,使得XML数据可以直接存储在数据库中并进行查询和处理。 十、应用开发 Oracle 10g提供了多种开发工具和API,如JDBC、ODBC和Oracle Application ...

    Oracle10g客户端详细安装手册

    Oracle10g客户端是Oracle数据库管理系统的一个重要组成部分,主要用于连接Oracle10g服务器进行数据管理和操作。本手册将详细介绍Oracle10g客户端在Windows操作系统下的安装步骤及过程中需要注意的关键点。 #### 二...

    ArcSDE For Oracle 10g

    **ArcSDE for Oracle 10g** 是一款由Esri公司开发的专业地理信息系统(GIS)数据管理软件,主要用于在Oracle 10g数据库中存储、管理和分发地理空间数据。这款产品是ArcGIS系统的重要组成部分,使得GIS数据能够与企业...

    简洁版的Oracle10g.rar

    1. 数据存储与管理:Oracle 10g提供了强大的数据存储能力,支持多种数据类型,包括字符串、数字、日期、二进制等,同时支持复杂的数据结构如簇、索引组织表等。 2. SQL支持:Oracle 10g全面支持SQL标准,包括SQL ...

    Oracle10G_Client

    Oracle10G版本是2003年发布的重要版本,引入了许多新特性和性能优化,旨在提升数据库管理的效率和灵活性。 在Oracle10G客户端中,主要包括以下组件: 1. **SQL*Plus**:这是一个命令行接口,允许用户执行SQL语句、...

    Oracle 10g官方教程

    - **XML DB**:一个内嵌的XML数据库,支持XML数据类型的操作,增强了数据的互操作性和灵活性。 ### 总结 Oracle 10g作为一款成熟的企业级数据库解决方案,不仅在数据管理、安全性、高可用性等方面提供了强大的功能...

    ORACLE 10G java 驱动包

    `classes12.jar` 文件是Oracle JDBC驱动程序的一部分,它包含了Oracle特定的类库,比如数据类型转换、数据库连接管理等。这个JAR文件提供了对Oracle数据库的低级别访问,包括处理PL/SQL过程、游标和Oracle特有的特性...

    Oracle 10g 安装(Windows下)

    - **下载安装介质**:获取Oracle 10g的ISO镜像文件,通常包括Client、Server和Developer等不同版本。 - **创建响应文件**:为了简化安装,可以预先创建一个响应文件,定义安装选项,如安装类型、组件选择、口令...

Global site tag (gtag.js) - Google Analytics