이 문서는 지원되지 않는 버전의 PostgreSQL 용입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다PostgreSQL : 문서 : 17 : 스포츠 토토 결과 만들기버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

생성 토토 사이트 추천

이름

함수 생성-새를 정의합니다 토토 사이트 추천

시놉시스

함수 만들기이름([ftype[, ...]])
    보고rtypeas정의언어 'la토토 사이트 추천name'
    [ 와 함께 (속성[, ...])]
토토 사이트 추천 만들기이름([ftype[, ...]])
    보고rtypeasOBJ_FILE , link_symbol언어 'la토토 사이트 추천name'
    [ 와 함께 (속성[, ...])

입력

이름

생성 할 함수의 이름.

ftype

함수 인수의 데이터 유형이있는 경우. 입력 유형은 기본 또는 복잡한 유형 일 수 있습니다.opaque. opaque함수가 수락 함을 나타냅니다 와 같은 비 SQL 유형의 인수char *.

rtype

반환 데이터 유형. 출력 유형이 지정 될 수 있습니다 기본 유형으로, 복잡한 유형setof 유형또는opaque. 그만큼setof수정자는 함수는 단일이 아닌 일련의 항목을 반환합니다. 목.

속성

함수에 대한 선택적인 정보, 최적화에 사용됩니다. 자세한 내용은 아래를 참조하십시오.

정의

함수를 정의하는 문자열; 의미는 다음과 같습니다 언어. 내부 기능 이름 일 수 있습니다 객체 파일, SQL 쿼리 또는 텍스트로가는 경로 절차 언어.

OBJ_FILE , link_symbol

이 형태의as절은입니다 동적으로 연결된 C 언어 기능에 사용됩니다 C 언어 소스 코드의 함수 이름은 SQL 함수의 이름과 동일합니다. 문자열OBJ_FILE이름입니다 동적으로로드 가능한 객체를 포함하는 파일 및link_symbolis Object의 링크 기호, 즉 함수의 이름입니다. C 언어 소스 코드.

la토토 사이트 추천name

'SQL','C','내부', 또는 'plname', 여기 'plname' a의 이름입니다 절차 언어를 만들었습니다. 보다언어 생성세부.

출력

생성

명령이 완료되면 반환됩니다 성공적으로.

설명

함수 만들기허용 aPostgres토토 사이트 추천을 등록 할 수 있습니다 데이터베이스. 그 후,이 사용자는 소유자로 간주됩니다 함수.

함수 속성

다음 항목이 with 절에 나타날 수 있습니다 :

iscachable

iscachable토토 사이트 추천이 주어지면 항상 동일한 결과를 반환합니다 동일한 인수 값 (즉, 데이터베이스를 수행하지 않습니다 조회하거나 직접 존재하지 않는 정보를 사용합니다 매개 변수 목록에서). Optimizer 사용iscachable안전한 지 여부를 알 수 있습니다 토토 사이트 추천의 호출을 사전 평가하십시오.

isstrict

isstrict기능은 항상 그 일 때마다 null을 반환합니다 논쟁은 무효입니다. 이 속성이 지정된 경우 널 인수가있을 때 기능은 실행되지 않습니다. 대신 널 결과가 자동으로 가정됩니다. 언제isstrict지정되지 않았습니다 널 입력에 대한 기능이 호출됩니다. 그때는입니다 NULLS를 확인하는 기능 저자의 책임 필요하고 적절하게 대응합니다.

노트

의 장을 참조하십시오PostgreSQL 프로그래머 가이드확장 주제Postgres추가 토토 사이트 추천을 통해 외부 토토 사이트 추천 작성에 관한 정보.

use드롭 함수제거하려면 사용자 정의 기능.

전체SQL92Type Syntax IS 입력 인수 및 반환 값을 허용합니다. 그러나 일부 유형 사양의 세부 사항 (예 : 정밀 필드 을 위한숫자types)는 책임입니다 기본 기능 구현의 경우 조용히 있습니다 삼키는 (즉, 인식 또는 시행되지 않음)함수 생성명령.

Postgres기능을 허용합니다 "과부하"; 즉, 동일한 이름이 여러에 사용될 수 있습니다. 뚜렷한 주장이있는 한 다른 기능 유형. 이 시설은 내부와 그러나 c-language functions.

2내부기능은 가질 수 없습니다 링크 시간에 오류가 발생하지 않고 동일한 C 이름입니다. 얻기 위해 그 주위에 다른 C 이름을 제공하십시오 (예 : 사용하십시오. C 이름의 일부로 인수 유형). as의 as의 이름생성 기능. AS 절이 비어 있으면함수 생성의 C 이름을 가정합니다 함수는 SQL 이름과 동일합니다.

마찬가지로, 다중으로 SQL 기능 이름을 과부하시킬 때 c- 언어 함수, 각각의 c- 언어 인스턴스를 제공한다 뚜렷한 이름을 기능하고 대체 형태의를 사용하십시오.as절의 조항함수 생성구문을 선택하려면 구문 각 과부하 된 SQL 기능의 C- 언어 구현.

usage

간단한 SQL 기능을 만들려면 :

함수 생성 one () int4를 반환합니다
    '결과로 1 선택'으로
    언어 'SQL';
답변으로 하나를 선택하십시오;답변 
--------
      1

이 예제는 사용자 제작 공유 라이브러리. 이 특정한 일상적인 a 함수의 체크 숫자가있는 경우 숫자를 확인하고 true를 반환합니다. 매개 변수가 정확합니다. 수표에 사용하기위한 것입니다 기부금.

함수 생성 EAN_CHECKDIGIT (BPCHAR, BPCHAR)는 부울을 반환합니다
    '/usr1/proj/bray/sql/funcs.so'language 'c';

테이블 제품 생성 (
    ID char (8) 기본 키,
    eanprefix char (8) check (eanprefix ~ '[0-9] 2-[0-9] 5')
                      참조 Brandname (ean_prefix),
    eancode char (6) check (eancode ~ '[0-9] 6'),
    제약 ean check (ean_checkdigit (eanprefix, eancode)))
);

이 예제는 변환을 유형하는 함수를 만듭니다 사용자 정의 유형 단지와 내부 유형 사이 가리키다. 이 기능은 동적으로로드 된 객체에 의해 구현됩니다 그것은 C 소스에서 컴파일되었습니다. 을 위한Postgres유형 변환 함수를 찾으려면 자동으로 SQL 함수는 반환 유형이므로 과부하는 피할 수 없습니다. 함수 이름 두 번째 형태의를 사용하여 과부하됩니다.asSQL 정의의 조항 :

함수 포인트 생성 (복잡한)은 포인트를 반환합니다
    '/home/bernie/pgsql/lib/complex.so', 'complex_to_point'로
    언어 'C';

함수의 C 선언은 다음과 같습니다.

포인트 * complex_to_point (complex * z)

        지점 *p;

        p = (점 *) palloc (sizeof (point));
        p- x = z- x;
        p- y = z- y;

        반환 p;

호환성

SQL92

기능 생성isPostgres언어 확장.

SQL/PSM

참고 :PSM은 영구 저장된 모듈을 나타냅니다. 절차 적 언어입니다. SQL/PSM은 표준입니다 기능 확장 가능성 활성화.

SQL/PSM함수 만들기다음 구문 :
함수 생성이름([[in | out | inout]]타입[, ...]])
     보고rtype언어 'la토토 사이트 추천name'
     특별한루틴
     SQL-Statement