MySQL 删除操作返回值及成功判断
在MySQL中,DELETE语句用于从表中删除数据行。那么,一个成功的MySQL DELETE语句会返回什么呢?如何检查DELETE是否成功?
阅读更多:MySQL 教程
删除操作返回值
MySQL中,DELETE语句执行成功时并不会返回任何值。如果DELETE语句成功删除了一行或多行数据,则会返回一个空结果集。
例如,我们执行以下DELETE语句:
如果该语句成功删除了ID等于100的数据行,则该语句会返回一个空结果集。
成功判断方法
由于DELETE语句的返回值是空结果集,因此不能直接通过返回值来判断删除是否成功。但是,我们可以使用以下两种方法来判断DELETE是否成功:
- 使用受影响的行数判断
在MySQL中,可以使用ROW_COUNT()
函数来查询上一次执行DELETE语句时受影响的行数。如果受影响的行数大于0,则说明DELETE语句成功执行。
例如,我们执行以下DELETE语句:
可以使用以下SQL语句查看删除了多少行数据:
如果结果为1,则说明成功删除了一行数据;如果结果大于1,则说明成功删除了多行数据。
- 使用错误码判断
在MySQL中,如果DELETE语句执行出错,则会返回一个非0的错误码。因此,我们可以在执行DELETE语句后判断错误码是否为0,来判断DELETE是否成功。
例如,我们可以使用以下PHP代码来执行DELETE语句并判断是否成功:
以上代码中,如果DELETE语句执行成功并且错误码为0,则会输出“DELETE succeed.”;如果DELETE语句执行失败,则会输出对应的错误信息。
总结
本文介绍了MySQL中DELETE语句的返回值及成功判断。通过使用受影响的行数和错误码,我们可以判断DELETE语句是否成功执行。实际应用中,应根据具体情况选择合适的方法进行判断。