1
최대 절전 모드로 생성 된 삽입 SQL을 사용자 지정하고 문제가 발생했습니다. Hibernate는 그 자체로 질의를 생성 할 때 테이블의 처음 두 열에 데이터를 삽입하지만, 테이블의 네 열 모두 null이 허용되지 않기 때문에 데이터베이스 오류가 발생한다. 삽입이 제대로 수행 되려면 새 레코드의 두 열에 동일한 데이터를 삽입해야합니다. 이것은 필자가 작성한 쿼리 (prepared statement)에서 두 개의 다른 매개 변수에 동일한 데이터를 바인딩하기 위해 Hibernate가 필요하다는 것을 의미한다.준비된 문에서 익명 매개 변수 재사용
준비된 문에 바인딩 된 익명 매개 변수를 바인딩 할 때와 다른 순서로 참조 할 수있는 SQL 구문이 있습니까?
세부
REF_USER_PAGE_XREF
----------------------------------------
PK FK1 | NETWORK_ID | VARCHAR2(100)
PK FK1 | PAGE_PATH | VARCHAR2(1000)
| USER_LAST_UPDT | VARCHAR2(100)
| TMSP_LAST_UPDT | DATE
insert into
REF_USER_PAGE_XREF(
NETWORK_ID,
PAGE_PATH,
TMSP_LAST_UPDT,
USER_LAST_UPDT)
values (
?, /* want to insert the same data here */
?,
?, /* and here */
(select
to_char(sysdate, 'DD-MON-YY')
from
dual)
나는 첫 번째와 세 번째 익명의 매개 변수에 동일한 데이터를 삽입 할.
최종 답변 (@mdma의 답변에 따라)
insert into
REF_USER_PAGE_XREF(
NETWORK_ID,
PAGE_PATH,
USER_LAST_UPDT,
TMSP_LAST_UPDT)
select
Param1,
Param2,
Param1,
(select
to_char(sysdate, 'DD-MON-YY')
from
dual)
from
(select
? as Param1,
? as Param2
from
dual) params
. 고마워. –