2009-05-10 6 views
1

특정 테이블의 문자 인코딩을 어떻게 설정합니까? 예 :Hsqldb 테이블 인코딩

 
CREATE TABLE COMMENTS (
    ID INTEGER GENERATED BY DEFAULT AS IDENTITY (START WITH 0, INCREMENT BY 1) NOT NULL, 
    TXT LONGVARCHAR, 
    PRIMARY KEY (ID) 
) 

기본적으로 ASCII로 인코딩되어 있지만이 테이블에는 UTF-8을 사용하고 싶습니다.

답변

1

기본적으로 ASCII로 인코딩되어 있습니까? 저의 독서 과제는 기본적으로 UTF-8이었습니다 만, 여기에서 교정 할 수는 있습니다.

는 텍스트 테이블이 있다면 당신은 문제가 당신이 오기 전에 모든 행을 변환해야한다는 것입니다 테이블

SET TABLE mytable SOURCE "myfile;encoding=UTF-8" 
+0

'myfile'은 무엇입니까? ??????????? – rapt

0

의 인코딩을 지정할 수 있습니다.
이렇게하려면 내용을 파일로 내보내고 파일을 utf-8로 변환해야합니다. 그런 다음 utf-8 옵션을 사용하여 다시 가져옵니다.

MyPHPadmin은 utf-8 옵션을 사용하여 가져올 수 있습니다 (파일에서 CHARSET = latin1/latin1을 반드시 확인하십시오).

수동으로 그녀를 그렇게하기 위해 더 많은 약 읽을 수 있습니다 : http://en.gentoo-wiki.com/wiki/Convert_latin1_to_UTF-8_in_MySQL

+0

죄송합니다. 말씀하신 HyperSQL이 아닙니다. 그러나 그것이 당신을 도울 수 있기를 바랍니다. –

1

HSQLDB 확실히 유니 코드의 모든 데이터 저장 (TEXT 테이블을 제외하고 당신이 UTF-8을 지정해야합니다 경우). 따라서 일반 테이블에 문자 인코딩을 지정할 필요가 없습니다.

+0

결국 인코딩을 변경하는 방법에 대해서는 말하지 않았습니다. 그리고 나는 그것을 문서에서 발견 할 수 없었다. "HSQLDB는 확실히 모든 데이터를 유니 코드에 저장합니다"- 많은 유니 코드 인코딩이 있습니다. UTF-8, UTF-16 - HSQLDB는 기본적으로 어느 것을 사용합니까? – rapt

+0

Java 문자열은 UTF-16입니다. 이 인코딩은 변경할 수 없습니다. – fredt

+0

OP에 대한 대답은 테이블이 UTF-8이라고 말하는 것 같습니다. 어쨌든 (Java Tomcat의 서블릿에서) 테이블에 삽입하고 SELECT를 수행합니다. 데이터를 UTF-8 Java 파일에 삽입합니다 (내 OS 기본값 임). 그러면 어떻게 올바르게 삽입됩니까? 그런 다음이 데이터를 선택하고 웹 페이지에 인쇄하지만 '???????'... 만보고 어떻게 작동하게합니까? 'httpServletResponse.setContentType ("text/html; charset = UTF-8");' – rapt

관련 문제