gpt4 book ai didi

java - 如何从绑定(bind)的 JTable 中删除行?

转载 作者:行者123 更新时间:2023-11-29 16:54:54 25 4
gpt4 key购买 nike

我有一个绑定(bind)到 MySQL 的 JTable。我已经完成了插入数据的代码。

但我不知道如何删除。

我有一个适用于其他简单项目的示例删除方法。

public String deleteItem(String name) {

String answer = "";
try {
Connection con = Connect.getConnection();
String sql = "Delete FROM item where name = ?";
PreparedStatement ps = con.prepareStatement(sql);
ps.setString(1, name);

ps.executeUpdate();

ps.close();
con.close();

answer = "OK";
} catch (Exception e) {
answer = e.toString();
}

return answer;
}

即使当我使用未绑定(bind)的表时,我也这样做了 remove row from jtable这对我来说效果很好。

但现在它是一个绑定(bind)到 MySQL 的表,我找不到删除行的方法...已经在互联网上搜索过。什么也没找到。

PS:我使用的是netbeans。我右键单击jtable>绑定(bind)>元素,绑定(bind)表。

最佳答案

哦,我找到办法了!

首先,我改变了我的deleteItem方法,通过id删除

ItemDAO.java

public String deleteItem(int ID_item) {

String answer = "";
try {
Connection con = Connect.getConnection();
String sql = "Delete FROM item where ID_Item = ?";
PreparedStatement ps = con.prepareStatement(sql);
ps.setInt(1, ID_item);

ps.executeUpdate();

ps.close();
con.close();

answer = "OK";
} catch (Exception e) {
answer = e.toString();
}

return answer;
}

然后删除按钮中的操作如下所示。

表单.java

private void btnDeleteActionPerformed(java.awt.event.ActionEvent evt) {                                           
int column = 0; // get the first column which is ID_Item
int row = tableItem.getSelectedRow(); //get row selected by user
int value = (int) tableItem.getModel().getValueAt(row, column); // store ID_Item value
String answer = new ItemDAO().deleteItem(value); // call up deleteItem method

if(answer.equals("OK")) {
System.out.println("OK"); // just for test
itemList.clear(); // this is needed to update the bound table after Insert/Delete/Update etc
itemList.addAll(itemQuery.getResultList()); // same as above comment
}else{
System.out.println("ERROR"); // just for test.
}

也许这不是最漂亮的方法,但它确实有效。

关于java - 如何从绑定(bind)的 JTable 中删除行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52617805/

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