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

10.4. 가치 저장

테이블에 삽입 할 값이 다음에 따른 대상 열의 데이터 유형 단계.

값 저장 유형 변환

  1. 대상과 정확히 일치하는지 확인하십시오.

  2. 그렇지 않으면 표현식을 대상 유형으로 변환하십시오. 둘 사이에 등록 된 캐스트가 있으면 성공할 것입니다. 유형. 표현이 알려지지 않은 유형의 문자 인 경우 내용 문자 문자열의 입력 변환 루틴에 공급됩니다. 대상 유형의 경우

  3. 대상 유형에 대한 크기 캐스트가 있는지 확인하십시오. 에이 사이징 캐스트는 그 유형에서 그 자체로 캐스트입니다. 하나가 발견되면 그만큼pg_cast카탈로그에이를 적용하십시오 대상 열에 저장하기 전에 표현. 그만큼 그러한 캐스트에 대한 구현 함수는 항상 추가로 사용됩니다. 유형의 매개 변수정수대상 열atttypmod값 (일반적으로 선언 된 길이이지만atttypmod데이터마다 다릅니다 유형), 3 분의 1이 걸릴 수 있습니다.부울캐스트가 명시 적인지 암시 적인지를 나타내는 매개 변수. 그만큼 캐스트 함수는 길이 의존성을 적용 할 책임이 있습니다 크기 점검 또는 잘림과 같은 의미론.

예 10-9.캐릭터스토리지 유형 변환

대상 열은캐릭터 (20)다음 진술은 다음을 보여줍니다 저장된 값은 크기가 올바르게 크기입니다.

테이블 생성 vv (v 문자 (20));
VV에 삽입 'ABC'|| 'def';
VV에서 V, Octet_length (v)를 선택하십시오.

          V | Octet_length
------------------------------------------
 abcdef |           20
(1 행)

여기서 실제로 일어난 일은 두 개의 알 수없는 리터럴이 로 해결됩니다.텍스트기본적으로 허용||운영자가 해결할 연산자텍스트연결. 그런 다음텍스트운영자의 결과가로 변환되었습니다.BPCHAR("Blank-Padded Char", 내부 이름 의캐릭터데이터 유형) 대상 열 유형. (전환 이후텍스트toBPCHARIS 이진 계산 가능,이 변환은 실제 함수를 삽입하지 않습니다 전화.) 마지막으로, 사이징 기능BPCHAR (BPCHAR, Integer, Boolean)에서 발견됩니다 시스템 카탈로그 및 운영자의 결과 및 저장된에 적용 열 길이. 이 유형 별 함수는 필요한 것을 수행합니다 패딩 공간의 길이 점검 및 추가.