나는 mysql dbms를 사용하여 위키피디아의 페이지를 저장하고 있습니다. 나는 지시문의 my.cnf 파일에 utf-8
(위키 백과 인코딩)에 문자 집합 인코딩을 설정 한 :MySQL은 일부 UTF8 문자를 올바르게 저장하지 않습니다.
[mysqld]
character_set_server = utf8
그리고 'chararacter set utf8'
속성 정의 내 데이터베이스를 만들었습니다. 내 JDBC 드라이버를 초기화 할 때 'charSet=utf8'
속성을 삽입
- : 은 또한으로 mysqld를 클라이언트의 문자 세트 인코딩을 변경했습니다. 쿼리를 수행
'set names utf8'
에 나는 MySQL 서버가 다른 사람들과 일부 문자를 대체하는 것으로 나타났습니다하지만.
예를 들어 á
을 a
으로 바꿉니다.
UPDATE는
나는 character_set_client
과 character_set_set
모두 utf8
을하도록 보장 명령 show variables like '%char%'
을 실행했습니다.
데이터베이스에 올바른 문자를 저장하려면 어떻게해야합니까? 감사! 내 대답에 대한
url="jdbc:mysql://localhost:port/DBNAME?characterEncoding=UTF-8"
여기에 몇 가지 추가 정보입니다 :
[1] 어떤 드라이버를 사용하고 있습니까? [2] 데이터베이스에 저장할 매개 변수를 설정하기 전에'new String ([String Object] .getBytes(), "UTF-8")을 사용하고 있습니까? –
[1] MySQL Connector/J를 사용하고 있습니다. [2] 새로운 String ([String Object] .getBytes(), Charset.forName ("UTF-8"))'을 시도했지만 작동하지 않습니다. – user278064
MySQL Workbench 또는 유사한 도구에서 UTF-8 텍스트를 삽입 할 수 있습니까? 그렇다면 Eran이 지적했듯이 연결 URL 설정과 관련이있을 수 있습니다. – melihcelik