`

Oracle 基本数据类型------日期类型(二)

阅读更多
下面要讲的是 TIMESTAMP 类型。

create table test_time (col_time timestamp);




SQL> insert into test_time values (to_timestamp('0001-1-1 0:0:0.0', 'syyyy-mm-dd hh24:mi:ss.ff'));


已创建 1 行。


SQL> insert into test_time values (to_timestamp('2000-1-1 0:0:0.0', 'syyyy-mm-dd hh24:mi:ss.ff'));


已创建 1 行。


SQL> insert into test_time values (to_timestamp('9999-12-31 23:59:59.999999', 'syyyy-mm-dd hh24:mi:ss.ff'));


已创建 1 行。


SQL> insert into test_time values (to_timestamp('-0001-1-1 0:0:0.0', 'syyyy-mm-dd hh24:mi:ss.ff'));


已创建 1 行。


SQL> insert into test_time values (to_timestamp('-0100-3-4 13:2:3.234015', 'syyyy-mm-dd hh24:mi:ss.ff'));


已创建 1 行。


SQL> insert into test_time values (systimestamp);


已创建 1 行。



SQL> insert into test_time values (to_timestamp('2000-1-1 0:0:0.123456789', 'syyyy-mm-dd hh24:mi:ss.ff9'));


已创建 1 行。


SQL> commit;


提交完成。



SQL> select to_char(col_time, 'syyyy-mm-dd hh24:mi:ss.ff9') time, dump(col_time) dump_time
  2  from test_time;


TIME                           DUMP_TIME
------------------------------ ----------------------------------------------------
0001-01-01 00:00:00.000000000 Typ=180 Len=7: 100,101,1,1,1,1,1
2000-01-01 00:00:00.000000000 Typ=180 Len=7: 120,100,1,1,1,1,1
9999-12-31 23:59:59.999999000 Typ=180 Len=11: 199,199,12,31,24,60,60,59,154,198,24
-0001-01-01 00:00:00.000000000 Typ=180 Len=7: 100,99,1,1,1,1,1
-0100-03-04 13:02:03.234015000 Typ=180 Len=11: 99,100,3,4,14,3,4,13,242,201,24
2004-12-15 16:14:52.738000000 Typ=180 Len=11: 120,104,12,15,17,15,53,43,252,252,128
2000-01-01 00:00:00.123457000 Typ=180 Len=11: 120,100,1,1,1,1,1,7,91,205,232





与DATE类型对比可以发现,对于TIMESTAMP类型,如果不包含微秒信息或者微秒值为0,那么存储结果和DATE完全相同。当微秒值为0时,Oracle为了节省空间,不会保存微秒信息。


如果毫秒值不为0,Oracle把微秒值当作一个9位数的数字来保存。


比如999999000,保存为59,154,198,24。234015000保存为13,242,201,24。


SQL> select to_char(999999000, 'xxxxxxxxxx') from dual;


TO_CHAR(999
-----------
   3b9ac618


SQL> select to_number('3b', 'xxx') one, to_number('9a', 'xxx') two,
  2  to_number('c6', 'xxx') three, to_number('18', 'xxx') four from dual;


       ONE        TWO      THREE       FOUR
---------- ---------- ---------- ----------
        59        154        198         24


SQL> select to_char(234015000, 'xxxxxxxx') from dual;


TO_CHAR(2
---------
  df2c918


SQL> select to_number('d', 'xxx') one, to_number('f2', 'xxx') two,
  2  to_number('c9', 'xxx') three, to_number('18', 'xxx') four from dual;


       ONE        TWO      THREE       FOUR
---------- ---------- ---------- ----------
        13        242        201         24

分享到:
评论

相关推荐

    Oracle基本数据类型存储格式浅析

    《Oracle基本数据类型存储格式详解》 Oracle数据库中,数据类型的存储格式对于数据库的性能和空间利用率至关重要。本文将深入探讨Oracle的字符类型、数字类型、日期类型、ROWID类型和RAW类型的基本数据类型的存储...

    oracle基本数据类型

    Oracle 中有多种基本数据类型,包括字符类型、数字类型、日期类型、二进制类型等。了解这些数据类型的特点和使用场景,对于数据库设计和开发至关重要。本文将详细介绍 Oracle 中的基本数据类型,并讨论它们的特点和...

    Oracle基本数据类型.pdf

    ### Oracle基本数据类型详解 #### 一、概述 Oracle 数据库提供了多种数据类型来满足不同的需求,这些数据类型包括字符型、数值型、日期时间型、大对象类型等。了解这些基本数据类型对于正确设计数据库表结构至关...

    oracle基本数据类型及用法

    在开始学习数据库时,理解Oracle的基本数据类型及其用法至关重要。以下是对Oracle数据类型的详细解释: 1. **字符型数据类型**: - **CHAR**: 用于存储固定长度的文本数据,如果输入的数据不足指定长度,Oracle会...

    Oracle基本数据类型

    以下是关于Oracle基本数据类型的详细说明: 1. **Char(n)**:这是一个定长字符串数据类型,长度可设置为1到2000字节。无论实际存储的数据是否占满指定长度,Oracle都会分配足够的空间。如果未指定长度,默认为1个...

    Oracle各种数据类型的介绍,适合中高级编程开发人员

    ### Oracle 数据类型详解 在数据库管理系统(DBMS)中,数据类型是定义字段或变量能够存储何种类型数据的标准。Oracle数据库提供了丰富的数据类型,适用于不同的应用场景。本文将详细介绍Oracle中的几种常见数据...

    Oracle日期时间类型

    在Oracle数据库中,并不存在`datetime`这一数据类型,而是通过`date`类型来实现日期与时间的综合处理。`date`类型可以表示日期和时间,它固定占用7个字节的空间。本篇文章将详细介绍Oracle中的`date`类型以及其内部...

    oracle和sql数据类型

    总结来说,Oracle 和 SQL Server 数据类型在很多方面有相似之处,如字符串、数字、日期/时间、二进制数据类型,但在细节上有所差异,如长度限制、Unicode 支持和特定用途的类型(如 Oracle 的 Bfile 和 SQL Server ...

    Oracle9i数据类型Java数据类型Schema类型对比.doc

    - Java 的基本数据类型如 byte, short, int, long, float, double, boolean 与 Oracle9i 中的某些数字类型相对应。 - String 类型用于存储文本,与 Oracle9i 中的 CHAR 和 VARCHAR2 类型匹配。 - Date 和 ...

    java、mysql以及oracle数据类型对照表

    MySQL的数据类型包括数值类型(如INT、DECIMAL)、字符串类型(如VARCHAR、TEXT)、日期和时间类型(如DATE、TIMESTAMP)以及二进制类型(如BLOB、VARBINARY)。在Oracle中,我们有类似的数据类型,如NUMBER、...

    oracle数据类型.doc

    在Oracle中,数据类型可以分为基本数据类型、对象数据类型和大型对象数据类型。以下是对Oracle主要数据类型的详细说明: 1. **Char(n)**: 这是一种定长字符串数据类型,其中n的范围是1到2000字节。如果未指定长度,...

    oracle安装-卸载-初识oracle-笔记

    创建表是数据库设计的第一步,包括定义列、数据类型、约束等。维护表则涉及到修改表结构、删除记录、重命名表等操作。 二、对表的各种操作 Oracle支持丰富的数据操作语言(DML),如INSERT用于插入数据,UPDATE用于...

    oracle基本语法-增删改查-新手入门

    #### 二、基本概念与数据类型 在Oracle中,数据以表的形式存储,表由行和列组成。理解不同的数据类型对于正确设计表结构至关重要。 - **创建表**:使用`CREATE TABLE`语句创建表,如: ```sql CREATE TABLE 表名...

    oracle 的数据类型

    Oracle 数据类型是数据库管理系统Oracle中用于定义表结构和存储数据的基本元素。对于初学者来说,理解这些数据类型至关重要,因为它们决定了你能如何存储和操作数据。在Oracle 10g版本中,数据类型主要分为五类:...

    Oracle数据库基本数据类型.pdf

    Oracle 基本数据类型 Oracle 数据库中有多种基本数据类型,包括 char、varchar2、number、date、long、raw、long raw、blob、clob、nclob、bfile 等。这些数据类型是我们在设计数据库时最基本的组成部分,了解每种...

    Oracle的数据类型

    ### Oracle 数据类型详解 #### 一、概述 Oracle 数据库是一种广泛使用的数据库管理系统,它...以上内容对 Oracle 数据类型进行了详细的介绍,希望能够帮助读者更好地掌握这些基本概念,并在实际开发工作中灵活运用。

    oracle与sql_server数据类型对应关系.doc

    Oracle数据库提供了丰富的数据类型,包括基本类型和大型对象类型,满足各种数据存储需求: | Oracle 数据类型 | 定义 | |-----------------|--------------------------------------------------------------| | ...

    Oracle基本数据类型[借鉴].pdf

    以下是对Oracle中一些基本数据类型的详细说明: 1. **Char(n)**: Char数据类型用于存储定长字符串,最大长度为2000字节。无论实际输入的数据长度如何,Oracle都会在该字段中填充足够的空格以达到指定的长度。这意味...

Global site tag (gtag.js) - Google Analytics