사용언어 생성, aPostgreSQL사용자는 새로 등록 할 수 있습니다 A를 가진 절차 언어postgresql데이터베이스. 그 후, 기능 트리거 절차는이 새로운 언어로 정의 될 수 있습니다. 그만큼 사용자는가 있어야합니다.PostgreSQL새 언어 등록에 대한 슈퍼 서서 권한.
언어 생성효과적으로 언어 이름을 통화 처리기와 연관시킵니다. 언어로 작성된 기능을 실행할 책임이 있습니다. 참조PostgreSQL : 문서 : 8.1 : 절차 토토더 많은 언어 통화 처리기에 대한 정보.
두 가지 형태의생성 언어명령. 첫 번째 형태에서 사용자는 단지 공급합니다 원하는 언어의 이름과postgresql서버 상담PG_PLTEMPLATE시스템 카탈로그를 결정합니다 올바른 매개 변수. 두 번째 형태에서 사용자는 다음을 제공합니다 언어 이름과 함께 언어 매개 변수. 두 번째 형태 정의되지 않은 언어를 만드는 데 사용될 수 있습니다pg_pltemplate, 그러나이 접근법은입니다 노아용으로 간주됩니다.
서버가 칭호에서 항목을 찾을 때PG_PLTEMPLATE지정된 언어에 대한 카탈로그 이름, 명령에 포함 된 경우에도 카탈로그 데이터를 사용합니다. 언어 매개 변수. 이 동작은 오래된 덤프의 로딩을 단순화합니다 오래된 정보가 포함될 가능성이있는 파일 언어 지원 기능.
신뢰할 수있는호출을 지정합니다 언어 핸들러는 안전합니다. 즉 우회 할 수있는 기능을 우회 할 수없는 사용자에게 제공하지 않습니다 액세스 제한. 이 키 단어가 생략 된 경우 언어 등록,PostgreSQLSuperuser 권한이 사용할 수 있습니다 새로운 기능을 만드는이 언어.
이것은 소음 단어입니다.
새로운 절차 언어의 이름. 언어 이름은 사례 둔감합니다. 이름은 그 중에서도 독특해야합니다 데이터베이스의 언어.
뒤로 호환성의 경우 이름이 포함될 수 있습니다 단일 따옴표.
call_handler이름입니다 호출 될 이전에 등록 된 기능 중 절차 언어 기능을 실행하십시오. 통화 처리기 절차 적 언어는 편집 된 것으로 작성해야합니다. 버전 1 전화 컨벤션과 함께 C와 같은 언어 등록PostgreSQL인수를 취하지 않고 반환하는 함수로La범퍼카 토토uage_Handler유형, 자리 표시 자 단순히 함수를 통화로 식별하는 데 사용되는 유형 매니저.
Valfunction이름입니다 호출 될 이전에 등록 된 함수의 언어의 새로운 기능이 만들어지면 검증하기 위해 새로운 기능. 유효성 검사 기능이 지정되지 않은 경우 그러면 새 기능이 생성 될 때 확인되지 않습니다. 유효성 검사 기능은 유형의 하나의 인수를 가져와야합니다OID제작 된 기능은 일반적으로 반환됩니다void.
유효성 검사 기능은 일반적으로 다음을 검사합니다
구문 적 정확성을위한 기능 본문이지만 또한 할 수도 있습니다
예를 들어 기능의 다른 속성을보십시오.
언어는 특정 인수 유형을 처리 할 수 없습니다. 에게
오류 신호, 유효성 검사 기능은를 사용해야합니다.Ereport ()
함수. 그만큼
함수의 반환 값은 무시됩니다.
the신뢰할 수있는옵션 및 지원 서버에 항목이있는 경우 함수 이름은 무시됩니다. 지정된 언어 이름pg_pltemplate.
the토토 사이트 순위 : 문서프로그램은 간단한 래퍼입니다 주위에언어 생성명령. 그것 쉘 명령에서 절차 언어 설치를 완화합니다 선.
use메이저 토토 사이트 : 문서 : 8.1 : 삭제 언어또는 더 나은Dropla범퍼카 토토프로그램, 절차 언어를 삭제하는 프로그램.
시스템 카탈로그PG_LA범퍼카 토토UAGE
(참조토토 핫 : 문서 : 8.1 : PG_LANGUAGE)
현재 설치된 언어에 대한 정보를 기록합니다.
또한,Createla범퍼카 토토나열 할 옵션이 있습니다
설치된 언어.
절차 언어로 기능을 만들려면 사용자는 그만큼usage언어 특권. 에 의해 기본,usagepublic17442_17518
절차 언어는 개별 데이터베이스에 로컬입니다. 그러나 언어는에 설치할 수 있습니다.Template1데이터베이스 후속 적으로 만들어진 모든 곳에서 자동으로 사용할 수 있습니다 데이터베이스.
통화 핸들러 함수 및 유효성 검사 기능 (있는 경우) 서버에 항목이없는 경우 이미 존재해야합니다. 언어pg_pltemplate. 그러나 언제 항목이 있으며, 기능은 아직 존재할 필요가 없습니다. 그들 데이터베이스에없는 경우 자동 정의됩니다. (이로 인해언어 생성실패, 언어를 구현하는 공유 라이브러리가 설치에서 사용할 수 없습니다.)
inPostgreSQL이전 버전 7.3, 핸들러 기능을 반환으로 선언해야했습니다. 자리 표시 자형opaque가 아니라La범퍼카 토토uage_Handler. 오래된 로딩을 지원합니다 덤프 파일,언어 생성수락 할 것입니다 반환으로 선언 된 함수opaque, 그러나 통지를 발행하고 선언 된 기능을 변경합니다. 반환 유형La범퍼카 토토uage_Handler.
표준 절차를 만드는 선호하는 방법 언어는 단지 :
언어 생성 plpgsql;
pg_pltemplate카탈로그, 이와 같은 시퀀스 필요하다 :
함수 만들기 plsample_call_handler () language_handler를 반환합니다 '$ libdir/plsample'으로 언어 C; 언어 plsample을 만듭니다 핸들러 plsample_call_handler;