- Баллы
- 88
Ситуация такова: есть плагин, записывающий данные в базу:
Но на руссих буквах база тупит. Кодировка базы - utf8_bin. Как исправить?
P.S. Если записать в базу текст через PMA, то в игре все отлично отображается
Код:
private Connection getConnection() {
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
return DriverManager.getConnection("jdbc:mysql://"+dbHost+":"+dbPort+"/"+dbName+"?user="+dbUser+"&password="+dbPass);
} catch (Exception e) {
log.warning("Failed to initialize DB connection!");
log.warning(e.getMessage());
//e.printStackTrace();
}
return null;
}
public boolean putUserField(String name, String field, String value) {
PreparedStatement st = null;
boolean res = false;
try {
st = conn.prepareStatement("UPDATE "+dbTable+" SET "+field+"= ? WHERE username = ? AND scope = ?");
st.setString(1, value); st.setString(2, name); st.setString(3, scope);
if (st.executeUpdate() == 0) {
st.close();
st = conn.prepareStatement("INSERT INTO "+dbTable+" (username, scope, "+field+") VALUES (?, ?, ?)");
st.setString(1, name); st.setString(2, scope);
st.executeUpdate();
}
st.close();
res = true;
} catch (Exception e) {
log.warning(e.getMessage());
e.printStackTrace();
} finally {
closeResources(conn, st, null);
}
return res;
}
Но на руссих буквах база тупит. Кодировка базы - utf8_bin. Как исправить?
P.S. Если записать в базу текст через PMA, то в игре все отлично отображается