기술 정보
home
채널 소개
home

JAVA SOURCE 생성/이관 중 Enter value for '____': 출력 시 해결 방안

문서 유형
장애 해결
분야
마이그레이션
키워드
JAVA
SOURCE
적용 제품 버전
7FS02PS
1 more property

현상

JAVA SOURCE 생성문을 추출하여 to-be DB로 이관하는 과정에서, 생성문 내에 아래와 같은 JAVA 코드가 포함된 생성문을 수행할 경우 "Enter value for '____':" 메시지가 출력되며 쿼리를 수행할 수 없습니다.
예시 코드
inListByte[inListByteIdx] = newTempByte[i]; inListByteIdx++; if((i + 1) % 16 == 0 && i != 0){ byteList.add(inListByte); inListByte = new byte[16]; inListByteIdx = 0; }
Java
복사
수행 예시
SQL> @ISU_CRYPT_BLOCK.sql At line 179, column 48: if((i + 1) % 16 == 0 && i != 0){ ^ Enter value for 'i':
Java
복사

원인

& 문자는 변수 입력 프롬프트로 인식되기 때문에, ' & i ' 구문을 사용할 경우 변수를 찾으려 시도합니다. 이때 해당 변수가 없으면 "Enter value for i:" 메시지가 출력됩니다.

해결

SET DEFINE OFF; 수행 시 & 기호를 변수 치환용 기호가 아닌 일반 문자로 인식하게 되어, && 코드가 정상적으로 실행됩니다.
SQL> SET DEFINE OFF; SQL> @ISU_CRYPT_BLOCK.sql
SQL
복사
참고
SQL> SET ESCAPE ON; 설정 후, ESCAPE '\' 등으로 회피할 수 있습니다.