gpt4 book ai didi

java - 循环删除单个表行

转载 作者:行者123 更新时间:2023-12-02 05:18:33 25 4
gpt4 key购买 nike

首先,如果我犯了任何语法错误,我的母语不是英语。在这里,我打印出数据库中的所有客户,并为每个表行添加删除链接,该链接将客户代码作为参数。单击链接时,它应该删除一行,但它会删除具有相同代码的所有客户,有什么想法,即使有具有相同代码的客户,我怎样才能只删除一行?

for(Customers customer : customers)
{
String param = customer.getCode();
request.setAttribute("value3",param);

out.println(

"<tbody><tr> "
+ "<td>"+ customer.getFirst_name()+" "+"</td>"
+ "<td>"+ customer.getSurname()+" "+"</td>"
+ "<td>"+ customer.getCode()+" " +"</td></br>"
+ " "+"<td><a href='"+request.getContextPath()+"/Search?id="+param+"'>Delete</a></td></tr>"

);

dao.deleteCustomer(request.getParameter("id"));

}

删除方法:

public void deleteCustomer(String code)
{
try{
pst = getConnection().prepareStatement("delete from customer where "
+" code = '"+code +"'");

pst.executeUpdate();

}catch(Exception e)
{

throw new RuntimeException(e);
} finally {

closeResources();
}


}

架构文件:

CREATE SEQUENCE seq1 AS INTEGER START WITH 1;

CREATE TABLE customer (
id BIGINT NOT NULL PRIMARY KEY,
first_name VARCHAR(255) NOT NULL,
surname VARCHAR(255) NOT NULL,
code VARCHAR(255) NOT NULL,
);

INSERT INTO customer VALUES(NEXT VALUE FOR seq1,'Jane','Doe','123');
INSERT INTO customer VALUES(NEXT VALUE FOR seq1,'John','Doe','456');
INSERT INTO customer VALUES(NEXT VALUE FOR seq1,'Jack','Smith','789');

最佳答案

您应该根据数据库中的 ID 而不是代码来删除客户。

用户 ID 应始终是唯一的,而代码可能不是唯一的。

您的数据示例可能会有所帮助。

关于java - 循环删除单个表行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26699606/

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