pl/pgsql로드 가능합니다PostgreSQL데이터베이스 시스템. 디자인 목표pl/pgsqla
함수 및 트리거를 작성하는 데 사용될 수 있습니다
제어 구조 추가SQL언어,
복잡한 계산을 수행 할 수 있습니다.
모든 사용자 정의 유형, 함수 및
서버에서 신뢰할 수 있도록 정의 할 수 있습니다.
사용하기 쉽습니다.
입력/출력 변환 및 계산 기능을 제외하고pl/pgsql. 예를 들어 가능합니다
thepl/pgsql전화 처리기pl/pgsql진술SQL표현 및SQL함수에 사용 된 명령은 그렇지 않습니다
각 표현 및SQL명령은 기능에 처음 사용됩니다.pl/pgsql통역사SPI관리자SPI_PREPARE
andSPI_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기능
SQLIS THE LANGUAGEPostgreSQL및 대부분SQL명령문을 실행해야합니다
이는 고객 신청서가 각각을 보내야 함을 의미합니다
withpl/pgsql할 수 있습니다내부데이터베이스
고객 간의 추가 라운드 여행 제거
클라이언트가 필요하지 않은 중간 결과
추가 쿼리 라운드가 필요하지 않습니다
이것은 상당한 성능 증가를 허용 할 수 있습니다
withpl/pgsql당신
기능pl/pgsql인수로 받아 들일 수 있습니다pl/pgsql반환으로 기능레코드섹션.
pl/pgsql함수는 할 수 있습니다AnylementandAnyArray. a섹션. 예제가에 표시됩니다.섹션.
pl/pgsql함수는 할 수 있습니다"set"또는 테이블은 가능한 모든 데이터 유형입니다다음 반환
마침내, Apl/pgsql함수는 반환으로 선언 될 수 있습니다void유용한 반환 값이없는 경우.
참고 : pl/pgsql현재 도메인 유형에 대한 전폭적 인 지원이 없습니다.pl/pgsql
pl/pgsql함수는 할 수 있습니다