import java.sql.*; public class b2 { public static void main(String[] args) { try { Class.forName("com.mysql.cj.jdbc.Driver"); } catch (ClassNotFoundException e) { e.printStackTrace(); } String usl="jdbc:mysql://localhost:3306/computer"; String user="root"; String pwd="241356"; try { Connection conn =DriverManager.getConnection(usl,user,pwd); Statement sta = conn.createStatement(); String insertsql = "INSERT INTO stu(id,name,sex,age,major) VALUES(?,?,?,?,?)"; String delectsql = "delect from stu where id=2"; String selectsql = "select * from stu"; sta.executeUpdate(insertsql,new String[] {"8","李商隐","男","18","软件工程"}); sta.executeUpdate(delectsql); ResultSet rs = sta.executeQuery(selectsql); System.out.println("id"+"\t"+"name"+"sex"+"\t"+"age"+"\t"+"major"); while(rs.next()) { System.out.println(rs.getInt(1)+"\t"+rs.getString(2)+"\t"+rs.getString(3) +"\t"+rs.getInt(4)+"\t"+rs.getString(5)); } } catch (Exception e) { e.printStackTrace(); } }
时间: 2023-07-06 13:41:25 浏览: 54
这段代码存在一些错误:
1. `delect` 应该改为 `delete`。
2. `executeUpdate` 方法不支持使用数组方式传递参数,需要使用 `PreparedStatement`。
下面是修改后的代码:
```java
import java.sql.*;
public class b2 {
public static void main(String[] args) {
try {
Class.forName("com.mysql.cj.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
String url = "jdbc:mysql://localhost:3306/computer";
String user = "root";
String pwd = "241356";
try (Connection conn = DriverManager.getConnection(url, user, pwd);
Statement sta = conn.createStatement();
PreparedStatement insertSta = conn.prepareStatement("INSERT INTO stu(id,name,sex,age,major) VALUES(?,?,?,?,?)");
PreparedStatement deleteSta = conn.prepareStatement("DELETE FROM stu WHERE id=?");
ResultSet rs = sta.executeQuery("SELECT * FROM stu")) {
insertSta.setString(1, "8");
insertSta.setString(2, "李商隐");
insertSta.setString(3, "男");
insertSta.setInt(4, 18);
insertSta.setString(5, "软件工程");
insertSta.executeUpdate();
deleteSta.setInt(1, 2);
deleteSta.executeUpdate();
System.out.println("id\tname\tsex\tage\tmajor");
while (rs.next()) {
System.out.println(rs.getInt(1) + "\t" + rs.getString(2) + "\t" + rs.getString(3)
+ "\t" + rs.getInt(4) + "\t" + rs.getString(5));
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
希望能帮到你!