【发布时间】:2016-11-08 17:23:46
【问题描述】:
我想一次从 JTable 中删除几行,但我一次只能删除一行。 JTable 一次只允许一个选择吗?如果我想通过选择它们来删除多行,java允许我们这样做吗?即使我选择多行,给定的代码一次也只能删除一行。
DBConnection是一个连接MySql数据库的类。
staffTable1是JTable的变量名
ShowStaffInStaffTable() 是一个函数,通过使用 Getter Setter 类从 MySql 导入数据来更新我的 JTable 行和列
这是我尝试过的代码:
int row = staffTable1.getSelectedRow();
DefaultTableModel model = (DefaultTableModel) staffTable1.getModel();
String selected = model.getValueAt(row, 9).toString();
if (row >= 0) {
try {
DBConnection DB12 = new DBConnection();
Connection conn = DB12.Connect();
String sql = "delete from staff where Contact_No= ?";
PreparedStatement stmt = conn.prepareStatement(sql);
stmt.setString(1, selected);
stmt.executeUpdate();
form12.ShowStaffInStaffTable();
} catch (Exception w) {
JOptionPane.showMessageDialog(this, "Connection Error!"+w);
w.printStackTrace();
}
}
【问题讨论】:
-
@trashgod 我已经知道我们可以通过您指定链接中的方法从 JTable 中选择多行,但我的问题是如何在选择 JTable 和数据库后删除多行?即使我选择多行,给定的代码(上面)一次只能删除一行。
-
multiple rows from JTable...after selecting-getSelectedRows返回一个包含所选行索引的数组(当前发布的代码使用getSelectedRow)