이 문서는 지원되지 않는 버전의 PostgreSQL 용입니다.
당신은에 대해 같은 페이지를 보려고 할 수 있습니다무지개 토토 : 문서 : 17 : 41 장. PL/PGSQL - SQL 절차 언어버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

Chapter 36.pl/pgsql - SQL절차 언어

pl/pgsql로드 가능합니다PostgreSQL데이터베이스 시스템. 디자인 목표pl/pgsqla

  • 함수 및 트리거를 작성하는 데 사용될 수 있습니다

  • 제어 구조 추가SQL언어,

  • 복잡한 계산을 수행 할 수 있습니다.

  • 모든 사용자 정의 유형, 함수 및

  • 서버에서 신뢰할 수 있도록 정의 할 수 있습니다.

  • 사용하기 쉽습니다.

입력/출력 변환 및 계산 기능을 제외하고pl/pgsql. 예를 들어 가능합니다

36.1. 개요

thepl/pgsql전화 처리기pl/pgsql진술SQL표현 및SQL함수에 사용 된 명령은 그렇지 않습니다

각 표현 및SQL명령은 기능에 처음 사용됩니다.pl/pgsql통역사SPI관리자SPI_PREPAREandSPI_SAVEPLAN함수).그 표현을 후속 방문 또는pl/pgsql함수. 단점은 그게됩니다

한 번pl/pgsql

create function populate () 정수를 $$로 반환합니다

위의 함수를 실행하면 OID를 참조합니다.my_function ()공연진술. 나중에 떨어지면my_function (),populate ()할 수 없습니다my_function ()더 이상. 너populate ()또는 적어도 새 데이터베이스를 시작하십시오생성 또는정의를 업데이트 할 때my_function(함수가있을 때"교체", 그 OID는 아닙니다

왜냐하면pl/pgsql저장pl/pgsql함수가 있어야합니다pl/pgsql execute성명서 - 새로운 실행 계획을 세우는 대가로

참고 :thepl/pgsql execute진술은와 관련이 없습니다와이즈 토토 : 문서 : 8.1 : executeSQLPostgreSQL서버. 서버의execute명령문을 사용할 수 없습니다pl/pgsql기능

36.1.1. 사용의 장점pl/pgsql

SQLIS THE LANGUAGEPostgreSQL및 대부분SQL명령문을 실행해야합니다

이는 고객 신청서가 각각을 보내야 함을 의미합니다

withpl/pgsql할 수 있습니다내부데이터베이스

  • 고객 간의 추가 라운드 여행 제거

  • 클라이언트가 필요하지 않은 중간 결과

  • 추가 쿼리 라운드가 필요하지 않습니다

이것은 상당한 성능 증가를 허용 할 수 있습니다

withpl/pgsql당신

36.1.2. 뒷받침 된 주장과 결과

기능pl/pgsql인수로 받아 들일 수 있습니다pl/pgsql반환으로 기능레코드섹션.

pl/pgsql함수는 할 수 있습니다AnylementandAnyArray. a섹션. 예제가에 표시됩니다.섹션.

pl/pgsql함수는 할 수 있습니다"set"또는 테이블은 가능한 모든 데이터 유형입니다다음 반환

마침내, Apl/pgsql함수는 반환으로 선언 될 수 있습니다void유용한 반환 값이없는 경우.

참고 : pl/pgsql현재 도메인 유형에 대한 전폭적 인 지원이 없습니다.pl/pgsql

pl/pgsql함수는 할 수 있습니다

구체적인 예가 나타납니다섹션and섹션 36.7.1.