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

10.4. 가치 토토 베이

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

값 토토 베이 유형 변환

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

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

  3. 대상에 대한 크기 캐스트가 있는지 확인하십시오. 유형. 사이징 캐스트는 그 유형에서 그 자체로 캐스트입니다. 만약에 하나는에서 발견됩니다.pg_cast카탈로그, 표현에 적용하여 대상 열. 그러한 구현 기능 캐스트는 항상 유형의 추가 매개 변수를 취합니다정수칼럼의 선언 된 길이 (실제로atttypmod값; 의 해석atttypmod다른마다 다릅니다 데이터 유형). 캐스트 기능은 적용 할 책임이 있습니다 크기 점검 또는과 같은 길이 의존적 의미론 잘림.

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

대상 열의 경우문자 (20)12453_12533

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

          V | 길이
----------------------+--------
 abcdef |     20
(1 행)

여기서 실제로 일어난 일은 두 사람이 알 수 없다는 것입니다. 리터럴이 해결됩니다텍스트기본적으로, 허용||운영자가 될 수 있습니다 로 해결텍스트연결. 그런 다음텍스트연산자 결과가 변환되었습니다 에게BPCHAR("blank padded char",의 내부 이름캐릭터데이터 유형) 대상과 일치합니다 열 유형. (유형 이후텍스트andBPCHAR이진 호환입니다 변환은 실제 기능 호출을 삽입하지 않습니다.) 마지막으로, 마지막으로, 사이징 기능BPCHAR (BPCHAR, 정수)시스템 카탈로그에서 발견되어 연산자의 결과 및 토토 베이된 열 길이. 이것 유형 별 함수 필요한 길이 점검을 수행합니다 패딩 공간 추가.