Teradata从平面文件导入到TIMESTAMP6列

问题描述

我需要使用导入选项通过teradata sql Assistant将平面文本文件中的数据加载到表中的帮助。以下是一些示例记录。它因错误而失败 “无效的时间戳”。问题不是DATE(尽管表格式和平面文件格式不同)或TIMESTAMP(0),但TIMESTAMP(6)列AUDIT_INS_TS和AUDIT_UPD_TS失败。有人可以指导如何解决此问题吗?

以下平面文件内容 PROCESS_ID | PROCESS_GROUP_NM | STATUS_START_DT | STATUS_END_DT | PROCESS_TS | AUDIT_INS_TS | AUDIT_UPD_USER_ID | AUDIT_UPD_TS

21|SELECTWIFI_OpDASH|9/14/2020|12/31/2099|9/17/2020 15:40:58|9/14/2020 15:33:54.700000|BATCH|9/14/2020 15:33:54.700000
3|DVR_TIERS|5/29/2020|12/31/2099|8/8/2020 20:42:51|7/7/2020 11:38:36.410000|BATCH|7/7/2020 11:38:36.410000
8|OFFERS_MIGRATION|7/29/2020|12/31/2099|8/29/2020 05:02:27|7/29/2020 17:20:12.630000|BATCH|7/29/2020 17:20:12.630000
13|CCS Phase 1|8/6/2020|12/31/2099|6/22/2020 13:49:57|8/6/2020 10:11:38.700000|BATCH|8/6/2020 10:11:38.700000


  INSERT INTO TEMP.ABC
 (
  PROCESS_ID,PROCESS_GROUP_NM,STATUS_START_DT,STATUS_END_DT,PROCESS_TS,AUDIT_INS_TS,AUDIT_UPD_USER_ID,AUDIT_UPD_TS
  ) 
  VALUES (?,?,cast(RegExp_Replace(?,'\b([0-9])\b','0\1') AS DATE FORMAT 'mm-dd-yyyy'),Cast(RegExp_Replace(?,'0\1') AS TIMESTAMP(0) FORMAT 'mm/dd/yyyyBhh:mi:ss'),'0\1') AS TIMESTAMP(6) FORMAT 'mm/dd/yyyyBhh:mi:ss.s(6)'),);
  
 **Table structure:**
  PROCESS_ID BIGINT NOT NULL,PROCESS_GROUP_NM VARCHAR(255) CHaraCTER SET LATIN NOT CASESPECIFIC NOT NULL,STATUS_START_DT DATE FORMAT 'YY/MM/DD',STATUS_END_DT DATE FORMAT 'YY/MM/DD',PROCESS_TS TIMESTAMP(0) NOT NULL,AUDIT_INS_TS TIMESTAMP(6) NOT NULL,AUDIT_UPD_USER_ID VARCHAR(25) CHaraCTER SET LATIN NOT CASESPECIFIC NOT NULL,AUDIT_UPD_TS TIMESTAMP(6) NOT NULL

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)