database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
ㆍDB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
DB2 Q&A 1657 게시물 읽기
No. 1657
한글중에서 특정 글자만 깨집니다..ㅜㅡ
작성자
이상훈
작성일
2008-06-26 09:55
조회수
10,755

안녕하세요.. 


다른 한글들은 잘 나오는데 특정 글자만 jsp에서 깨져서 나옵니다..


DB에 직접 update문으로 쎔 이라는 글자를 업데이트 하면 db에는 잘 들어가는데


jsp에서 가져올때 깨집니다..


쌤,쎄 뭐 이런 글자들도 잘 나오는데 왜 쎔이라는 글자만 깨질까요?

이 글에 대한 댓글이 총 2건 있습니다.

DB가 UTF-8을 사용하지 않는 것으로 생각이 됩니다. 
UTF-8에서 한글은 3byte를 차지하는데 타자로 칠 수 있는 모든 글자셋을 가지고 있습니다. 
이와 달리 ko_KR, enc_KR과 같은 2byte를 사용하는 글자셋의 경우 쎔, 댸, 샾 과 같은 사용되지 않는 글들을 가지고 있지 않기 때문에 db에 저장을 할 수가 없습니다. 

2byte char set을 사용할 경우 ms window와 같은 client에서는 모든 가능한 글자를 지원하기 때문에 쎔과 같은 글자를 사용하는 insert 문장을 만들고 db에 전송을 할 수가 있습니다. 
그러나 db에서는 입력받은 글자에 대한 해당 글자셋을 찾지 못하는 경우 에러를 뿌리는 것이 아니라 읽지 못하는 값을 저장합니다. 
이렇게 되면 application에서는 db에 쎔과 같은 값이 정상적으로 입력이 된 것으로 오해를 할 수가 있습니다. 

db에 모든 글자를 입력 가능하도록 하려면 UTF-8 type으로 db를 다시 생성하고 기존 db의 테이블들을 migration해 줘야 합니다. 이 때 영문글자와 숫자문자는 1byte를 그대로 사용하기 때문에 변동이 없지만 한글 데이터는 2 byte에서 3byte를 사용하게 되므로 테이블의 컬럼 크기를 변경해야 하는 곳이 있을 수 있습니다. 


조는 냥이님이 2008-06-26 10:38에 작성한 댓글입니다.
이 댓글은 2008-06-26 10:44에 마지막으로 수정되었습니다. Edit

감사합니다..

이상훈님이 2008-06-26 11:04에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1660DB2설치 정보 [1]
이도희
2008-06-27
10371
1659결과값 문자 더하기 [2]
윤동민
2008-06-27
10423
1658DB2 사용자 정보 [1]
이도희
2008-06-26
14580
1657한글중에서 특정 글자만 깨집니다..ㅜㅡ [2]
이상훈
2008-06-26
10755
1656손쉬운 DB2 개발 관리 툴, 쿼스트소프트웨어 토드 투 DB2
윤동민
2008-06-25
11400
1655특정 결과 값부터 출력방법 [2]
윤동민
2008-06-25
10821
1654begin실행시에 [4]
이도희
2008-06-25
11473
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.057초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다