通过excel导入oracle为Date字段时报错的问题 您所在的位置:网站首页 excel导入数据格式不对怎么办呢视频 通过excel导入oracle为Date字段时报错的问题

通过excel导入oracle为Date字段时报错的问题

2024-07-17 22:28| 来源: 网络整理| 查看: 265

1、D_TDATE GDK-05030: 日期格式模式在转换整个输入字符串之前结束。 CREATEDATE GDK-05043: 无效的月份

报错sql通常为insert into 表  value (...,to_date(“09/01/2018”),....)

而且to_date对应的日期格式与excle里的格式大不相同,比如如下格式

这是因为oracle有个默认识别时间的格式

1、查询oracle当前会话日期格式:(eg,sqldevelper客户端,每次启动链接,会话格式都会默认。需要重新设置一下)

select value from nls_session_parameters where parameter='NLS_DATE_FORMAT';

默认格式:DD-MON-RR

我们需要把格式进行更改为我们上面的格式

2、转换oracle的日期格式:

alter session set nls_date_format = 'YYYY/MM/DD HH24:MI:SS';

3、另外我们还需要对excle的格式进行处理

   3.1把日期的列使用  =TEXT(AZ5,"yyyy/mm/dd hh:mm:ss")复制出来为一个新列

   3.2对新列复制到后面一列,右击选择性粘贴,采用取数值粘贴,删除前面两列数据

4、导入数据。

5、如果导入还是存在to_date报错的问题,即数据库列为date类型,导进去的sql在进行to_date的时候没有进行格式,所以无法导入

  这里可以复制新表create table newTable as select * from Table,把newTable的date格式改成字符串格式(varchar2/varchar)

 导入数据到新表newTable ,然后再复制新表数据到目标表insert into Table select * from newTable

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有