gpt4 book ai didi

Java + MySQL - PreparedStatement 编码问题

转载 作者:行者123 更新时间:2023-11-29 01:30:09 24 4
gpt4 key购买 nike

我得到了这个与 MySQL 交互的程序。它可以工作,但当语句中出现非 ASCII 时,它的行为会很奇怪。我正在使用准备好的语句:

public ResultSet executeQuery(Connection _conn, int _val1, String _val2) throws SQLException {
PreparedStatement stmt = _conn.prepareStatement("SELECT c.name FROM categories c,languages l WHERE c.language = l.id AND c.user = ? AND l.name = ?;");
stmt.setInt(1, _val1);
stmt.setString(2, _val2);
return stmt.executeQuery();
}

它工作正常,除非我在 _val2 中使用类似“čččč”的东西。问题出在 Java 中的某个地方,因为当我准备语句时将其打印到标准输出,这些字符只是“????”。有什么建议吗?

最佳答案

尝试将 characterEncoding=UTF-8 参数添加到 JDBC 连接 URL 的末尾。甚至将表和列字符集设置为UTF-8。article解释了如何做到这一点。

关于Java + MySQL - PreparedStatement 编码问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17124563/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com