5

我正在使用 PHP 和 MySQL。

如果我使用INSERT ON DUPLICATE UPDATESQL 语句,那么我如何知道最后一个操作是成功插入而不是更新或插入不成功?

假设是有问题的表格不使用自动增量,所以我不能用 amysql_insert_id来帮助我找出答案。

4

1 回答 1

8

您需要检查 mysql_affected_rows() ,它将在插入时返回 1,在更新时返回 2。根据mysql 文档

if (mysql_affected_rows() == 1) //INSERT
elseif (mysql_affected_row() == 2) //UPDATE

除非更新没有改变任何东西,在这种情况下它将返回 0。

于 2009-08-08T16:19:18.667 回答