Трябва да кажете на JDBC драйвера да използва UTF-8 кодиране, докато декодира символите, представляващи SQL заявката, в байтове. Можете да направите това, като добавите useUnicode=yes
и characterEncoding=UTF-8
параметри на заявка към URL адреса на JDBC връзка.
jdbc:mysql://localhost:3306/db_name?useUnicode=yes&characterEncoding=UTF-8
В противен случай той ще използва кодове по подразбиране на платформата на операционната система. Драйверът на MySQL JDBC сам по себе си е наясно с кодирането, използвано както от страна на клиента (където се изпълнява JDBC кодът), така и от страна на сървъра (където е DB таблицата). Всеки знак, който не е обхванат от набора от знаци, използван от DB таблицата, ще бъде заменен с въпросителен знак.