【问题标题】:Insert throws SQLCODE: -180, SQLSTATE: 22007 on IBM DB2插入在 IBM DB2 上抛出 SQLCODE: -180, SQLSTATE: 22007
【发布时间】:2013-02-19 14:27:24
【问题描述】:

我正在使用数据集成工具 (Talend) 在 IBM Db2 上插入一些行,但以下命令会引发错误:

插入 "TOTCHQ" ("CODREM","NUMDOCC8","NOMPES","NUMBAN","CODAGEBN","QTDCHQDL","DATULTOA") 值('3080',99999999999,'FULANO DE TAL' ,100,'0000',2,'2012-11-28')

DB2 SQL 错误:SQLCODE:-180,SQLSTATE:22007,SQLERRMC:空 - 行:0

似乎日期列 (DATULTOA) 的格式有误,但事实并非如此。

相同的命令,当在另一个工具(如 DbVisualizer)上甚至直接执行时,运行正常。

这是我的表元数据:

CODREM      VARCHAR(4)     
NUMDOCC8    DECIMAL(14, 0)
NOMPES      VARCHAR(50) 
NUMBAN      SMALLINT  
CODAGEBN    VARCHAR(6)
QTDCHQDL    SMALLINT    
DATULTOA    DATE 

提前致谢。

【问题讨论】:

  • 我同意声明本身看起来不错。

标签: db2 talend


【解决方案1】:

SQLCODE -180 的描述是“THE DATE, TIME, OR TIMESTAMP VALUE value IS INVALID”。

我计算了 7 个列名和 7 个数据值。所以,这不是错位问题。

日期“2012-11-28”采用 yyyy-mm-dd 格式。或许talend 期待 yyyy-dd-mm 格式,或其他日期格式。

【讨论】:

【解决方案2】:

确保日期格式正确:

示例:yyyy-MM-dd

【讨论】:

    猜你喜欢
    • 2021-01-23
    • 1970-01-01
    • 2011-11-20
    • 1970-01-01
    • 2011-11-26
    • 1970-01-01
    • 2014-01-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多