PREPARE, EXECUTE, DEALLOCATE 구문

PREPARE, EXECUTE, DEALLOCATE 구문

PREPARE 구문은 나중에 실행하기 위한 prepared statement(준비된 구문)를 만들어요. EXECUTE 구문은 선택적 인자와 함께 이를 실행하고, DEALLOCATE 구문은 이를 제거한답니다.

출처: 문서

본문

오토-인크리먼트, 위치 기반, 명명된 파라미터에 대한 자세한 내용은 [Prepared Statements]({% link docs/current/sql/query_syntax/prepared_statements.md %})를 참고해요.

PREPARE

query_person이라는 이름의 구문을 준비해볼게요:

PREPARE query_person AS
    SELECT *
    FROM person
    WHERE starts_with(name, $name_start)
      AND age >= $minimum_age;

구문 이름 뒤에 파라미터 타입을 선언할 수도 있어요:

PREPARE add_values(INTEGER, INTEGER) AS
    SELECT $1 + $2;

문법

EXECUTE

명명된 인자로 prepared statement를 실행해볼게요:

EXECUTE query_person(name_start := 'B', minimum_age := 40);

위치 기반 인자로 prepared statement를 실행해볼게요:

EXECUTE add_values(20, 22);

문법

DEALLOCATE

prepared statement를 제거해볼게요:

DEALLOCATE query_person;

선택적 PREPARE 키워드는 PostgreSQL 호환성을 위해 허용돼요:

DEALLOCATE PREPARE add_values;

문법

더 알아보기 (Learn more)

준비된 구문의 파라미터 처리 방식에 대해 더 알고 싶다면 [Prepared Statements]({% link docs/current/sql/query_syntax/prepared_statements.md %}) 문서를 참고해요.