Oracle10g数据类型
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信息:
Oracle10g数据类型的更多相关文章
- oracle PL/SQL语法基础
目录 数据类型 定义变量 PL/SQL控制结构 参考资料 Oracle10g数据类型总结 PL/SQL之基础篇 数据类型 学习总结 字符类型 char.nchar.varchar.nvarchar:有 ...
- oracle数据类型
本文转自:http://blog.csdn.net/defonds/article/details/4302695 谢谢原文作者 有道是,磨刀不误砍柴工.多了解一些底层的东西,对于Oracle开发.维 ...
- [转]oracle数据类型和对应的java类型
地址: http://otndnld.oracle.co.jp/document/products/oracle10g/102/doc_cd/java.102/B19275-03/datacc.htm ...
- oracle10g获得Date类型字段无分,秒的解决方案!
一般的数据库中,DATE字段只表示日期,不包含日期信息,而Oracle数据库中的DATE数据类型是包含日期.时间的,对于不同的Oracle jdbc驱动版本号.对于该问题的处理都有些差别. 近期使用 ...
- (转)mybatis常用jdbcType数据类型
1 MyBatis 通过包含的jdbcType类型 BIT FLOAT CHAR TIMESTAMP OTHER UNDEFINED TINYINT REAL VARCHAR BINARY BLOB ...
- oracle中数据类型对应java类型
地址: http://otndnld.Oracle.co.jp/document/products/oracle10g/102/doc_cd/Java.102/B19275-03/datacc.htm ...
- 【转帖】oracle数据类型和对应的java类型
原文地址:http://otndnld.oracle.co.jp/document/products/oracle10g/102/doc_cd/java.102/B19275-03/datacc.ht ...
- mysql 和 Oracle 数据类型对照
MySQL与Oracle两种数据库在工作中,都是用的比较多的数据库,由于MySQL与Oracle在数据类型上有部分差异,在我们迁移数据库时,会遇上一定的麻烦,下面介绍MySQL与Oracle数据库数据 ...
- 转oracle 学习- 数据类型
oracle数据类型 有道是,磨刀不误砍柴工.多了解一些底层的东西,对于Oracle开发.维护大有裨益.个人总结了一些Oracle数据类型集解,相信读者阅读了本文以后,Oracle数据库开发起来会事半 ...
随机推荐
- WPF MVVM 中怎样在ViewModel总打开的对话框在窗体之前
今天在WPF的项目中,写打印插件,在ViewModel中对需要弹出打印对话框,而对话框如果没有Owner所属的时候经常会被当前应用程序遮住,导致我都不知道到底弹出来没有! 参照:http://www. ...
- UILocalNotification本地通知
// 执行通知一定要退出应用或挂起应用(进入后台)才能收到通知. 1.在iOS8及其以后版本中使用本地消息需要先获得用户的许可,否则无法成功注册本地消息.因此,我们将询问用户许可的代码片段添加到了ap ...
- 我的第一个python代码实践:Trie树
Trie树 不解析, 本园很多博文有提到. 直接上代码: #coding:utf-8 ''' create on 2013-07-30 @author :HuangYanQiang ''' LETT ...
- white-space 属性设置如何处理元素内的空白
定义和用法white-space 属性设置如何处理元素内的空白. 这个属性声明建立布局过程中如何处理元素中的空白符.值 pre-wrap 和 pre-line 是 CSS 2.1 中新增的. 默认值: ...
- Es索引优化
https://www.elastic.co/guide/en/elasticsearch/guide/current/hardware.html https://www.elastic.co/gui ...
- Xplico
http://zhulinu.blog.51cto.com/539189/850909
- HDU 5044 TREE
题意:一棵树上两种操作,操作1,改变u到v的每一点的值增加k,操作2,改变u到v每一条边值增加k.最后结束时问,每一点和每一条边的值. 初始时,点和边的值都为0. 分析: 很显然要用树链剖分,将点和边 ...
- Asp.Net中的三种分页方式
Asp.Net中的三种分页方式 通常分页有3种方法,分别是asp.net自带的数据显示空间如GridView等自带的分页,第三方分页控件如aspnetpager,存储过程分页等. 第一种:使用Grid ...
- spring-boot启动debug信息中non-fatal error解决
java.lang.ClassNotFoundException: org.springframework.data.web.config.EnableSpringDataWebSupport添加依赖 ...
- c++模板实现抽象工厂
类似于rime的rime::Class<factory type, product type>实现方式. C++模板实现的通用工厂方法模式 1.工厂方法(Factory Method)模式 ...