1

我有一个 SQL 语句,它将根据它们的 ID 和区域删除某些行。我可以 system.out.println 这个语句而不执行语句本身吗?我只是想确保我删除的内容是正确的。

这是一个示例语句:

PreparedStatement ps = db.getPreparedStatement("delete from tbl_traininglinks where training_title IN ('"+vwarnid+"')");
    int i=ps.executeUpdate();
4

2 回答 2

1

我注意到评论中已经回答了这个问题,但我想添加一些可能相关的内容,具体取决于您的应用程序的使用方式。

如果您在使用SELECT之前使用并等待用户验证DELETE,则表中的数据可能会同时更改,您最终可能会删除您在SELECT语句中没有得到的行并且用户没有验证删除。即使您只是显示SELECT语句的结果然后立即删除,也可能会发生这种情况,但机会较小。

相反,我建议您使用SELECT并在用户验证删除后构建一个SQL 命令,该命令使用您在语句中DELETE收到的行的键。SELECT这样,您只删除用户验证删除的内容。

于 2013-05-20T07:45:43.030 回答
-1

有一个功能叫

ROLLBACK

如果您使用的是事务性数据库。

于 2013-05-23T05:10:17.840 回答