테이블에 삽입 할 값은 다음에 따른 대상 열의 데이터 유형 단계.
쿼리 대상 유형 해상도
대상과 정확히 일치하는지 확인하십시오.
그렇지 않으면 표현을 대상에 강요하십시오 유형. 두 가지 유형이 알려진 경우 성공합니다 이진 호환 또는 전환 기능이있는 경우. 만약에 표현은 알려지지 않은 유형의 문자, 내용입니다 문자 그대로 문자열은 입력 변환에 공급됩니다. 대상 유형에 대한 루틴.
대상이 고정 길이 유형 인 경우 (예 :char또는varchar선언 길이로) 그런 다음 대상 유형. 사이징 함수는 동일 한 함수입니다 이름으로 이름을 지정하여 첫 번째 인수를 가져옵니다. 그 유형이고 두 번째는 정수이고 돌아 왔습니다. 같은 유형. 하나를 발견하면 적용되어 전달됩니다 칼럼의 선언 길이는 두 번째 매개 변수입니다.
예 5-6.캐릭터스토리지 유형 변환
|문자 (20)다음 쿼리는 대상 크기가 올바르게 크기입니다.
TGL = 생성 테이블 vv (v 문자 (20)); 만들다 TGL = VV에 삽입 'ABC'|| 'def'; 392905 삽입 1 tgr = vv에서 v, 길이 (v); V | 길이 ----------------------+-------- abcdef | 20 (1 행)
여기서 정말로 일어난 일은 두 사람이 알 수 없다는 것입니다. 리터럴이 해결됩니다텍스트기본적으로, 허용||운영자가 될 수 있습니다 로 해결텍스트연결. 그런 다음텍스트운영자의 결과가 강요되었습니다BPCHAR("블랭크 패드 숯", 문자 데이터 유형의 내부 이름) to 대상 열 유형과 일치합니다. (파서가 알고 있기 때문에텍스트andBPCHARare 이진 호환,이 강요는 암묵적이며 그렇지 않습니다 실제 기능 호출을 삽입하십시오.) 마지막으로, 사이징 함수BPCHAR (BPCHAR, Integer)시스템은 운영자의 결과에 적용하고 적용하고 저장된 열 길이. 이 유형별 기능이 수행됩니다 패딩 공간의 필요한 길이 점검 및 추가.