在nifi中用替换文本处理器中的插入语句与PUTSQL出错

时间:2017-02-10 02:29:12

标签: apache-nifi

在nifi中替换文本处理器中的插入语句与PUTSQL出错,并且在putSQL中显示以下错误“路由到失败:com.microsoft.sqlserver.jdbc.SQLServerException:索引4超出范围。”

2 个答案:

答案 0 :(得分:1)

@sam您的插入查询是完美的

以下情况可能是您发出问题的原因。

i。)请确保SQL Connection有“yahoo”表。并确保您的sql连接字符串具有如下所示的“数据库”名称。

jdbc:microsoft:sqlserver://<host>:<port>;DatabaseName=DATABASE

ii。)如果您提供如下插入查询,

insert into yahoo (ID, Name, Rate, Time, Ask, Bid, Date) values ('a', 'a', '1', 'a', '1', 'a', 'a')

然后你应该把yahoo表中的所有列都放在varchar或char或text类型中。

iii。)如果yahoo中的任何一列是“int”,你就删除了如下的单引号。

例如在yahoo表的第3列中,“Rate”是一个整数,您必须更改插入查询,如下所示。,

insert into yahoo (ID, Name, Rate, Time, Ask, Bid, Date) values ('a', 'a', 1, 'a', '1', 'a', 'a')

(删除第3栏中的单引号率。)

让我知道上面的修改对您有用。

答案 1 :(得分:1)

@sam,关于日期字段的问题,它可能与https://issues.apache.org/jira/browse/NIFI-2625有关。我遇到了类似的问题,abd在这里讨论了PutSql - date format error