블로그 이미지
좋은느낌/원철
이것저것 필요한 것을 모아보렵니다.. 방문해 주셔서 감사합니다..

calendar

1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

Notice

    2008. 10. 30. 18:50 개발/DB2

    안녕하세요.
    다국어지원 홈페이지를 만들어야 하는데 어떻게 해야할지 방향이 잡히지 않아 글을 올립니다.

    아래의 내용은 제가 그냥 테스트해본 후 적어본 것입니다.
    1. 울트라에디터에서 아래의 내용을 입력한 후 UTF-8코드로 저장하여 ,
       브라우저에서 불러오면 정상적으로 보임
       <meta http-equiv="content-type" content="text/html;charset=utf-8">  
       테스트
      
    2. 위의 파일내용에서 charset부분만  EUC-KR로 변경한후 브라우저에서 불러오면 깨져보임

    3. character set이 KO16MSWIN949인 오라클에 UTF-8코드로 변환된 문자를 입력하면
       TOAD툴에서 select시 깨져보이고, select한 자료를 확장자가 html파일로 저장한 후,
       브라우저에서 읽어들이면 인코딩을 UTF-8설정해도 깨져보임.
      
    4. character set이 UTF-8인 오라클에 한글을 입력하면 TOAD툴에서 select시 정상적으로 보이나,
       조회한 내용을 확장자가 html인 파일로 저장하여 브라우저에서 UTF-8코드로 인코딩하여보면
       깨져보임. 그러나 EUC-KR로 인코딩하여 보면 정상적임.
      
    5. character set이 UTF-8인 오라클에 직접 UTF-8코드로 인코딩한 한글을 입력한후,
       TOAD툴에서 select하면 깨져보임. 입력된 자료를 파일로 만들어 UTF-8코드로
       웹브라우저에서 읽어봐도 역시 깨져보임.
      
    어거저거 테스트해보는데 정리가 되지 않습니다.-.-;;
    제가 궁금한 것은,
    1. character set이 UTF-8인 오라클 데이타베이스에서 한글을 insert문으로 입력시
       오라클이 자동으로 UTF-8코드로 변환하여 테이블에 입력하여 주고,
       저장된 내용을 파일로 만들기 위해 select할때에는 자동으로 UTF-8코드를 한글코드로 변환해주나요?
      
    2. 하나의 웹페이지 테이블내에 일본어, 중국어, 러시아어등등 여러국가의 언어를 표시해야 하는
       웹서버를 구축하려 할때 어떤방식으로 데이타베이스를 생성하고, 자료를 입출력해야하는지 궁금합니다.

    이와 관련된 일을 해보신 분은 도움주시면 고맙겠습니다.
    맛있는 식사도 대접하겠습니다.^^

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

    제가 알고 있는 사항을 말씀드리겠습니다.


    1. character set 은 다국어 지원을 위해서는 UTF-8 / AL32UTF8 이어야 합니다.

    2. oracle서버와 client-server 환경일 경우에는 client의 nls_lang설정에 따라 문자열의 값이

        UTF-8로 conversion되어 주고 받게 됨으로 client의 nls_lang설정이 중요합니다.

        토드에서의 테스트가 이경우 입니다.

    3. 웹브라우저의 경우 소스파일이 unicode로 저장되어야 하며

        <meta http-equiv="content-type" content="text/html;charset=utf-8"> 로 설정해

        사용하는 문자열을 unicode로 하여야 합니다.

    4. oracle과의 연결객체 jdbc나 windows의 ado-connection등이 unicode string을 지원해야 합니다.


    이런 조건이 만족된다면 웹을 통한 server page에서 저장된 문자열은 utf-8로 저장되며

    저장된 문자열중 한글은 toad와 같은 툴을 통해서 ( 물론 client nls_lang=ko16ksc5601혹은 ko16mswin949 ) 정상적으로 확인이 가능합니다.

    posted by 좋은느낌/원철