이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다PostgreSQL : 문서 : 17 : 40.1. 절차 토토 설치버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

39.1. 절차 언어 설치

절차 토토 꽁 머니는이어야합니다."설치"사용되는 각 데이터베이스에. 그러나 데이터베이스에 설치된 절차 토토 꽁 머니template1입력이 이후로 생성 된 모든 데이터베이스에서 자동으로 사용할 수 있습니다.template1데이터베이스 생성. 따라서 데이터베이스 관리자는 어떤 데이터베이스를 사용할 수 있는지 결정할 수 있으며 선택한 경우 일부 토토 꽁 머니를 기본적으로 사용할 수 있습니다.

표준 분포와 함께 제공되는 토토 꽁 머니의 경우 실행하면확장 생성 Language_Name언어를 현재 데이터베이스에 설치하려면. 또는 프로그램PostgreSQL쉘 명령 줄에서이를 수행하는 데 사용할 수 있습니다. 예를 들어 토토 꽁 머니를 설치하려면pl/perl데이터베이스로template1, 사용 :

Createlang plperl template1

아래 설명 된 수동 절차는 확장자로 포장되지 않은 토토 꽁 머니를 설치하는 데만 권장됩니다.

매뉴얼 절차 토토 꽁 머니 설치

절차 토토 꽁 머니는 데이터베이스에 5 단계로 설치되며 데이터베이스 슈퍼 사용자가 수행해야합니다. 대부분의 경우 필수 SQL 명령은 AN의 설치 스크립트로 패키지해야합니다."확장"확장 생성실행하는 데 사용할 수 있습니다.

  1. 토토 꽁 머니 핸들러의 공유 객체는 적절한 라이브러리 디렉토리에 컴파일되어 설치해야합니다. 이것은 일반 사용자 정의 C 기능을 갖춘 모듈을 구축하고 설치하는 것과 같은 방식으로 작동합니다.섹션 35.9.6. 종종 토토 꽁 머니 처리기는 실제 프로그래밍 토토 꽁 머니 엔진을 제공하는 외부 라이브러리에 따라 다릅니다.

  2. 핸들러는 명령으로 선언해야합니다

    기능 만들기handler_function_name()경로-공유-개체'

    특수 반환 유형Language_Handler이 함수가 정의 된 것 중 하나를 반환하지 않는다고 데이터베이스 시스템에 알려줍니다.SQL데이터 유형이며 직접 사용할 수 없습니다SQL진술.

  3. 선택적으로, 토토 꽁 머니 핸들러는를 제공 할 수 있습니다."인라인"익명 코드 블록을 실행하는 핸들러 기능 (스포츠 토토 베트맨 : 문서 : 9.5 : do명령)이 토토 꽁 머니로 작성되었습니다. 인라인 핸들러 기능이 토토 꽁 머니로 제공되는 경우와 같은 명령으로 선언하십시오.

    함수 만들기inline_function_name(내부)경로-공유-개체'
  4. 선택적으로 토토 꽁 머니 핸들러는 a를 제공 할 수 있습니다."Validator"실제로 실행하지 않고 정확성에 대한 함수 정의를 확인하는 함수. 유효성 검사 기능은에 의해 호출됩니다.함수 생성존재하는 경우. 토토 꽁 머니에 의해 유효성 검사 기능이 제공되는 경우와 같은 명령으로 선언하십시오.

    기능 만들기validator_function_name(OID)경로-공유-개체'
  5. 마지막으로 PL은 명령으로 선언해야합니다

    만들기 [신뢰할 수있는] [절차] 토토 꽁 머니Language_Name핸들러handler_function_name[인라인inline_function_name]Validatorvalidator_function_name];

    선택적인 키워드신뢰할 수있는언어가 사용자에게 그렇지 않은 데이터에 대한 액세스 권한을 부여하지 않도록 지정합니다. 신뢰할 수있는 언어는 일반 데이터베이스 사용자 (슈퍼 사용자 권한이없는 사람)를 위해 설계되었으며 기능 및 트리거 절차를 안전하게 생성 할 수 있습니다.신뢰할 수있는플래그는 데이터베이스 서버 내부 또는 파일 시스템에 액세스 할 수없는 토토 꽁 머니에 대해서만 제공되어야합니다. 토토 꽁 머니pl/pgsql,pl/tclpl/perl신뢰할 수있는 것으로 간주됩니다. 언어pl/tclu,pl/perlupl/pythonu무제한 기능을 제공하도록 설계되었으며not신뢰할 수있는 표시.

예 39-1수동 설치 절차가 언어와 어떻게 작동하는지 보여줍니다pl/perl.

예 39-1. 수동 설치pl/perl

다음 명령은 데이터베이스 서버에 공유 객체를 찾을 위치를 알려줍니다.pl/perl토토 꽁 머니 통화 처리기 기능 :

함수 만들기 plperl_call_handler () language_handler를 반환합니다

pl/perl인라인 핸들러 기능과 유효성 검사기 기능이 있으므로 다음에도 선언합니다.

함수 만들기 plperl_inline_handler (내부)는 void를 반환합니다

명령 :

신뢰할 수있는 절차 적 언어 생성

그런 다음 언어 속성이있는 함수 및 트리거 절차에 대해 이전에 선언 된 함수가 호출되어야한다고 정의합니다.plperl.

기본값postgresql설치, 핸들러pl/pgsql토토 꽁 머니가 구축되어 설치되어"라이브러리"디렉토리; 또한pl/pgsql토토 꽁 머니 자체는 모든 데이터베이스에 설치됩니다. 만약에TCL지원이 구성되어 있습니다.pl/tclandpl/tclu라이브러리 디렉토리에 구축 및 설치되었지만 토토 꽁 머니 자체는 기본적으로 모든 데이터베이스에 설치되지 않습니다. 마찬가지로,pl/perlandpl/perluPerl 지원이 구성된 경우 핸들러가 빌드 및 설치됩니다.pl/pythonuPython 지원이 구성되면 핸들러가 설치되어 있지만 이러한 언어는 기본적으로 설치되지 않습니다.