이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 같은 페이지를 보려고 할 수 있습니다PostgreSQL : 문서 : 17 : 와이즈 토토 생성버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

생성 스포츠 토토

이름

스포츠 토토 생성-새로운 절차 스포츠 토토 정의

시놉시스

만들기 [또는 교체] [절차] 스포츠 토토 생성이름만들기 [또는 교체] [신뢰할 수있는] [절차] 스포츠 토토이름핸들러call_handler[inlineinline_handler] [Validatorvalfunction]

설명

스포츠 토토 생성새를 등록합니다 A를 가진 절차 스포츠 토토postgresql데이터베이스. 그 후, 기능 트리거 절차는이 새로운 스포츠 토토로 정의 될 수 있습니다.

참고 :PostgreSQL9.1, 대부분의 절차 적 언어가 만들어졌습니다"확장", 따라서와 함께 설치해야합니다.PostgreSQL : 문서 : 9.3 : 토토 생성not스포츠 토토 생성. 직접 사용스포츠 토토 생성이제 확장에 국한되어야합니다 설치 스크립트. 당신이있는 경우"베어"데이터베이스의 스포츠 토토, 아마도 업그레이드 결과,를 사용하여 확장으로 변환 할 수 있습니다.확장 생성langname포장되지 않은.

스포츠 토토 생성효과적으로 연관되어 있습니다 책임있는 핸들러 기능이있는 언어 이름 언어로 작성된 기능 실행. 참조51 장언어에 대한 자세한 내용 핸들러.

두 가지 형태의생성 스포츠 토토명령. 첫 번째 형태에서 사용자는 단지 공급합니다 원하는 언어의 이름과PostgreSQL서버 상담pg_pltemplate시스템 카탈로그를 결정합니다 올바른 매개 변수. 두 번째 형태에서 사용자는 다음을 제공합니다 언어 이름과 함께 언어 매개 변수. 두 번째 형태 정의되지 않은 언어를 만드는 데 사용될 수 있습니다PG_PLTEMPLATE이 접근법은 고려됩니다 없어져 가는.

서버가 항목을 찾을 때pg_pltemplate지정된 언어에 대한 카탈로그 이름, 명령에 포함 된 경우에도 카탈로그 데이터를 사용합니다. 언어 매개 변수. 이 동작은 오래된 덤프의 로딩을 단순화합니다 오래된 정보가 포함될 가능성이있는 파일 언어 지원 기능.

일반적으로 사용자는를 가져야합니다.PostgreSQL등록하기위한 슈퍼 서서 권한 a 새로운 스포츠 토토. 그러나 데이터베이스의 소유자는 새로운 것을 등록 할 수 있습니다. 해당 데이터베이스 내의 스포츠 토토가에 나열된 경우pg_pltemplate카탈로그로 표시되어 있습니다 데이터베이스 소유자가 생성 할 수 있습니다 (TMPLDBACREATE참). 기본값은 그 것입니다 신뢰할 수있는 스포츠 토토는 데이터베이스 소유자가 작성할 수 있지만 의 내용을 수정하여 수퍼 유행자에 의해 조정됩니다pg_pltemplate. 언어의 창조자가됩니다 소유자는 나중에 떨어 뜨리거나 이름을 바꾸거나 새로 할당 할 수 있습니다. 소유자.

스포츠 토토 생성 또는 교체새 스포츠 토토를 만들거나 기존 정의를 대체하십시오. 만약 스포츠 토토는 이미 존재하며 매개 변수는 다음에 따라 업데이트됩니다 지정되거나 찍은 값pg_pltemplate, 그러나 언어 소유권 및 권한 설정은 변경되지 않으며 기존 기능이 변경되지 않습니다 언어로 작성된 것은 여전히 ​​유효하다고 가정합니다. 게다가 스포츠 토토 생성을위한 정상적인 권한 요구 사항에 사용자는 기존 언어의 수퍼 유저 또는 소유자 여야합니다. 그만큼교체케이스는 주로 익숙해졌습니다 스포츠 토토가 존재하는지 확인하십시오. 스포츠 토토에 A가있는 경우pg_pltemplateEntry교체실제로는 아무것도 변경하지 않습니다 비정상적인 경우를 제외하고 기존 정의pg_pltemplate입력이 수정되었습니다 스포츠 토토가 만들어 졌기 때문에.

매개 변수

신뢰할 수있는

신뢰할 수있는스포츠 토토를 지정합니다 사용자가 그렇지 않으면 데이터에 대한 액세스 권한을 부여하지 않습니다. 가지다. 스포츠 토토를 등록 할 때이 키 단어가 생략되면 을 가진 사용자 만PostgreSQLSuperUser Privilege는이 언어를 사용하여 새로운 것을 만들 수 있습니다 기능.

절차

이것은 소음 단어입니다.

이름

새로운 절차 언어의 이름. 이름은 독특해야합니다 데이터베이스의 언어 중.

뒤로 호환성을 위해 이름은 단일로 둘러싸여 있습니다. 인용 부호.

핸들러 call_handler

call_handlera의 이름입니다 실행하기 위해 호출 될 이전에 등록 된 기능 절차 언어의 기능. 절차에 대한 통화 핸들러 언어는 c와 같은 편집 된 언어로 작성해야합니다. 버전 1 전화 컨벤션 및 등록postgresql인수가없는 함수로 그리고 반환Language_Handler타입, a 단순히 함수를 전화 처리기.

인라인 inline_handler

inline_handler는 a의 이름입니다 실행하도록 호출되는 이전에 등록 된 기능 익명 코드 블록 (스포츠 토토 결과 : 문서 : 9.3 : do명령) 스포츠 토토. 그렇지 않은 경우inline_handler함수가 지정되어 있으며 언어는 익명 코드를 지원하지 않습니다. 블록. 핸들러 함수는 유형의 하나의 인수를 취해야합니다내부do명령의 내부 표현 일반적으로 반환void. 반환 값 핸들러는 무시됩니다.

Validator Valfunction

Valfunction는 a의 이름입니다 새로운시기에 호출 될 이전에 등록 된 기능 새로운 기능을 검증하기 위해 언어의 함수가 생성됩니다. 유효성 검사 기능이 지정되지 않으면 새 기능이 생성 될 때 확인하십시오. 유효성 검사 기능은 하나를 가져와야합니다 유형의 주장OID갈 수있는 기능 중 일반적으로 반환됩니다void.

유효성 검사 기능은 일반적으로 기능 본문을 검사합니다 구문 적 정확성을 위해서는 다른 것을 볼 수 있습니다. 예를 들어 스포츠 토토가 할 수없는 경우 기능의 속성 특정 인수 유형을 처리합니다. 오류를 알리기 위해 유효성 검사기 함수는를 사용해야합니다.Ereport ()함수. 함수의 반환 값은 무시됩니다.

the신뢰할 수있는옵션 및 지원 서버에 항목이있는 경우 함수 이름은 무시됩니다. 지정된 언어 이름pg_pltemplate.

노트

thePostgreSQL프로그램은 간단한 래퍼입니다 주위에스포츠 토토 생성명령. 그것 쉘 명령에서 절차 언어 설치를 완화합니다 선.

use43토토03또는 더 나은 그러나Droplang프로그램, 절차를 삭제합니다 언어.

시스템 카탈로그PG_LANGUAGE(참조사설 토토 : 문서 : 9.3 : PG_LANGUAGE) 레코드 현재 설치된 스포츠 토토에 대한 정보. 또한,Createlang를 나열하는 옵션이 있습니다 설치 된 스포츠 토토.

절차 언어로 기능을 만들려면 사용자는 그만큼usage스포츠 토토 특권. 에 의해 기본,usagepublic19646_19720

절차 언어는 개별 데이터베이스에 로컬입니다. 하지만, 언어를에 설치할 수 있습니다.Template1데이터베이스 이후에 제작 된 모든 데이터베이스에서 자동으로 사용할 수 있습니다.

통화 처리기 기능, 인라인 핸들러 기능 (있는 경우), 그리고 유효성 검사 기능 (있는 경우)은 이미 존재해야합니다. 서버는 언어에 대한 항목이 없습니다PG_PLTEMPLATE. 그러나 항목이있을 때 기능은 아직 존재할 필요가 없습니다. 그들은 자동으로됩니다 데이터베이스에없는 경우 정의됩니다. (이로 인해스포츠 토토 생성공유 된 경우 실패 스포츠 토토를 구현하는 라이브러리는 설치.)

inpostgresql이전 버전 7.3, 핸들러 기능을 반환하는 것으로 선언해야했습니다. 자리 표시 자 유형opaque가 아니라Language_Handler. 오래된 로딩을 지원합니다 덤프 파일,스포츠 토토 생성수락 할 것입니다 반환으로 선언 된 기능opaque, 그러나 그것 통지를 발행하고 함수의 선언 된 반환 유형을 변경합니다. 에게Language_Handler.

예제

표준 절차를 만드는 선호하는 방법 언어는 단지 :

스포츠 토토 생성 plperl;

PG_PLTEMPLATE카탈로그, 이와 같은 시퀀스 필요 :

함수 만들기 plsample_call_handler () language_handler를 반환합니다
    '$ libdir/plsample'으로
    언어 C;
언어 plsample을 만듭니다
    핸들러 plsample_call_handler;

호환성

스포츠 토토 생성isPostgreSQL확장.