토토 사이트 만들기이름as ([Attribute_name data_type[CollateCollation] [, ...]])) 토토 사이트 만들기이름열거로 ([ '레이블' [, ...])) 토토 사이트 만들기이름범위 ( 하위 토토 사이트 =하위 토토 사이트[, subtype_opclass =subtype_operator_class] [, collation =Collation] [, Canonical =canonical_function] [, subtype_diff =subtype_diff_function] )) 토토 사이트 만들기이름( 입력 =input_function, 출력 =output_function[, 수신 =수신 _function] [, send =send_function] [, typmod_in =type_modifier_input_function] [, typmod_out =type_modifier_output_function] [, 분석 =Analyze_Function] [, Internallength =Internallength| 변수] [, PassedByvalue] [, 정렬 =정렬] [, Storage =스토리지] [, 좋아요 =like_type] [, 카테고리 =카테고리] [, preferred =선호] [, default =기본값] [, 요소 =요소] [, delimiter =Delimiter] [, Collatable =Collatable] )) 토토 사이트 만들기이름
토토 사이트 만들기새 데이터 토토 사이트을 등록합니다 현재 데이터베이스에서 사용합니다. 토토 사이트을 정의하는 사용자 소유자가됩니다.
스키마 이름이 주어지면 유형이 지정된 스키마. 그렇지 않으면 현재 스키마에서 생성됩니다. 유형 이름은 기존 유형의 이름과 구별되어야합니다. 또는 동일한 스키마의 도메인. (테이블에는 관련 데이터가 있기 때문에 유형, 유형 이름은 또한 이름과도 구별되어야합니다. 동일한 스키마의 기존 테이블.)
5 가지 형태의토토 사이트 만들기, AS 위의 구문 시놉시스에 표시됩니다. 그들은 각각 A를 만듭니다.복합 토토 사이트, anEnum Type, a범위 토토 사이트, a기본 토토 사이트또는 A쉘 토토 사이트. 이 중 처음 네 개는 아래에서 차례로 논의됩니다. 에이 쉘 토토 사이트은 단순히 토토 사이트을 나중에 정의 할 자리 표시 자입니다. 발급함으로써 만들어졌습니다토토 사이트 만들기유형 이름을 제외하고 매개 변수가 없습니다. 쉘 유형이 필요합니다 범위 토토 사이트 및 기본 토토 사이트을 생성 할 때 전달 참조 해당 섹션에서 논의 됨.
첫 번째 형태토토 사이트 생성생성 a 복합 토토 사이트. 복합 토토 사이트은 목록으로 지정됩니다 속성 이름 및 데이터 유형. 속성의 콜레이션은 가능합니다 데이터 유형이 Collatable 인 경우에도 지정됩니다. 복합 토토 사이트은입니다 본질적으로 테이블의 행 유형과 동일하지만 사용토토 사이트 만들기원하는 모든 것이 유형을 정의하는 것입니다. 에이 독립형 복합 토토 사이트은 예를 들어 논증으로 유용합니다. 또는 기능의 반환 유형.
복합 토토 사이트을 만들 수 있으려면usage모든 속성 토토 사이트의 권한.
두 번째 형태토토 사이트 만들기생성 열거 된 (열거 된) 유형에 설명 된대로섹션 8.7. 열거 유형은 하나의 목록을 가져옵니다 또는 더 많은 인용 된 레이블, 각각은보다 작아야합니다.지명바이트 길이 (표준의 64 바이트postgresql빌드).
세 번째 형태토토 사이트 생성생성 a 에 설명 된대로 새로운 범위 토토 사이트PostgreSQL : 문서 : 9.3 : 범위 사설 토토.
범위 토토 사이트하위 토토 사이트할 수 있습니다 관련 B- 트리 연산자 클래스가있는 모든 유형 (결정하기 위해 범위 토토 사이트의 값 순서). 일반적으로 하위 토토 사이트 기본 B- 트리 연산자 클래스는 주문을 결정하는 데 사용됩니다. 사용합니다 비 디폴트 연산자 클래스, 이름을 지정하십시오subtype_opclass. 하위 토토 사이트이있는 경우 Collatable, 그리고 당신은 Range의 주문, 원하는 콜라이트를 지정하십시오Collation옵션.
선택 사항표준함수 정의되는 범위 토토 사이트에 대한 하나의 인수를 가져 와서 반환해야합니다. 같은 유형의 값. 이것은 범위 값을 a로 변환하는 데 사용됩니다 해당되는 경우 표준 형태. 보다섹션 8.17.8더 많은 것 정보. A 생성표준기능은 범위 전에 정의해야하므로 약간 까다 롭습니다. 유형을 선언 할 수 있습니다. 이렇게하려면 먼저 쉘을 만들어야합니다 유형, 이것은 속성이없는 자리 표시 자 유형입니다. 이름과 소유자. 이것은 명령을 발행하여 수행됩니다토토 사이트 생성이름, 추가 매개 변수가 없습니다. 그런 다음 함수를 선언 할 수 있습니다 쉘 유형을 인수 및 결과로 사용하고 마지막으로 범위 동일한 이름을 사용하여 유형을 선언 할 수 있습니다. 이것은 자동으로입니다 쉘 유형 항목을 유효한 범위 토토 사이트으로 대체합니다.
선택 사항subtype_diff함수의 두 값을 가져와야합니다16999_17008인수로 입력하고 a를 반환합니다.이중 정밀주어진 두 값의 차이. 이것은 선택 사항이지만 그것을 제공하면 GIST 인덱스의 효율성이 훨씬 높아집니다. 범위 토토 사이트의 열. 보다섹션 8.17.8더 많은 경우 정보.
네 번째 형태토토 사이트 만들기생성 새로운 기본 토토 사이트 (스칼라 유형). 새로운 기본 토토 사이트을 만들려면 필요합니다 슈퍼업자가 되십시오. (이 제한은 잘못된 유형이기 때문에 이루어집니다 정의는 서버를 혼동하거나 충돌시킬 수도 있습니다.)
매개 변수는 어떤 순서로든 나타날 수 있습니다. 위에서 설명하며 대부분 선택 사항입니다. 두 개 또는 등록해야합니다 더 많은 기능 (사용함수 만들기) 토토 사이트을 정의하기 전에. 지원 기능input_functionandoutput_function가 필요합니다 기능수신 _function, send_function, type_modifier_input_function, type_modifier_output_functionandAnalyze_Function선택 사항입니다. 일반적으로 이러한 기능은 C 또는 다른 낮은 수준으로 코딩해야합니다. 언어.
theinput_function변환 내부에 대한 토토 사이트의 외부 텍스트 표현 에 대해 정의 된 연산자 및 기능에 의해 사용되는 표현 토토 사이트.output_function역 변환. 입력 함수는 다음과 같이 선언 할 수 있습니다 토토 사이트의 한 가지 논쟁cstring또는 as 토토 사이트의 세 가지 논쟁cstring, OID, Integer. 첫 번째 인수는 C 문자열로 입력 텍스트이고 두 번째 인수는 다음과 같습니다. 유형 자체 OID (대신받는 배열 토토 사이트 제외 그들의 요소 유형의 OID), 세 번째는입니다.TypMod19171_19748cstring. 출력 기능은 호출되지 않습니다 널 값.
선택 사항수신 _function유형의 외부 바이너리 표현을 내부로 변환합니다 대표. 이 기능이 제공되지 않으면 유형은 할 수 없습니다 이진 입력에 참여하십시오. 이진 표현은이어야합니다 내부 형태로 변환하기 위해 저렴하게 선택했지만 합리적으로 휴대용. (예 : 표준 정수 데이터 유형 네트워크 바이트 주문을 외부 바이너리 표현으로 사용하십시오. 내부 표현은 기계의 기본 바이트 순서입니다.) 수신 기능은 적절한 확인을 수행하여 확인해야합니다 값이 유효합니다. 수신 기능은 다음과 같이 선언 할 수 있습니다 유형의 한 가지 논쟁내부또는 AS 유형의 세 가지 논쟁내부, OID, 정수. 첫 번째 인수는에 대한 포인터입니다.StringInfo버퍼 수신 된 바이트 스트링을 잡고; 선택적인 인수는입니다 텍스트 입력 기능과 동일합니다. 수신 함수가 있어야합니다 데이터 유형 자체의 값을 반환하십시오. 일반적으로 수신 기능 엄격하게 선언되어야한다. 그렇지 않으면 NULL 입력 값을 읽을 때 NULL 첫 번째 매개 변수입니다. 기능 오류가 발생하지 않는 한이 경우에도 여전히 NULL을 반환해야합니다. (이 사례는 주로 도메인 수신 기능을 지원하기위한 것입니다. 널 입력을 거부해야 할 수도 있습니다.) 마찬가지로, 선택 사항send_function외부 바이너리 표현에 대한 내부 표현. 만약에 이 기능은 제공되지 않으며 유형은 참여할 수 없습니다. 이진 출력. 보내기 기능은 하나를 취하는 것으로 선언해야합니다 새로운 데이터 유형의 인수. 전송 함수는 유형을 반환해야합니다BYTEA. 전송 기능은 호출되지 않습니다 널 값.
이 시점에서 입력 및 출력이 어떻게 궁금해해야합니다. 함수는 새로운 결과 또는 주장이 있다고 선언 할 수 있습니다. 토토 사이트, 새로운 토토 사이트이 될 수 있기 전에 만들어야 할 때 생성. 대답은 토토 사이트이 먼저 A로 정의되어야한다는 것입니다.쉘 타입, 자리 표시 자 유형입니다 이름과 소유자를 제외한 속성이 없습니다. 이것은 이에 의해 수행됩니다 명령 발행토토 사이트 만들기이름22162_22272토토 사이트 만들기가득한 정의는 쉘 항목을 완전하고 유효한 토토 사이트으로 대체합니다. 정의, 그 후 새로운 토토 사이트은 정상적으로 사용할 수 있습니다.
선택 사항type_modifier_input_functionandtype_modifier_output_function이 토토 사이트은 수정자를 지원하며 첨부 된 선택적 제약 조건입니다 와 같은 토토 사이트 선언에char (5)또는숫자 (30,2). PostgreSQL사용자 정의 유형을 취할 수 있습니다 수정 자로서 하나 이상의 단순 상수 또는 식별자. 하지만, 이 정보는 단일로 포장 할 수 있어야합니다. 시스템 카탈로그의 저장을위한 비 음성 정수 값. 그만큼type_modifier_input_functionIS a 형태로 선언 된 수정자를 통과시켰다.cstring배열. 유효성을 확인해야합니다 (잘못된 경우 오류를 던지고), 정확한 경우, 단일 비 음성 반환정수값 열로 저장됩니다"TypMod". 토토 사이트 수정자가 거부됩니다 토토 사이트은가 없습니다.type_modifier_input_function. 그만큼type_modifier_output_function내부 정수 타이밍 모드 값은 사용자를 위해 올바른 양식으로 돌아갑니다. 표시하다. 반환해야합니다cstring가치가 있습니다 유형 이름에 추가되는 정확한 문자열입니다. 예를 들어숫자의 함수는 retory(30,2). 생략 할 수 있습니다.type_modifier_output_function,이 경우 기본 디스플레이 형식은 저장된 타자 정수 값입니다. 괄호 안에 동봉 됨.
선택 사항Analyze_Function열에 대한 토토 사이트별 통계 수집을 수행합니다 데이터 토토 사이트. 기본적으로분석의지 토토 사이트을 사용하여 통계를 수집하려고"Equals"and"덜"운영자, 유형. 비소 유형의 경우이 동작은 가능성이 높습니다 부적합하지 않으므로 사용자 정의 분석을 지정하여 재정의 할 수 있습니다. 기능. 분석 기능은 단일을 취하도록 선언해야합니다. 유형의 주장내부, 그리고 a 반환부울결과. 분석을위한 상세한 API 함수는에 나타납니다.src/include/commands/Vacuum.h.
새로운 유형의 내부 표현의 세부 사항은 I/O 함수 및 기타 기능에만 알려진 유형으로 작업하면 내부의 여러 속성이 있습니다. 선언 해야하는 진술PostgreSQL. 이것 중 가장 중요한 것은Internallength. 기본 데이터 토토 사이트이 될 수 있습니다 고정 길이, 어떤 경우Internallength긍정적 인 정수입니다 변수 길이, 설정으로 표시Internallengthto가변. (내부적으로 이것은 다음으로 표시됩니다 환경Typlen~ -1.) 내부 모든 가변 길이 유형의 표현은 a로 시작해야합니다 이 값의 총 길이를 제공하는 4 바이트 정수 유형.
옵션 플래그PassedByvalue이 데이터 유형의 값이 값으로 전달되는 것을 나타냅니다. 참조보다. 내부의 가치 유형을 통과 할 수 없습니다 표현은의 크기보다 큽니다.Datum타입 (대부분의 기계에서 4 바이트, 8 바이트 약간의).
the정렬매개 변수 데이터 유형에 필요한 스토리지 정렬을 지정합니다. 그만큼 허용 값은 1, 2, 4 또는 8 바이트에 정렬되는 것과 동일합니다. 경계. 가변 길이 유형에는 정렬이 있어야합니다 그들이 반드시 포함하기 때문에 4 개 이상의int4첫 번째 구성 요소로
the스토리지매개 변수가 허용됩니다 가변 길이 데이터 유형에 대한 스토리지 전략 선택. (오직일반고정 길이에 허용됩니다 토토 사이트)일반해당 데이터를 지정합니다 토토 사이트은 항상 인라인으로 저장되고 압축되지 않습니다.확장시스템이 먼저 시도 할 것을 지정합니다 긴 데이터 값을 압축하고 메인에서 값을 이동합니다. 아직 너무 길면 테이블 행.외부메인 테이블에서 값을 이동할 수 있지만 시스템 압축하려고하지 않을 것입니다.Main허용 압축이지만 메인에서 가치를 옮기는 것을 권장하지 않습니다. 테이블. (이 스토리지 전략이있는 데이터 항목은 여전히 이동할 수 있습니다. 기본 테이블에서 행을 적합하게 만드는 다른 방법이 없다면 그러나 그들은 메인 테이블에 우선적으로 보관 될 것입니다확장and외부품목.)
thelike_type매개 변수 제공 기본 표현을 지정하는 대체 방법 데이터 유형의 속성 : 기존 유형에서 복사하십시오. 그만큼 의 값Internallength, PassedByvalue, 정렬및스토리지명명 된 유형에서 복사됩니다. (그것 일반적으로 바람직하지는 않지만이 중 일부를 무시할 수 있습니다. 값과 함께 값을 지정하여Like절.)이 방식으로 표현을 지정합니다 새로운 토토 사이트의 낮은 수준 구현에 특히 유용합니다"piggybacks"기존 토토 사이트의 일부 패션.
the카테고리및선호매개 변수를 사용하여 도움을 줄 수 있습니다 어떤 암시 적 캐스트가 모호하게 적용되는지 제어하십시오 상황. 각 데이터 유형은 단일로 명명 된 카테고리에 속합니다. ASCII 문자 및 각 유형은입니다."선호"또는 해당 범주 내에 있지 않습니다. 파서 선호하는 유형 (그러나 다른 유형에서만 캐스팅하는 것을 선호합니다. 동일한 범주 내에서)이 규칙이 해결에 도움이되는 경우 과부하 된 기능 또는 연산자. 자세한 내용은 참조10 장. 암시 적이없는 유형의 경우 다른 유형으로 또는 다른 유형으로 캐스트되면 이들을 떠나는 것으로 충분합니다. 기본값에서 설정. 그러나 관련 유형 그룹의 경우 암시 적 캐스트가있는 것은 종종 그들 모두를 다음과 같이 표시하는 것이 도움이됩니다. 카테고리에 속하며 중 하나 또는 둘을 선택합니다."가장 일반"범주. 그만큼카테고리매개 변수입니다 기존에 사용자 정의 유형을 추가 할 때 특히 유용합니다. 숫자 또는 문자열 유형과 같은 내장 카테고리. 그러나, 그것은 완전히 사용자 정의 된 새로운 유형을 만들 수도 있습니다 카테고리. 상단 사례 이외의 ASCII 문자를 선택하십시오 그런 카테고리를 지명 할 편지.
사용자가 열을 원하는 경우 기본값을 지정할 수 있습니다. 널 값 이외의 다른 것으로 데이터 유형의 기본값 에 기본값을 지정합니다.기본값키 단어. (이러한 기본값은 명시 적으로 무시할 수 있습니다기본값특정 열에 첨부 된 조항)
유형이 배열임을 나타내려면 를 사용하는 배열 요소요소키 단어. 예를 들어, 4 바이트 정수 배열을 정의하려면 (int4), 지정요소 = int4. 배열 토토 사이트에 대한 자세한 내용은 아래에 표시됩니다.
이 유형의 배열의 외부 표현,Delimiter특정 문자로 설정할 수 있습니다. 기본 구분 기호는 쉼표 (입니다.,). 구분 기자는 배열 요소 유형과 관련이 있으며 배열 토토 사이트 자체가 아닙니다.
선택적 부울 매개 변수 인 경우Collatable는 true, 열 정의 및입니다 토토 사이트의 표현은 사용을 통해 콜레이션 정보를 전달할 수 있습니다. 의Collate절. 그것은 닿습니다 실제로 유형에서 작동하는 기능의 구현 Collation 정보를 사용하십시오. 이것은 일어나지 않습니다 단순히 유형 Collatable을 표시하여 자동으로.
사용자 정의 토토 사이트이 생성 될 때마다PostgreSQL자동으로 관련을 생성합니다 이름이 요소 유형의 이름으로 구성된 배열 토토 사이트 밑줄로 배정하고 필요한 경우 잘라 냈습니다. 미만paminatalen바이트 길이. (만약 생성 된 이름은 기존 유형 이름 인 프로세스와 충돌합니다. 콜링하지 않는 이름이 발견 될 때까지 반복됩니다.) 이것 암시 적으로 창조 된 배열 토토 사이트은 가변 길이이며 내장 입력 및 출력 기능array_inandArray_out. 그만큼 배열 토토 사이트은 요소 유형의 소유자의 변경 사항을 추적하거나 스키마, 요소 유형이있는 경우 삭제됩니다.
왜가 있는지 합리적으로 물어볼 수 있습니다요소옵션, 시스템이 올바른 배열을 만드는 경우 자동으로 입력하십시오. 사용하는 것이 유용한 유일한 경우요소당신이 만들 때입니다 내부적으로 발생하는 고정 길이 유형 동일한 것들의 수, 당신은 이런 것들을 허용하고 싶습니다. 무엇이든 외에도 구독하여 직접 액세스해야합니다 유형을 전체적으로 제공 할 작업. 을 위한 예, 유형포인트는 단지 표현됩니다 두 개의 부동 소수점 번호, 각각을 사용하여 액세스 할 수 있습니다.포인트 [0]and포인트 [1]. 메모 이 시설은 내부의 고정 길이 유형에 대해서만 작동한다는 형태는 정확히 동일한 고정 길이 필드의 시퀀스입니다. 에이 첨자 가능한 변수 길이 유형이 일반화되어야합니다 에 의해 사용 된 내부 표현array_inandArray_out. 역사적 이유로 (즉, 이것은 분명히 잘못되었지만 변경하기에는 너무 늦었습니다), 고정 길이 배열 토토 사이트의 위시는 오히려 0에서 시작합니다 가변 길이 배열에 대한 것보다.
유형의 이름 (선택적으로 스키마 자격) 생성.
복합 토토 사이트의 속성 (열)의 이름.
기존 데이터 유형의 이름은 복합 토토 사이트.
열과 연관 될 기존 콜레이션의 이름 복합 토토 사이트의 또는 범위 토토 사이트을 가진.
관련 텍스트 레이블을 나타내는 문자열 문자 열거 유형의 하나의 값.
범위 토토 사이트이 나타내는 요소 유형의 이름 범위.
하위 토토 사이트에 대한 B- 트리 연산자 클래스의 이름.
범위에 대한 표준화 함수의 이름 유형.
하위 토토 사이트의 차이 함수의 이름.
유형에서 데이터를 변환하는 함수의 이름 내부 양식에 대한 외부 텍스트 형식.
유형에서 데이터를 변환하는 함수의 이름 외부 텍스트 형식에 대한 내부 양식.
유형에서 데이터를 변환하는 함수의 이름 내부 형태로의 외부 바이너리 형태.
유형에서 데이터를 변환하는 함수의 이름 외부 바이너리 형태의 내부 형태.
수정 자 배열을 변환하는 함수의 이름 내부 형태로의 유형.
내부 형태를 변환하는 함수의 이름 유형의 수정 자 (들)에서 외부 텍스트 양식.
통계 분석을 수행하는 함수의 이름 데이터 유형.
새로운 바이트의 길이를 지정하는 숫자 상수 유형의 내부 표현. 기본 가정은 그것입니다 가변 길이입니다.
데이터 유형의 스토리지 정렬 요구 사항. 만약에 지정되어 있어야합니다.char, int2, int4또는더블; 기본값은int4.
데이터 유형의 스토리지 전략. 지정된 경우일반, 외부, 확장또는Main; 기본값은일반.
새 유형이 가질 기존 데이터 유형의 이름 같은 표현. 의 값Internallength, PassedByvalue, 정렬및스토리지하지 않는 한 해당 토토 사이트에서 복사됩니다 이 곳의 명시 적 사양에 따라 상체토토 사이트 만들기명령.
이 유형의 카테고리 코드 (단일 ASCII 문자). 그만큼 기본값은'U'for"사용자 정의 토토 사이트". 기타 표준 카테고리 코드 에서 찾을 수 있습니다표 47-52. 생성하기 위해 다른 ASCII 문자를 선택할 수도 있습니다. 커스텀 카테고리.
True이 유형이 유형 카테고리 내에서 선호되는 유형 인 경우. 그렇지 않으면 거짓. 기본값은 False입니다. a 기존 유형 카테고리 내의 새로운 선호 유형은 행동에 놀라운 변화를 일으킨다.
데이터 유형의 기본값. 이것이 생략되면, 기본값은 null입니다.
생성중인 유형은 배열입니다. 이것은 유형을 지정합니다 배열 요소.
배열에서 값 사이에 사용할 분리기 문자 이 토토 사이트의.
True이 유형의 작업이 Collation Information을 사용할 수있는 경우. 기본값은 거짓입니다.
데이터 유형 사용에 한 번 제한이 없기 때문에 생성되어 기본 토토 사이트 또는 범위 토토 사이트을 생성합니다. 언급 된 기능에 대한 공공 실행 권한 부여 유형 정의. 이것은 일반적으로 종류의 문제가 아닙니다. 유형 정의에 유용한 함수. 그러나 당신은 원할 수도 있습니다 필요한 방식으로 유형을 설계하기 전에 두 번 생각하는"비밀"사용되는 정보 외부 형태로 또는 전환.
전PostgreSQL버전 8.3, 생성 된 배열 토토 사이트의 이름은 항상 요소였습니다. 하나의 밑줄 문자가있는 유형의 이름 (_) Prepended. (유형 이름은 제한되었습니다 길이는 다른 이름보다 문자가 적습니다.) 이것은 여전히 그렇습니다. 배열 토토 사이트 이름은 이것과 다를 수 있습니다. 최대 길이 이름 또는 사용자 유형 이름과의 충돌 사례 밑줄로 시작합니다. 이것에 의존하는 코드를 작성합니다 따라서 협약은 더 이상 사용되지 않습니다. 대신 사용pg_type.TypArrayto 주어진 유형과 관련된 배열 토토 사이트을 찾으십시오.
유형 및 테이블 이름을 사용하지 않는 것이 좋습니다. 밑줄로 시작하십시오. 서버는 생성 된 배열을 변경합니다 유형 이름은 사용자가주는 이름과의 충돌을 피하기 위해 여전히 혼란의 위험, 특히 기존 클라이언트 소프트웨어에서 항상 밑줄로 시작하는 유형 이름을 가정 할 수 있습니다 배열 대표.
전PostgreSQL버전 8.2, 쉘 유형 제작 구문토토 사이트 만들기이름존재하지 않았습니다. 가는 길 새 기본 토토 사이트을 만듭니다. 먼저 입력 기능을 작성하는 것이 었습니다. ~ 안에 이 접근법,PostgreSQL의지 먼저 새 데이터 유형의 이름을 반환 유형의 입력 함수. 쉘 유형은 이것에 암시 적으로 생성됩니다 상황, 그리고 그것은의 정의에서 참조 될 수 있습니다. 나머지 I/O 함수. 이 접근법은 여전히 작동하지만 그렇습니다 더 이상 사용되지 않고 미래의 릴리스에서는 허용되지 않을 수 있습니다. 또한 실수로 쉘 유형으로 카탈로그를 기능 정의에서 간단한 오타의 결과, 쉘 유형은 입력 함수가 C로 작성 될 때만 이런 식으로 만들어집니다.
inpostgresql이전 버전 7.3, 쉘 유형을 전혀하지 않는 것이 관례였습니다. functions의 전달 참조를 유형 이름으로 대체 자리 표시 자 유사 형opaque. 그만큼cstring인수와 결과도 필요했습니다 로 선언opaque7.3 이전. 지원합니다 오래된 덤프 파일로드,토토 사이트 만들기사용하여 선언 된 I/O 기능을 수락합니다opaque그러나 통지를 발행하고 변경합니다. 올바른 토토 사이트을 사용하려는 기능 선언.
이 예제는 복합 토토 사이트을 생성하고 기능에 사용합니다. 정의:
유형 compfoo 생성 (f1 int, f2 text); function getfoo () compfoo sets를 $$로 반환합니다 foo에서 fooid, foom을 선택하십시오 $$ 언어 SQL;
이 예제는 열거 된 토토 사이트을 생성하고 테이블에 사용합니다. 정의:
Enum ( 'new', 'open', 'close'로 Bug_status 토토 사이트 생성; 테이블 버그 생성 ( ID 시리얼, 설명 텍스트, 상태 버그 _status );
이 예제는 범위 토토 사이트을 만듭니다 :
float8_range 토토 사이트 생성 범위 (subtype = float8, subtype_diff = float8mi);
이 예제는 기본 데이터 유형을 만듭니다Box그런 다음 테이블 정의에서 토토 사이트을 사용합니다.
타입 상자 생성; 기능 작성 my_box_in_function (cstring) 반환 상자는 ...; 기능 작성 my_box_out_function (box) cstring을 ...; 유형 상자 생성 ( 내부 길이 = 16, 입력 = my_box_in_function, output = my_box_out_function ); 테이블 작성 mybox ( ID 정수, 설명 상자 );
의 내부 구조 인 경우Box4 개의 배열float4요소 대신 사용 :
타입 상자 생성 ( 내부 길이 = 16, 입력 = my_box_in_function, output = my_box_out_function, 요소 = float4 );
이것은 박스 값의 구성 요소 번호에 액세스 할 수 있도록합니다. 구독으로. 그렇지 않으면 유형이 이전과 동일하게 작동합니다.
이 예제는 큰 객체 유형을 생성하고 테이블에서 사용합니다. 정의:
타입 bigobj 만들기 ( 입력 = lo_filein, 출력 = lo_fileout, 내부 길이 = 변수 ); 테이블 생성 big_objs ( ID 정수, obj bigobj );
적절한 입력 및 출력 함수를 포함한 더 많은 예제,PostgreSQL : 문서 : 9.3 : 사용자 정의 스포츠 토토 베트맨.
첫 번째 형태토토 사이트 생성Commopite 토토 사이트을 생성하는 명령은SQL표준. 다른 형태 이다PostgreSQL확장. 그만큼토토 사이트 생성진술SQL표준도 다른 사람을 정의합니다 구현되지 않은 양식PostgreSQL.
속성이 0 인 복합 토토 사이트을 생성하는 기능은 A입니다.PostgreSQL-특이 적 편차 표준 (동일한 사례와 유사테이블 생성).
이전 | 배트맨 토토 : 문서 : 9.3 : 배트맨 토토 9.3.25 문서화 | 다음 |
트리거 만들기 | up | 사용자 만들기 |