char 와 varchar2의 차이, 그리고 number(5,2)의 의미 :: 개발/일상_Mr.lee

char 와 varchar2의 차이, 그리고 number(5,2)의 의미

Posted by Mr.mandu.
2016. 11. 13. 17:11 개발/DB

대학교 다닐때는 char와 varchar2의 차이를 정확히 알고 시험까지 본 기억이 있는데....

한 4년 지난후에보니 차이점을 모르겠는 겁니다... 하하 ^^ 기억력이 참 나쁘네요..


그래서 찾아보고 지금 정리해 보려고 합니다.


char형은 딱 고정된 크기를 말합니다. 그리고

varchar2 는 가변형 길이를 말합니다.

생각해보면 char형을 쓰는 것보다 varchar형을 쓰는게 훨씬 이득이겠죠?

최악일경우에는 동일한 결과를 나타낼수 있습니다.

대부분 사람들의 저와 마찬가지로...아무 생각없이 varchar2를 사용할 거라 생각됩니다.


중요한 차이는 char(10)형과 varchar2(10)형에 동일한 문자 'Y'를 넣으면

char형은 빈공간을 활용하여 10의 크기만큼 공간을 다쓰고

varchar2형은 1만큼 크기를 쓴다는 것 입니다.


varchar와 varchar2의 차이점을 간략하게 설명 드리겠습니다.

varchar(100) 이라면 저장소 크기는 100 바이트가 아니라 실제 입력한 바이트 길이라는 이야기 입니다.

두개의 차이라면 varchar 는 ms-sql 에서 사용하는 형식이고 varchar2는 oracle 에서 사용하는 형식이죠.


varchar는 문자길이 255자까지 가능하지 않습니까?

근데 오라클에서의 varchar2는 4000바이트(한글2000자, 영문400자)까지 저장이 됩니다.

 

그런 차이가 있습니다.


그리고 number! 아무 느낌없이쓰다가....사용법도 제대로 모르고 있었네요 ㅠㅠ


number (정밀도,배율)

정밀도 : 소수점의 오른쪽과 왼쪽에 저장될수 있는 전체 자릿수의 최대값

배율 : 소수점의 오른쪽에 저장도리수 있는 최대 자릿수, 기본값은 0 이므로 0 <=배율 <=정밀도 이어야 합니다.

 number(5,2) 는 최대 정수자리 3자리, 소수자리 2자리를 입력 받을수 있는 숫자형 데이터 형식 입니다.


number(5,2) 라고 정의하시면 정수부분 3자리 이상 넘어갈수 없습니다.