CHAR형과 VARCHAR형
데이터 유형 |
설명 |
CHAR(s) |
- 고정길이 문자열 정보 - s는 기본 길이 1 byte, 최대 길이 Oracle 2000 byte SQL Server 8000 byte - s만큼 최대 길이를 찾고 고정 길이를 가지고 있으므로 할당되는 변수 값의 길이가 s보다 작을 경우 그 차이만큼 공간으로 채워짐 |
VARCHAR(s) |
- CHARACTER VARYING의 약자로 가변 길이 문자열 정보(Oracle은 VARCHAR2, SQL Server는 VARCHAR로 표현 - s는 최소 길이 1 byte, 최대 길이 Oracle 4000 byte, SQL Server 8000 byte - s만큼의 최대 길이를 갖지만 가변 길이로 조정이 되기 때문에 할당된 변수 값의 바이트만 적용됨 |
문자열의 비교 방법
- CHAR : 문자열 비교 시 공백을 채워서 비교
- CHAR(8) = 'AA' 일 경우 공백 6자리를 붙여 8자리로 비교
- 따라서, 'AA' = 'AA '는 실제 'AA ' = 'AA ' 가 되어 같다는 결과가 나옴
- VARCHAR : 공백도 하나의 문자로 취급하므로 끝에 공백이 포함되면 다른 문자로 판단
- 'AA' != 'AA '
- 따라서 이름, 주소 등의 길이가 변할 수 있는 값은 VARCHAR를 사용하고 사번, 주민등록번호와 같이 길이가 일정한 데이터의 값은 CHAR를 사용하는게 좋다
반응형
'Database' 카테고리의 다른 글
데이터 정의어(테이블 삭제 - DROP) (0) | 2015.08.04 |
---|---|
데이터 정의어(테이블 수정 - ALTER, DROP, MODIFY, CHANGE, RENAME) (0) | 2015.08.02 |
데이터 정의어(테이블 생성 - CREATE) (0) | 2015.08.01 |
View(뷰) (0) | 2015.07.26 |
기본키와 외래키 (0) | 2015.07.26 |
댓글