gpt4 book ai didi

java - 如何一键删除数据库中的所有行

转载 作者:太空宇宙 更新时间:2023-11-03 10:53:55 25 4
gpt4 key购买 nike

我有两个数据库表,在我的程序中单击一个按钮,我想删除所有两个表的数据。但是 table 上总是剩下一个数据。这是我的代码:

 public void mouseClicked(MouseEvent arg0) {
int confirm = JOptionPane.showConfirmDialog(null, "Are you sure you want to delete the log? ", "Log", JOptionPane.YES_NO_OPTION );
if (confirm == JOptionPane.YES_OPTION){
try{

Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver");
con = DriverManager.getConnection("jdbc:odbc:RIM");
Statement st1 = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
Statement st2 = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE);
String sql1 = "select * from userLogIn";
ResultSet rs1 = st1.executeQuery(sql1);
String sql2 = "select * from userViewed";
ResultSet rs2 = st2.executeQuery(sql2);

while(rs1.next()){
rs1.deleteRow();
rs1.first();
}

while(rs2.next()){
rs2.deleteRow();
rs2.first();
}

editorPane.setText("");
}catch(Exception e){e.printStackTrace();}

最佳答案

当只剩下一个元素时,您对 first() 的调用将光标设置到该元素,但是随后 while 条件中的 next() 调用将返回 false,导致退出循环,因此 deleteRow 将不会被执行。

使用rs.beforeFirst() `.

请注意,您的代码有很多问题,因此请将此答案仅作为“用于教育目的”。

关于java - 如何一键删除数据库中的所有行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22282206/

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