즉시 실행 - 진술을 동적으로 준비하고 실행
즉시 실행String
즉시 실행
결과 행을 검색하지 않고 동적으로 지정된 SQL 문을 즉시 준비하고 실행합니다.
String
#실행할 SQL 문을 포함하는 문자 그대로 문자열 또는 호스트 변수.
일반적인 사용법에서String
는 동적으로 구성된 SQL 문을 포함하는 문자열에 대한 호스트 변수 참조입니다. 문자 그대로의 경우는 그다지 유용하지 않습니다. 추가 입력없이 SQL 문을 직접 작성할 수도 있습니다.즉시 실행
.
문자 그대로 문자열을 사용하는 경우 SQL 문에 포함하려는 이중 인용문은 Octal Escapes (에 따라 작성해야합니다.\ 042
) 일반적인 C 관용이 아닙니다\ "
. 이것은 문자열이 an 안에 있기 때문입니다.Exec SQL
섹션이므로 ECPG Lexer는 C 규칙이 아닌 SQL 규칙에 따라이를 구문 분석합니다. 임베디드 백 슬래시는 나중에 C 규칙에 따라 처리됩니다. 하지만\ "
문자 그대로 끝나는 것으로 보이기 때문에 즉각적인 구문 오류가 발생합니다.
다음은 an을 실행하는 예입니다삽입
진술 사용즉시 실행
및 호스트 변수 이름명령
:
sprintf (명령, "테스트 (이름, 금액, 문자) 값에 삽입 ( 'db :' 'r1' ', 1,'f ')"); Exec SQL 즉시 실행 : 명령;
즉시 실행
SQL 표준에 지정되어 있습니다.