java - 在java和mysql之间建立连接时出错
问题描述
以下是我的代码.......
import java.sql.*;
public class ConnectionTry {
public static void main(String[] args) {
// TODO Auto-generated method stub
try
{
System.out.println(1);
Class.forName("com.mysql.jdbc.Driver");
System.out.println(2);
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/Test","root","password");
if(!conn.isClosed())
{
System.out.println("connected");
}
System.out.println(3);
PreparedStatement ps = conn.prepareStatement("insert into User(user_id,user_name,email,password) values (?,?,?,?);");
System.out.println(4);
ps.setInt(1, 45);
System.out.println(5);
ps.setString(2, "@Suraj");
ps.setString(3, "esuraj@gmail.com");
ps.setString(4, "qwer1234");
int x = ps.executeUpdate();
if(x > 0) {
System.out.println("Registration Successful");
}
else {
System.out.println("Registration not Successful");
}
}
catch(Exception c) {
System.out.println(c.getMessage());
}
}
}
上面代码中: test是数据库, root是mysql中的用户,password是mysql密码。
运行上述代码时发生以下错误。
Unknown initial character set index '255' received from server. Initial client character set can be forced via the 'characterEncoding' property.
解决方案
尝试设置字符编码,就像错误告诉你的那样。
jdbc:mysql://localhost/Test?characterEncoding=utf8
推荐阅读
- multiprocessing - 解决 pytorch 分布式执行为每个生成的进程打印多个日志语句?
- android - 如何在android studio中用另一个按钮修改一个按钮的效果?
- keras - 如何在 keras 中实现多状态 LSTM RNN
- algorithm - 动态规划问题,找到对商店的最佳访问
- tensorflow - 在 tensorflow 中结合 map 和 padded_batch
- python - 有没有办法让 Pandas ewm 在固定窗口上运行?
- algorithm - 进一步简化并找到 c1 和 c2 (Big Theta)
- python - 模型权重没有更新,但损失正在减少
- windows - 获取计划任务以查看比上次运行更多的历史记录
- java - 我不希望特定行的字段根本不更新