내가 Jooq 3.9.0와 오라클 11g 테이블의 필드를 업데이트 배치에 노력하고있어 나는 일 관련의 예외 얻고 있지만 : 우리는있어JOOQ 일괄 업데이트 날짜
org.jooq.exception.DataAccessException: SQL [null]; error occurred during batching: ORA-01843: not a valid month
을 Java 8 시간 유형 (javaTimeTypes = true
)을 사용합니다. 의사 코드 :
List<Query> updates = singletonList(
jooq.update(TABLE).set(TABLE.FIELD, LocalDateTime.now()));
jooq.batch(updates).execute();
필드의 테이블에 TIMESTAMP (3) 유형이 있습니다. 지금까지 내가 예컨대 :
updates.forEach(Query::execute);
이 작품이 아닌 일괄 업데이트를하려고 노력했지만, 그것은 절대적으로 필요한 않는 한 나는 성능을 희생하지 않을 것입니다.
또한 to_timestamp(<Val>, “pattern”)
호출에서 날짜 필드를 감싸는 Jooq의 구성에서 바인딩을 추가하려고 시도했지만 그 역시 효과가 있었지만 취약한 것으로 보였고 이미 NLS 문제가 발생했으며보기가 흉하게 보입니다. 일괄 업데이트가 일반 업데이트와 다르게 작동하는 이유를 파악하는 것이 좋습니다.
당신이 3.9.1을 볼 수 jOOQ 자바 시간 API 형식에 대해 제대로 작동하지 않는, 인라인해야 로그에서 생성 된 SQL은 무엇입니까? (참고로이 문제를 열었습니다. https://github.com/jOOQ/jOOQ/issues/5910) –