【问题标题】:Nifi PutSQL Timestamp/Datetime error cannot be converted errorNifi PutSQL Timestamp/Datetime 错误无法转换错误
【发布时间】:2017-08-15 02:31:05
【问题描述】:

我尝试了建议通过使用“UpdateAttribute”处理器删除时间戳格式转换错误的解决方案,即 ConvertJSONtoSQL->UpdateAttribute-->PutSQL

在我使用的 UpdateAttribute 中

Property               Value
---------------        ------------------------
sql.args.4.value ->    ${sql.args.4.original:format("yyyy-MM-dd HH:mm:ss")}

日志:

sql.args.4.value的值为'',不能转换成 时间戳在 org.apache.nifi.processors.standard.PutSQL.setParameters(PutSQL.java:690) 在

不使用 UpdateAttribute 我也尝试了直接 ConvertJSONtoSQL-> PutSQL 。日志显示与引用“2017 年 8 月 14 日 10:17:00 EDT”中的日期时间值相同的错误,即当我们使用 UpdateAttribute 时,它​​只是删除该值并放置空引号,但错误未解决。

注意: MySQL 表具有这些列的 datetime 数据类型,不确定为什么尝试转换为 TimeStamp 会出错。我还在本地主机上的源表和目标表中尝试了 Timestamp 数据类型,但运气不好!

【问题讨论】:

    标签: mysql apache-nifi update-attribute


    【解决方案1】:

    我找到了问题的答案

    sql.args.n.value -> ${sql.args.n.value:format("yyyy-MM-dd HH:mm:ss.SSS")}

    【讨论】:

    • 只是想知道你使用的数据流是不是 convertjsontoSQL -> updateAttribute -> putsql
    • 谢谢,我在放入 Postgres 时遇到了同样的问题。我使用了 queryrecord 并将“.000”连接到我的日期
    猜你喜欢
    • 1970-01-01
    • 2020-03-20
    • 1970-01-01
    • 1970-01-01
    • 2012-08-16
    • 1970-01-01
    • 2014-01-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多