PREPARE

PREPARE (준비)

복잡한 쿼리를 이름을 붙여 세션에 저장해 두고, 나중에 실행하는 문법이에요. 매개변수를 물음표 자리에 남겨 실행 시점에 값을 채울 수 있어요.

출처: 문서

본문

나중에 실행하기 위해 문(statement)을 준비해요. 준비된 문은 세션에 이름을 붙여 저장되는 쿼리예요. 문에는 실행 시점에 실제 리터럴로 대체될 매개변수를 넣을 수 있는데, 매개변수는 물음표(?)로 표시돼요.

예시

SELECT 쿼리를 준비해요:

PREPARE my_select1 FROM
SELECT * FROM nation;

매개변수를 포함하는 SELECT 쿼리를 준비해요. regionkeynationkey와 비교할 값은 EXECUTE 문에서 채워져요:

PREPARE my_select2 FROM
SELECT name FROM nation WHERE regionkey = ? AND nationkey < ?;

INSERT 쿼리를 준비해요:

PREPARE my_insert FROM
INSERT INTO cities VALUES (1, 'San Francisco');

더 알아보기 (Learn more)

준비한 문을 실제로 실행하려면 EXECUTE를, 더 이상 쓰지 않으면 DEALLOCATE PREPARE를 사용해요. 실행에 필요한 입력·출력을 확인할 때는 DESCRIBE INPUTDESCRIBE OUTPUT이 도움이 돼요.