Исключение при использовании .setClob()

Я хочу вставить строку через программу Java в Oracle DB в таблице с типом столбца CLOB. Я использую следующий код

 PreparedStatement stmt=conn.prepareStatement("insert into Json_Test values(?,?)");
 stmt.setInt(1,counter);
 stmt.setClob(2,new StringReader(s));

Но при выполнении я получаю исключение: java.lang.Exception: 1 - oracle.jdbc.driver.OraclePreparedStatementWrapper.setClob(ILjava/io/Reader;


person Abhishek    schedule 13.11.2014    source источник
comment
Ответ перемещен сюда /вопросы/22123932/   -  person Nabin    schedule 13.11.2014
comment
Но почему я получаю исключение при попытке использовать .setClob() с Reader в качестве второго аргумента?   -  person Abhishek    schedule 13.11.2014
comment
Второй параметр должен быть строкой, а не объектом StringReader.   -  person Nabin    schedule 13.11.2014
comment
@Nabin, не так: docs.oracle.com/javase/8/docs/api/java/sql/   -  person Mark Rotteveel    schedule 13.11.2014
comment
Опубликуйте всю трассировку стека и точную версию драйвера.   -  person Mark Rotteveel    schedule 13.11.2014


Ответы (1)


Можете ли вы сказать версию jdbc, которую вы используете? Он работает правильно для меня с

dependency>
    <groupId>com.oracle</groupId>
    <artifactId>ojdbc6</artifactId>
    <version>11.2.0.3</version>
</dependency>
person prsmax    schedule 14.11.2014