| 포스트그레SQL | ||
|---|---|---|
| 이전 | 다음 | |
그토토 핫 프로그래밍 인터페이스(SPI) 사용자에게 내부에서 SQL 쿼리를 실행할 수 있는 기능을 제공하려는 시도입니다. 사용자 정의 C 함수. 적절한 것이 부족하다는 점을 감안할 때절차적 언어(PL) 현재 버전에서는 Postgres, SPI는 서버 저장 프로시저를 작성하는 유일한 방법이며 트리거. 미래에는 SPI가 "일꾼"으로 사용될 것입니다. PL.
사실 SPI는 단지 기본 인터페이스 기능 세트일 뿐입니다. Parser, Planner, Optimizer 및 Executor에 대한 액세스를 단순화합니다. SPI 또한 일부 메모리 관리도 수행합니다.
오해를 피하기 위해 다음을 사용하겠습니다.함수SPI 인터페이스 기능을 의미하며절차사용자 정의 C 함수용 SPI를 사용합니다.
SPI 절차는 항상 일부 (상위) 실행자에 의해 호출되며 SPI 관리자는 Executor를 사용하여 쿼리를 실행합니다. 다른 프로시저는 쿼리를 실행하는 실행자에 의해 호출될 수 있습니다. 절차.
참고, 프로시저에서 쿼리를 실행하는 동안 거래가 중단되면 통제권이 귀하에게 반환되지 않습니다. 절차. 오히려 모든 작업이 롤백되고 서버는 클라이언트의 다음 명령을 기다립니다. 이 내용은 다음에서 변경됩니다. 향후 버전.
기타 제한 사항은 BEGIN, END 및를 실행할 수 없다는 것입니다. ABORT(트랜잭션 제어문) 및 커서 작업. 이것 향후에도 변경될 예정입니다.
성공하면 SPI 함수는 음수가 아닌 결과를 반환합니다. (반환된 정수 값을 통해 또는 SPI_result 전역을 통해) 변수(아래 설명 참조). 오류 시 음수 또는 NULL 결과 반환됩니다.
| 이전 | 집 | 다음 |
| 예 | 위로 | 인터페이스 기능 |