EXECUTE 문은 prepared statement을 실행하며, prepared statement에 바인드 파라미터(?)를 포함하면 USING 절 뒤에 데이터 값을 바인딩할 수 있다. 단, USING 절에서는 속성과 같은 변수(variable)를 지정할 수 없으며, 반드시 리터럴, 입력 파라미터와 같은 값(value)만 지정할 수 있다.
EXECUTE stmt_name [USING value [, value] …]
;clear
EXECUTE stmt1
;ru
ERROR: A prepared statement with the name stmt1 does not exist.
--prepare and execute a statement
PREPARE stmt2 FROM 'SELECT MID(?,?,?)';
EXECUTE stmt2 USING '12345abcdeabcde',6,5;
EXECUTE stmt2 USING '12345abcdeabcde',6,10;
;ru
Current transaction has been committed.
=== <Result of SELECT Command in Line 1> ===
mid( ?:0 , ?:1 , ?:2 )
======================
'abcde'
=== <Result of SELECT Command in Line 2> ===
mid( ?:0 , ?:1 , ?:2 )
======================
'abcdeabcde'