繁体   English   中英

我想让用户知道删除语句是否成功,有没有办法做到这一点?

[英]I want to let the user know if the delete statement was successful or not is there a way to do this?

在这里,我有删除给定 id 的客户的方法。 它可以工作,但如果你给它一个无效的 id,什么也不会发生,我想告诉用户删除失败。 我尝试将 if 语句与 executeQuery() 一起使用,但我意识到即使删除成功它也返回 false,而不仅仅是在没有行受到影响时。

private static final String DELETE = "DELETE FROM customers WHERE customer_id = ?";

public void deleteByID(int id) {
        try(PreparedStatement ps = this.connection.prepareStatement(DELETE)) {
            ps.setInt(1, id);
            ps.execute();
        } catch(SQLException e) {
            e.printStackTrace();
        }
    }

您可以使用PreparedStatement.executeUpdate() ,它将返回受影响的行数。 如果返回值 < 1,则没有删除任何行。 基于此,您可以向用户显示错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM