2017-02-10 4 views
1

nifiの置換テキスト・プロセッサのinsert文を使用したPUTSQLでエラーが発生し、putSQLの次のエラーが表示されます:failure to com.microsoft.sqlserver.jdbc .SQLServerException:インデックス4が範囲外です。 "nifiの置換テキスト・プロセッサにinsert文を使用したPUTSQLでエラーが発生しました。

+2

SQL文はどのように見えますか? – mattyb

+0

ReplaceTextで使用するinsertQueryを共有できますか? –

+0

ヤフー(ID、名前、レート、時間、質問、入札、日付)の値( 'a'、 'a'、 '1'、 'a'、 '1'、 'a'、 'a')に挿入 – sam

答えて

0

は、あなたのINSERTクエリが最適です@samと

次のような場合は、あなたの問題の原因になるかもしれないです。

i)SQL接続のテーブルが「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') 

次に、あなたはvarchar型またはcharまたはテキストのみのタイプでヤフーテーブルのすべての列を持っている必要があります。

iii)yahooの列のいずれかが "int"の場合は、以下のように一重引用符を削除してください。例えば

ヤフー表の第三欄に「レート」は、あなたが以下のようなINSERTクエリを変更する必要が整数である。、

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

(3列目のレートで削除単一引用符)。

あなたのために働いた上記の変更をお知らせください。

+0

ありがとうございます。これでデータフローが機能しています。私は日付、日時、varbinary列の問題がもう1つあります。 nifiを使用してこれらの列をDBからDBにどのように転送する必要がありますか? – sam

+0

私の答えがあなたのために働くならば、自由にupvoteまたは受け入れる答えとして。あなたは2つのデータベースのために2つのconnectionpoolを使用して、 –

関連する問題