次のクエリがあります (列ログは CLOB 型です):
UPDATE table SET log=? where id=?
上記のクエリは、setAsciiStream メソッドを使用して 4000 文字を超える値をログ列に入れる場合に正常に機能します。
しかし、値を置き換える代わりに追加したいので、クエリは次のようになります。
UPDATE table SET log=log||?||chr(10) where id=?
上記のクエリは機能しなくなり、次のエラーが発生します。
java.sql.SQLException: ORA-01461: can bind a LONG value only for insert into a LONG column