在使用JDBC进行连接数据库的练习时,出现了警告,并且无法将数据插入表中。并且我用来测试用的for循环也无法在控制台打印。代码如下:
@Test
public void insertUser() throws Exception {
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/dt48&useSSL=false", "root", "root");
Statement st = conn.createStatement();
String sql = "INSERT INTO users SET username='lisi',PASSWORD='1234'";
int flag = st.executeUpdate(sql);
if (flag >= 1) {
System.out.println("插入成功");
} else {
System.out.println("插入失败");
}
st.close();
conn.close();
}
(1):开始以为jar包版本过高,然后替换成5.1.43
(2):然后以为自己的jdbc:mysql://localhost:3306/dt48路径有问题,就加上了&useSSL=false,仍无法去除警告并且也不能在控制台打印我的for循环
能够成功添加数据到数据库并在控制台打印成功
你好,MySQL 5.0 的版本对应的驱动是 Class.forName("com.mysql.jdbc.Driver");
MySQL8.0 对应的驱动是Class.forName("com.mysql.cj.jdbc.Driver");
按理说这是一条警告信息,不会产生错误,但是添加上试试吧,?useUnicode=true&characterEncoding=utf-8&useSSL=false这个,或者再换mysql驱动版本,5.0.8
5.7版本之后是 驱动中有
cj
的
这里说你数据库版本5.7之后
看下mysql是什么版本 如果是5.7 以后的就用Class.forName("com.mysql.cj.jdbc.Driver");
useUnicode=true&characterEncoding=utf-8&useSSL=false
另外就是驱动版本的问题 cj和没有cj