본문 바로가기

DB/이론

VARCHAR, CHAR

문득 데이터 베이스 설정하다가 데이터 베이스의 자료형은 VARCHAR과 CHAR이 있다. 

주로 VARCHAR를 사용했는데 그 이유를 생각해보자.

 

간단히 설명하면 확정되지 길이의 문자열 데이터가 들어올 때는 VARCHAR을 쓰고 확정적인 문자열을 쓸 때는

CHAR을 써라이다.

 

CHAR에 경우는 고정적으로 데이터를 저장한다. 예를 들어 CHAR(10)을 선언했을 경우 한 글자를 넣어도

데이터 상에서 10의 공간을 차지한다.

 

그러나 VARCHAR의 경우 VARCHAR(10)을 선언했을 경우 3글자를 넣으면 데이터 상에서 10의 공간을 차지한다.

그러므로 대부분 VARCHAR을 쓰는 것이다.

 

그럼 무조건 VARCHAR을 쓰는 것이 좋은 것이 아닌가에 대한 생각을 할 수도 있지만  VARCHAR(10)도

3글자 크기의 문자열이 들어왔을 경우 3글자의 데이터를 만들기 위한 계산을 해야하므로 실질적으로

3글자+@의 데이터가 사용된다.

 

→ 결과적으로 남성 여성과 같이 F, M 등으로 나눌 수 있는 경우 CHAR을 쓰고 닉네임같은 경우는 VARCHAR을

써야 효율적이다.

'DB > 이론' 카테고리의 다른 글

Oracle - INDEX  (0) 2024.06.22
인덱스(Index) Re  (0) 2024.06.21
[ Full Table Scan ] vs [ Index Scan ]  (0) 2024.06.18
DDL, DML, DCL  (0) 2024.06.18
GROUP BY, DISTINCT  (2) 2024.06.18