2017-03-03 17 views
0

いくつかの値を変更して既存のレコードを複製したい場所でgroovyテストを書こうとしています。以下はSQLです。 3つの値を持つリストを渡しています。groovyでinsertを実行しようとしましたが、例外が発生しました

insert into tableA (col1,col2, col3, col4) 
select ?, col2, col3, ? from tableA where col2=? 

設定パラメータが '?'にマッピングされていないため、実行しようとすると例外がスローされます。 'select'節にあります。ぼんやりとしたjdbcをしながら、私は過去に同じ問題に直面してきたことをぼんやりと覚えています。

私たちは、あなたが次の操作を行うことができますInformixの

groovy.sql.Sqlを使用して

enter image description here

答えて

0

を使用している:

import groovy.sql.Sql 

Sql db 
try { 
    // other methods of obtaining Sql exist but we'll use... 
    db = Sql.newInstance('url', 'user', 'pwd', 'yourDriver') 
    db.executeUpdate('insert into tableA (col1,col2, col3, col4) select ?, col2, col3, ? from tableA where col2 = ?', ['bind1', 'bind2', 'bind3']) 
} 
finally { 
    db?.close() 
} 
+0

私たちは...のexecuteUpdateに置き換えdb.executeを使用しています。それでも同じエラーが出ます。 – AVVD

+0

上記はOracleを使用していますが、どのDBを使用していますか? –

+0

私たちはinformixを使用しています – AVVD

関連する問題