---
title: OceanBase 数据库 Oracle 模式的 date 与 time 类型介绍 -OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于OceanBase 数据库 Oracle 模式的 date 与 time 类型介绍 相关的常见问题和使用技巧，帮助您快速解决OceanBase 数据库 Oracle 模式的 date 与 time 类型介绍 的难题。
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

划线反馈

# OceanBase 数据库 Oracle 模式的 date 与 time 类型介绍

更新时间：2023-11-14 03:16

适用版本： V2.1.x、V2.2.x、V3.1.x、V3.2.x 内容类型：TechNote  

本文介绍 OceanBase 数据库 Oracle 模式的 date 与 time 支持的类型和格式。

## 支持的类型和对应精度

OceanBase 数据库 Oracle 模式支持的类型与对应精度如下表所示。

| 日期和时间类型 | 格式 | 范围 | 大小 |
| --- | --- | --- | --- |
| DATE | YYYY-MM-DD | '1000-01-01'~'9999-12-31' | 3 |
| DATETIME | YYYY-MM-DD HH:MM:SS | '1000-01-01 00:00:00'~'9999-12-31 23:59:59' | 5+秒精度存储 |
| TIMESTAMP | YYYY-MM-DD HH:MM:SS | '1970-01-01 00:00:00'~'2037-12-31 23:59:59' | 4+秒精度存储 |
| TIME | HH:MM:SS | '-838:59:59'~'838:59:59' | 3+秒精度存储 |
| YEAR | YYYY(默认格式) | '1901到2155'和'0000' | 1 |
| YY | YY | '70到69' | - |

日期和时间类型中，DATETIME、TIMESTAMP、TIME 类型，默认是精确到秒，还支持指定秒精度参数，秒精度存储根据存储需求最大支持微秒（3 字节），秒精度存储根据精度不同，占用空间为 0~3 字节。

#### 注意

在异构数据库之间进行迁移时，需要注意对应的精度和值范围，以及迁移工具的兼容性。

## 支持的格式

OceanBase 数据库 Oracle 模式中，可以用 TO_DATE 函数将 TIMSTAMP 类型转换为 DATE类型，有关该函数的详细信息，请参见《OceanBase 数据库 SQL 参考（Oracle 模式）》。

OceanBase 数据库支持以下时间单位：

- (ns)： 纳秒
 - (us)：微秒
 - (ms)：毫秒
 - (cs)：厘秒
 - (s) ：秒

OceanBase 数据库提供了三个设置时间字段格式的变量：

- nls_date_format：用于控制 DATE 类型 str 的格式，以及 str 隐式转 DATE 类型的格式。
 - nls_timestamp_format：用于控制 TIMESTAMP 与 TIMESTAMP LTZ 类型 str 格式，以及 str 隐式转 TIMESTAMP 与 TIMESTAMP LTZ 类型的格式。
 - nls_timestamp_tz_format：用于控制 TIMESTAMP TZ 类型 str 格式，以及 str 隐式转 TIMESTAMP TZ的格式。

有关以上配置项的详细信息，请参见《OceanBase 数据库 参考指南》中的 **系统变量** 章节。

可以通过以下命令查看当前会话的时间字段的格式。

```unknow
obclient> show variables like '%nls_%_format';
+-------------------------+----------------------------------+
| VARIABLE_NAME           | VALUE                            |
+-------------------------+----------------------------------+
| nls_date_format         | YYYY-MM-DD HH24:MI:SS            |
| nls_timestamp_format    | YYYY-MM-DD HH24:MI:SS.FF         |
| nls_timestamp_tz_format | YYYY-MM-DD HH24:MI:SS.FF TZR TZD |
+-------------------------+----------------------------------+
3 rows in set (0.00 sec)

```

可以修改配置的值来保证数据写入的格式一致，在数据迁移的时候也可以统一格式来保证数据迁入成功。

上一篇

[Decimal 字段的存储空间占用](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000466051)

下一篇

[OceanBase 数据库暂不支持公元前时间表示](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000207702) ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
