1. 字符类型
数据类型 |
长度 |
说明 |
CHAR(n BYTE/CHAR) |
默认1字节,n值最大为2000 |
末尾填充空格以达到指定长度,超过最大长度报错。默认指定长度为字节数,字符长度可以从1字节到四字节。 |
NCHAR(n) |
默认1字符,最大存储内容2000字节 |
末尾填充空格以达到指定长度,n为Unicode字符数。默认为1字节。 |
NVARCHAR2(n) |
最大长度必须指定,最大存储内容4000字节 |
变长类型。n为Unicode字符数 |
VARCHAR2(n BYTE/CHAR) |
最大长度必须指定,至少为1字节或者1字符,n值最大为4000 |
变长类型。超过最大长度报错。默认存储的是长度为0的字符串。 |
VARCHAR |
同VARCHAR2 |
不建议使用 |
2. 数字类型
数据类型 |
长度 |
说明 |
NUMBER(p[,s]) |
1-22字节。 P取值范围1到38 S取值范围-84到127 |
存储定点数,值的绝对值范围为1.0 x 10 -130至1.0 x 10 126。值大于等于1.0 x 10 126时报错。p为有意义的10进制位数,正值s为小数位数,负值s表示四舍五入到小数点左部多少位。 |
BINARY_FLOAT |
5字节,其中有一长度字节。 |
32位单精度浮点数类型。 符号位1位,指数位8位,尾数位23位。 |
BINARY_DOUBLE |
9字节,其中有一长度字节。 |
64位双精度浮点数类型。 |
3. 时间、时间间隔类型
时间字段可取值范围:
时间字段 |
时间类型有效值 |
时间间隔类型有效值 |
YEAR |
-4712至9999,包括0 |
任何整数 |
MONTH |
01至12 |
0至11 |
DAY |
01至31 |
任何整数 |
HOUR |
00 至 23 |
0 至 23 |
MINUTE |
00 至 59 |
0至 59 |
SECOND |
00 to 59.9(n),9(n)不适用与DATE类型 |
0 to 59.9(n) |
TIMEZONE_HOUR |
-1至14,不适用与DATE和TIMESTAMP类型 |
不可用 |
TIMEZONE_MINUTE |
00至59,不适用与DATE和TIMESTAMP类型 |
不可用 |
TIMEZONE_REGION |
|
不可用 |
TIMEZONE_ABBR |
|
不可用 |
时间、时间间隔类型:
数据类型 |
长度 |
说明 |
DATE |
7字节 |
默认值为SYSDATE的年、月,日为01。包含一个时间字段,若插入值没有时间字段,则默认值为:00:00:00 or 12:00:00 for 24-hour and 12-hour clock time。没有分秒和时间区。 |
TIMESTAMP [(fractional_seconds_precision)] |
7至11字节 |
fractional_seconds_precision为Oracle存储秒值小数部分位数,默认为6,可选值为0到9。没有时间区。 |
TIMESTAMP [(fractional_seconds_precision)] WITH TIME ZONE |
13字节 |
使用UTC,包含字段YEAR, MONTH, DAY, HOUR, MINUTE, SECOND, TIMEZONE_ HOUR, TIMEZONE_MINUTE |
TIMESTAMP [(fractional_seconds_precision)] WITH LOCAL TIME ZONE |
7至11字节 |
存时使用数据库时区,取时使用回话的时区。 |
INTERVAL YEAR [(year_precision)] TO MONTH |
5字节 |
包含年、月的时间间隔类型。year_precision是年字段的数字位数,默认为2,可取0至9。 |
INTERVAL DAY [(day_precision)] TO SECOND [(fractional_seconds_precision)] |
11字节 |
day_precision是月份字段的数字位数,默认为2,可取0至9。 |
- TO_DATE()、DATE使用的时间字段值都是午夜值。或者使用TRUNC()函数进行过滤,确保时间字段为午夜值。
- 时间和时间间隔类型操作规则:
在DATE和TIMESTAMP(会被转化为DATE类型值)类型上加、减NUMBER类型常量,该常量单位为天数。
所有TIMESTAMP类型运算都以UTC时间为准。即对于TIMESTAMP WITH LOCAL TIME ZONE来说,先转化为UTC时间,计算完成后再转化回来。
- INTERVAL YEAR TO MONTH常量:
INTERVAL‘year-month’YEAR/MONTH(precision) TO MONTH
year位数超过precision时,返回一个错误。
其中precision为最大的位数,默认为2,可取0到9。
例子:INTERVAL '123-2' YEAR(3) TO MONTH 、
INTERVAL '123' YEAR(3) 、
INTERVAL '300' MONTH(3)。
- INTERVAL DAY TO SECOND常量:
INTERVAL ‘n/time_expr/n time_expr’ DAY/HOUR/MINUTE(leading_precision) TO HOUR/MINUTE/SECOND(fractional_second_precision)
INTERVAL ‘n/time_expr’ SECOND(leading_precision, fractional_second_precision)
time_expr格式:HH[:MI[:SS[.n]]] or MI[:SS[.n]] or SS[.n] 若n大于分秒精度,则四舍五入n。
只有当第一个字段是DAY时,才可以使用n time_expr。
leading_precision默认为2,可取0至9。
4. 大对象类型
数据类型 |
长度 |
说明 |
BLOB |
最大为(4GB-1)*数据库块大小 |
存储非结构化二进制文件。支持事务处理。 |
CLOB |
最大为(4GB-1)*数据库块大小 |
存储单字节或者多字节字符数据。支持事务处理。 |
NCLOB |
最大为(4GB-1)*数据库块大小 |
存储Unicode数据。支持事务处理。 |
BFILE |
最大为2 32-1字节 |
LOB地址指向文件系统上的一个二进制文件,维护目录和文件名。不参与事务处理。只支持只读操作。 |
- LOB列包含一个LOB地址,指向数据库内或者数据库外的LOB类型值。
5. 其他类型
数据类型 |
长度 |
说明 |
LONG |
最大为2GB |
变长类型,存储字符串。创建表时不要使用该类型。 |
RAW(n) |
最大2000字节,n为字节数,必须指定n |
变长类型,字符集发生变化时不会改变值。 |
LONG RAW |
最大为2GB |
变长类型,不建议使用,建议转化为BLOB类型,字符集发生变化时不会改变值。 |
ROWID |
10字节 |
代表记录的地址。显示为18位的字符串。用于定位数据库中一条记录的一个相对唯一地址值。通常情况下,该值在该行数据插入到数据库表时即被确定且唯一。 |
UROWID(n) |
|
|
- ROWID:数据对象编号32位(6个字符)、文件编号10位(3个字符)、块编号22位(6个字符)、行编号16位(3个字符)
- 使用dqms_rowid包获得ROWID信息:
select dbms_rowid.rowid_object(rowid) object_id, dbms_rowid.rowid_relative_fno(rowid) file_id, dbms_rowid.rowid_block_number(rowid) block_id, dbms_rowid.rowid_row_number(rowid) num from dept;
相关推荐
总结来说,oci.dll是Oracle数据库与应用程序之间的桥梁,而Oracle 10G和11G版本的oci.dll在功能和性能上有所差异。Navicat这样的数据库管理工具依赖oci.dll来实现对Oracle数据库的高效、安全的管理。理解oci.dll的...
### Oracle 11g 数据备份导入到 10g 数据库中的详细操作指南 #### 一、背景介绍 在实际工作中,有时会遇到需要...以上就是关于Oracle 11g数据备份导入到10g数据库中的详细操作流程,希望能够帮助到有类似需求的朋友。
在Linux环境下安装Oracle数据库10g是一项复杂但必要的任务,对于数据库管理员(DBA)和想要学习如何在Linux平台上安装和配置Oracle数据库的IT专业人员来说,这是一项基础技能。以下是在Linux上安装Oracle 10g的详细...
Oracle10g客户端是Oracle数据库管理系统的一个重要组成部分,主要用于连接Oracle10g服务器进行数据管理和操作。本手册将详细介绍Oracle10g客户端在Windows操作系统下的安装步骤及过程中需要注意的关键点。 #### 二...
从给定的文件标题“Oracle 10g官方教程”及描述“此文档为Oracle 10g的官方文档,已翻译为中文。”可以推断出该文档主要围绕Oracle 10g数据库系统的使用、管理和优化展开,是Oracle公司官方发布的一套详尽的指导手册...
2. **选择产品类型**:选择“Oracle Database 10g Release 2”进行安装。 3. **许可协议**:阅读并接受许可协议。 4. **配置安装选项**:根据实际情况选择安装类型,如“典型”或“自定义”。 5. **创建监听器...
总结来说,安装Oracle 10g在Windows环境下涉及多个环节,包括系统准备、安装过程、配置和安全管理。了解这些知识点对于成功安装和管理Oracle数据库至关重要。在实际操作中,应遵循最佳实践,并持续学习和适应Oracle...
本文将详细介绍如何在JavaWeb项目中配置Oracle 10g的数据池,具体步骤包括:配置Tomcat服务器中的数据源、添加Oracle驱动到项目的类路径以及编写获取数据库连接的Java类。 ### 一、配置Tomcat服务器中的数据源 ###...
### Oracle 10g 或 11g 通过 DBLink 访问 SQL Server 数据库 #### 概述 本文档详细介绍了如何在Oracle 10g或11g环境中使用DBLink来访问SQL Server数据库的方法。这种方法对于那些习惯于使用Oracle进行数据库操作的...
总结,Oracle 10g的Java库不仅为开发者提供了直接在数据库内运行Java代码的能力,还支持了各种Java相关的开发和管理功能,如JDBC、Java Stored Procedures、JVM等,使得Java开发者能够更高效地利用Oracle数据库进行...
总结,Oracle 10g的RMAN是数据库管理的重要工具,掌握其使用方法对于保障数据安全至关重要。通过理解RMAN的基础知识、备份类型、恢复操作以及最佳实践,初学者可以逐步熟练地进行数据库的备份和恢复工作,为企业的...
总结来说,Oracle 10g JDBC驱动是Java开发者与Oracle 10g数据库进行交互的重要工具,提供了多种驱动类型以适应不同的应用场景,通过规范化的JDBC接口简化了数据库操作。在实际开发中,正确选择和使用JDBC驱动能有效...
总结,Oracle 11G 数据字典是数据库管理不可或缺的一部分,它为数据库的高效管理和安全运行提供了基础。通过深入了解数据字典的结构和功能,DBA可以更有效地进行数据库的维护和管理,确保系统的稳定性和安全性。
Oracle 10g是Oracle公司推出的数据库管理系统的一个版本,它在2003年发布,提供了许多增强的功能和性能优化,对于数据存储、管理和分析有着卓越的表现。本课件主要涵盖了Oracle 10g的核心概念和技术,适用于学习者...
### Win7中安装Oracle 10g及使用指南 #### 安装前的准备工作 在开始安装Oracle 10g之前,确保您的Windows 7系统已经满足以下条件: 1. **系统版本**: Windows 7 Professional或更高版本。 2. **硬件配置**: - ...
总结来说,Oracle 11g 数据网关的配置涉及到监听文件的修改、数据库链接的创建以及连接测试,这些步骤对于实现 Oracle 与 SQL Server 之间的数据交互至关重要。在配置过程中,要确保所有文件的修改正确无误,且遵循...
这些特性使得Oracle 10G在数据处理能力、可伸缩性和易用性方面都有了显著提升。 #### 二、Oracle 10G安装前准备 1. **硬件需求**: - CPU:建议使用双核或以上CPU。 - 内存:最低要求为1GB,推荐配置为2GB及以上...