문자열 데이터 유형

문자열은 가장 일반적으로 사용되는 데이터 유형입니다. 이 데이터 유형은 문자, 숫자, 구두점 및 기타 유효한 문자의 시퀀스를 보유할 수 있습니다.

일반 문자열은 이름, 설명 및 메일 주소입니다. 문자열에 임의의 값을 저장할 수 있지만, 기타 데이터 유형이 부적합한 경우에만 문자열을 사용하십시오. 기타 데이터 유형이 보다 우수한 데이터 유효성 검증과 보다 압축된 스토리지를 제공합니다.

다음 표에는 문자열 데이터 유형이 설명되어 있습니다.
표 1. 문자열 데이터 유형
유형 디스크 사용
고정 길이, character(n)(별명 char(n)) 고정 길이, 공백은 길이 n으로 채워집니다. N의 기본값은 1입니다. 최대 문자열 크기는 64,000입니다. n이 16 이하인 경우(n바이트). n이 16보다 큰 경우, 디스크 사용량은 varchar(n)과 동일합니다.
가변 길이, character varying(n)(별명 varchar(n)) 최대 길이 n까지 가변 길이입니다. 빈 패딩이 없으며 입력한 대로 저장됩니다. 최대 문자열 크기는 64,000입니다. 실제 데이터에 따라 N+2 또는 그 미만의 바이트입니다.
고정 길이, 유니코드(별명 nchar(n)) 고정 길이, 공백은 길이 n으로 채워집니다. 최대 길이는 16,000자입니다. 자세한 내용은 데이터 유형을 참조하세요.
가변 길이, 유니코드(별명 nvarchar(n)) 최대 길이 n까지 가변 길이입니다. 최대 길이는 16,000자입니다. 자세한 내용은 데이터 유형을 참조하세요.
최적 문자 데이터 유형을 판별하려면 다음 SQL 명령을 입력하십시오.
system.admin(admin)=> SELECT 
MAX(LENGTH(TRIM(column_name))),AVG(LENGTH(TRIM(column_name)))FROM 
table_name;
문자 데이터 유형을 선택할 때는 다음 상황을 고려하십시오.
  • 데이터가 숫자만인 경우에는 문자 데이터 유형 대신 정수 데이터 유형을 사용하십시오. 예를 들어, 11212345는 VARCHAR 또는 bigint로 정의될 수 있습니다. 특히 분배 또는 조인을 위한 컬럼을 사용 중이면 bigint를 선택하십시오.
  • 소스 날짜를 변환 중일 때 MAX 길이가 CHAR 크기 미만인 경우, VARCHAR 대신 CHAR을 사용하십시오. AVG 길이 +2가 CHAR 크기 미만인 경우에는 CHAR 대신 VARCHAR을 사용하십시오.
  • 숫자를 문자열 데이터 유형과 비교하면 종종 예상할 수 없는 결과가 발생할 수 있습니다. to_number 변환 함수를 사용하여 문자열을 숫자로 변환할 수 있습니다. 예를 들어,
       where to_number(<varchar-column>, '9999') > <integercolumn>