0

我试图从数据库中删除一行,但控件总是进入下面的 else 部分。我试图在数据库上执行相同的删除语句,它在那里工作。我已经验证了所有的列名和表名是正确的。

如果我在这里做错了什么,有人可以指导吗?

谢谢。

public String delAd(String x, String y, String z){

    String result = ""; 
    int rowcount = 0;

    try{

        PreparedStatement ps = con.prepareStatement("DELETE FROM dbname.tablename WHERE iname = ? AND idesc = ? AND seller = ?");
        ps.setString(1,x);
        ps.setString(2,y);
        ps.setString(3,z);

        rowcount = ps.executeUpdate();

        if(rowcount > 0){
            result = "true";
            System.out.println("Delete Successful");
        }else{
            result = "false: Value could not be deleted from the database";
        }

    }catch(Exception e){
        e.printStackTrace();
    }

    return result;
}
4

1 回答 1

0

如果有任何行满足查询,请检查您的表。简单的测试方法是使用下面的值执行选择语句。

 SELECT * FROM TABLENAME WHERE INAME='WATEVER' AND IDESC='WATEVER';

从输出中可以明显看出,没有任何行可以满足您的查询,这就是控制跳转到其他位置的原因。

于 2012-10-30T22:43:51.570 回答