sql >> Database >  >> RDS >> Mysql

probleem met utf8 in java

Volgens de MySQL JDBC-stuurprogrammadocumentatie u moet ook de tekencodering in de JDBC-verbindings-URL instellen. Hier is een voorbeeld:

jdbc:mysql://localhost:3306/db_name?useUnicode=yes&characterEncoding=UTF-8

Anders gebruikt het MySQL JDBC-stuurprogramma de standaardcodering van het platform om de tekens naar bytes te converteren voordat het via het netwerk wordt verzonden, wat in uw geval blijkbaar niet UTF-8 is. Alle onbedekte tekens worden dan vervangen door vraagtekens.

Wanneer u de gegevens ophaalt, moet u er ook voor zorgen dat de console/het bestand waar u de tekens weergeeft/schrijft waarnaar u ook UTF-8 ondersteunt/gebruikt. Anders worden het ook vraagtekens. Hoe je dat oplost, hangt af van hoe/waar je die karakters weergeeft/schrijft.

Zie ook:

Trouwens, je hebt de SET NAMES niet nodig vraag hier.




  1. Hoe Mysql te partitioneren over MEERDERE SERVERS?

  2. Wat is het PDO-equivalent van de functie mysql_real_escape_string?

  3. Top Facebook-groepen voor Analytics, Big Data, Data Mining, Hadoop, NoSQL, Data Science

  4. Een Microsoft Access-rapport naar PDF converteren (3 manieren)