이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.토토 핫 : 문서 : 17 : 51.10. pg_cast버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

47.10. pg_cast

카탈로그pg_cast데이터 유형을 저장합니다. 기본 제공 및 사용자 정의 전환 경로.

다음 사항에 유의해야 합니다.pg_cast그렇습니다 시스템이 알고 있는 모든 유형 변환을 나타내지는 않습니다. 공연하다; 일부 일반적인 규칙에서 추론할 수 없는 것만 해당됩니다. 예를 들어 도메인과 기본 유형 간의 캐스팅은 그렇지 않습니다. 명시적으로 표현됨pg_cast. 또 다른 중요한 예외는 다음과 같습니다."자동 I/O 변환 캐스트", 데이터 유형을 사용하여 수행된 것 변환할 자체 I/O 함수텍스트또는 다른 문자열 유형은 명시적으로 표현되지 않습니다.pg_cast.

표 47-10.pg_cast

이름 유형 참고자료 설명
oid oid 행 식별자(숨겨진 속성; 명시적으로 지정되어야 함) 선택된)
castsource oid pg_type.oid 소스 데이터 유형의 OID
casttarget oid pg_type.oid 대상 데이터 유형의 OID
castfunc oid pg_proc.oid 이 캐스트를 수행하는 데 사용할 함수의 OID입니다. 제로는 캐스트 메소드에 함수가 필요하지 않은 경우 저장됩니다.
캐스트컨텍스트 문자 캐스트가 호출될 수 있는 컨텍스트를 나타냅니다.e명시적 캐스트로만 의미합니다(사용캐스트또는::구문).a암시적으로 할당을 의미합니다. 대상 열뿐만 아니라 명시적으로도 마찬가지입니다.i다른 경우와 마찬가지로 표현식에서 암시적으로 의미합니다.
캐스트 방법 문자 시전이 수행되는 방법을 나타냅니다.f은(는)에 지정된 함수를 의미합니다.castfunc필드가 사용되었습니다.i입/출력 기능이 사용됨을 의미합니다.b유형이 다음과 같음을 의미합니다. 바이너리 강제 변환이 가능하므로 변환이 필요하지 않습니다.

다음에 나열된 캐스트 함수pg_cast항상 캐스트 소스 유형을 첫 번째 인수 유형으로 사용해야 합니다. 캐스트 대상 유형을 결과 유형으로 반환합니다. 캐스트 함수는 최대 3개의 인수를 가질 수 있습니다. 두 번째 인수인 경우 존재하며 유형이어야 합니다.정수; 그것은 받는다 대상 유형과 관련된 유형 수정자, 또는 -1인 경우 아무것도 없습니다. 세 번째 인수가 있는 경우 유형이어야 합니다.부울; 그것은 받는다캐스트가 명시적 캐스트인 경우,거짓그렇지 않으면.

다음을 생성하는 것은 합법적입니다.pg_cast소스와 대상 유형이 동일한 항목인 경우 관련 함수는 두 개 이상의 인수를 사용합니다. 그러한 항목 대표하다"길이 강제 함수"특정 유형에 대해 해당 유형의 값이 적법하도록 강제합니다. 수정자 값입니다.

때 apg_cast항목이 다릅니다 소스 및 대상 유형과 둘 이상을 취하는 함수 인수는 한 유형에서 다른 유형으로 변환하는 것을 나타냅니다. 단일 단계로 길이 강제를 적용합니다. 그러한 항목이 없을 때 사용 가능, 유형 수정자를 사용하는 유형으로의 강제 변환에는 다음이 포함됩니다. 두 단계로, 하나는 데이터 유형 간 변환이고 다른 하나는 적용입니다. 수정자.