CLOB:ORA-01461:只能插入一个LONG值才能插入LONG列

时间:2018-02-26 20:04:41

标签: java oracle jpa clob ojdbc

我在表中收到Clob数据类型的错误。我试图存储为clob的字符串内容肯定超过4K(大约190KB)。 我在春季应用程序中使用JPA。

考虑responseObj是一个拥有190K数据的JSONObject。

Clob errorResponse = new javax.sql.rowset.serial.SerialClob(responseObj.toString().toCharArray());                 
errorResponse.setString(1L,responseObj.toString());

int rowsInserted = errorRepository.insertEfileErrorLogRequest(responseObj.getString("key"), Short.parseShort(year), errorResponse);

ErrorRepository.insertErrorLogRequest()

    @Modifying
@Query(value="INSERT INTO ERRORLOG " +
        "(KEY,YEAR,ERROR_CLOB,TIMESTAMP) " +
        "VALUES " +
        "(?1,?2,
        "TO_CLOB(?3),SYSTIMESTAMP)",nativeQuery = true)
int insertErrorLogRequest(String key, short year, Clob errorResponse) throws SQLException, DataAccessException;

数据库表中没有长列。 我正在 ORA-01461:只能插入一个LONG值才能插入LONG列

我正在使用 Oracle 11g& ojdbc14 maven依赖

<dependency>
    <groupId>com.oracle</groupId>
    <artifactId>ojdbc14</artifactId>
    <version>10.2.0.4.0</version>
</dependency>

0 个答案:

没有答案