在数据库的日常使用过程中,无论是记录服务启动时间,还是存储前端应用中的订单时间,都离不开使用各类日期类型,本文就将给大家介绍DM7中各种时间类型的区别和使用注意事项。

一.DM7中时间日期类型简介

DM7中常用的时间日期类型有这三种DATE,TIME,TIMESTAMP。

DATE 类型包括年、月、日信息,定义了'-4712-01-01'和'9999-12-31'之间任何一个有效的格里高利日期。

TIME类型包括时、分、秒信息,定义了一个在'00:00:00.000000'和'23:59:59.999999'之间的有效时间。TIME 类型的小数秒精度规定了秒字段中小数点后面的位数,取值范围为 0~6,如果未定义,缺省精度为0。

TIMESTAMP 类型包括年、月、日、时、分、秒信息,定义了一个在'-4712-01-01

00:00:00.000000'和'9999-12-3123:59:59.999999'之间的有效格里高利日期时间。

TIMESTAMP 类型的小数秒精度规定了秒字段中小数点后面的位数,取值范围为 0~6,如果未定义 , 缺省精度为6。

二.DATE和TIMESTAMP的区别

根据上面的定义可以知道DATE类型只能存储年月日,那当我们尝试吧一个完整的时间存入DATE时会发生什么呢?我们可以做如下测试:

DECLARE

TEST1 DATE;

TEST2 DATE;

BEGIN

SET TEST1=to_date('2018-11-0115:20:10','YYYY-MM-DDHH24:MI:SS'); --存入时间1

SET TEST2=to_date('2018-11-0117:20:10','YYYY-MM-DDHH24:MI:SS'); --存入时间2

IF TEST1=TEST2 THEN

PRINT'TEST1=TEST2';  --如果两个值相同则显示TEST1=TEST2

PRINT  TEST1;

ELSEIF TEST1>TEST2 THEN

PRINT'TEST1>TEST2';

PRINT TEST1;

ENDIF;

END;

执行结果如下:

可以看到,当我们尝试把一个包含年月日时分秒毫秒的完整时间存入date类型时,年月日之外的数值会被砍掉。因此,在对两个数值进行比较时,得出来的是等号。在这种情况下,为避免数据丢失,我们需要TIMESTAMP来存储完整的日期时间信息。

三. 从ORACLE到DM的迁移

熟悉ORACLE的读者应该了解,ORACLE的DATE类型中包括年、月、日、时、分、秒的信息。因此,在做ORACLE到DM的数据迁移时,如果不对DATE类型做转换,则可能会导致时、分、秒数据的丢失。这时,我们应将DATE类型转化成DM中的TIMESTAMP,演示如下:

在ORACLE中创建实例表并录入时间数据

CREATE TABLE T1 (AAA DATE);

INSERT INTO T1VALUES(to_date('2018-11-01 15:20:10','YYYY-MM-DD HH24:MI:SS'));

COMMIT;

这里我们使用DTS工具进行迁移,因篇幅关系这里就不演示过程了,迁移完成后,在DM内可以查到对应的T1表以及数据。

表和数据已经迁移过来了,类型也被转换成了TIMESTAMP,时、分、秒的数据并没有丢失。这里,有的读者可能就会问了,为什么DATE类型自己变成了TIMESTAMP,是不是我们在迁移的过程中做了什么操作呢?

事实上,我在迁移的过程中并没有手动指定数据类型映射。但是,当我们使用DTS进行ORACLE到DM的迁移时,DTS工具会自己对某些类型做转换。

如图所示,工具已经自动将DATE类型转化成了TIMESTAMP类型。当然,迁移时类型的转换还不止图中这些,有兴趣的读者可以参考DTS帮助文档中默认数据类型映射这一章节。

达梦数据库日期格式化_【干货分享】DM7中时间类型的使用介绍相关推荐

  1. 达梦数据库删除用户_干货分享丨DM8用户管理

    原标题:干货分享丨DM8用户管理 用户介绍 安装创建达梦企业版数据库后,系统会默认创建四类数据库账号,分别是: SYS:达梦数据库内置管理用户,不能登录,数据库使用的大部分的数据字典和动态性能视图. ...

  2. 达梦数据库操作记录_【干货分享】达梦7与ArcGIS10.4进行安装适配详细步聚说明...

    DM7与ArcGIS10.4进行安装适配详细步骤说明 环境要求: · ArcGIS 10.4及以上版本 · 达梦数据库:v7.1.5及以上版本 ArcGIS从ArcGIS10.4.X以上开始支持连接达 ...

  3. 达梦数据库(DM)的安装教程分享

    国产数据库现状 关系型数据库 Oracle 21c 银行.电力.运营商,9i,11g Sqlserver 微软,政府 Mysql 开源 分社区版和商业版 社区版免费 PostgreSQL 开源.国产数 ...

  4. 达梦数据库删除用户_达梦数据库实例、服务的创建和删除

    达梦数据库实例.服务的创建和删除 一.数据库实例 (一)数据库实例创建 (1)图形化方式 (2)命令行创建 (二)数据库实例删除 二.数据库服务 (一)数据库服务的创建 (1)图形化方式 (2)命令行 ...

  5. 达梦数据库操作记录_达梦数据库常用功能及命令记录 -- 持续更新

    达梦数据库常用功能及命令记录 -- 持续更新 达梦数据库常用功能及命令记录 达梦数据库语句的使用总体来说跟 oracle 很接近的, 这篇文章主要是把常用的情况和语句做了记录, 并且后续还会不断的持续 ...

  6. 达梦数据库删除用户_达梦数据库的操作手册.docx

    达梦数据库操作手册2013年12月15日达梦数据库安装服务器安装数据库安装注意问题数据库的安装路径不要直接放在操作系统的/目录相同的磁盘上,可以安装在/dmdb/dm,但是/dmdb要单独挂载在一块硬 ...

  7. 达梦数据库删除用户_达梦数据库的表空间及用户管理

    一.达梦数据库表空间的管理 1.达梦数据库表空间介绍 Select tablespace_name from dba_tablespace; 1)SYSTEM表空间--> 系统表空间有很多的数据 ...

  8. 达梦数据库-日期类型常用函数汇总

    日期时间函数的参数至少有一个是日期时间类型(TIME,DATE,TIMESTAMP),返回值一般为日期时间类型和数值类型.由于 DM 支持儒略历,并考虑了历史上从儒略历转换至格里高利日期时的异常,不计 ...

  9. rman删除7天前备份_干货分享|DM7如何删除7天前的备份文件

    DM7如何删除7天前的备份文件 背景 生产系统中由于数据量较大,备份文件较多,存储空间很快就撑满,隔几天就要清理一次备份文件,为了更好的解决此问题,提供如下解决办法. 处理DM管理工具 说明:达梦安装 ...

最新文章

  1. 通过源码分析Android 的消息处理机制
  2. SpringMVC和Dubbo的整合
  3. 序列化类型 System.Data.Entity.DynamicProxies 的对象时检测到循环引用
  4. 通过 Intent 传递类对象
  5. [递归]递归问题解题思路
  6. stm32 web get 参数_BlackHat2020议题之Web缓存投毒
  7. 异常处理——我应该抓住这个异常吗?
  8. java下载上传远程文件
  9. python线程按照顺序执行_Python3多线程之间的执行顺序问题
  10. java字体倾斜_Java没有合成斜体字体
  11. 汽车之家汽车详细参数之css反爬
  12. 千万数据的分库分表方案
  13. WinMerge使用教程
  14. LintCode 两个数组的交集
  15. 应用回归分析(知识点整理)(四)——SPSS处理自相关(序列相关)
  16. nodejs在windows系统下的升级
  17. 2022年顶会、顶刊SNN相关论文----------持续更新中
  18. Anaconda点开一直处于loading application状态
  19. java中微信公众号框架_java微信公众号开发框架包含哪些内容呢?为什么要使用框架...
  20. .md文件是什么?.md如何打开?

热门文章

  1. JavaScript:实现计算各种形状的体积算法 (附完整源码)
  2. 北京络捷斯特第三方物流信息系统技术解析(二) 订单录入-入库订单
  3. java读取.properties配置文件的几种方法
  4. Cmder学习记录和快捷键介绍
  5. 错误——由于ssh配置启动不了yarn
  6. STP切换测试_组网实验
  7. 关于 58 996 浪潮 奋进者计划 华为 奋斗者协议—— 小论!
  8. 卫星导航常用的通用术语珍藏版
  9. 通才与专家_成为通才
  10. Matlab卷积神经网络(CNN)手写数字识别(一)