-
[Oracle] VARCHAR2(10) 과 VARCHAR2(10 CHAR)의 차이점DataBase/Oracle 2018. 10. 2. 09:50
간단하게 말하면,
varchar2(10)만 선언하면 10byte를 의미하고,
varchar2(10 char)는 10개의 글자를 의미한다.
그래서 varchar2(10)의 경우는 10글자를 담을 수 없다. 1글자에 1 byte를 넘는 경우도 있으니까 말이다.
하지만, varchar2(10 char)의 경우 byte크기와 상관없이 10글자를 담을 수 있다. 보통 한글의 경우,
한 글자당 2 byte로 알고 있는데, 이럴 경우 varchar2(10)의 경우에는 한글 10자를 쓸 수 없다.
oracle 프로시저 작성 중에 '컬럼 크기가 작다는 에러'를 받고 찾아서 알아낸 결과이다!
그리고 좀 더 찾아보니 스택오버플로우에 좋은 정리가 있어서 링크를 남긴다.
'DataBase > Oracle' 카테고리의 다른 글
[Oracle] 값이 number형인지 체크해주는 함수 만들기(IS_NUMBER) (0) 2018.10.03 [Oracle] mysql 기능인 ON UPDATE CURRENT_TIMESTAMP를 oracle에서 구현하기 (0) 2018.10.02 [Oracle] MySQL과 Oracle 테이블 JOIN 걸어서 UPDATE하는 방법 (0) 2018.09.23 [Oracle] SQL문으로 중복 데이터 삭제하기 (0) 2018.09.21 ORA-00932: 일관성 없는 데이터 유형: -이(가) 필요하지만 CLOB임 - 에러 해결 (0) 2018.09.13