cqwcns 发表于 2019-10-5 15:47

MYSQLi使用REPLACE INTO语句,返回影响条数的问题

SQL语句是组装的,REPLACE INTO一次执行很多条,为了用户体验,应该向前端返回成功新增插入条数,和替换条数。


但据我了解,好像只能返回影响数,例如一次REPLACE INTO 10条,其中有5条是新增的,有5条是替换的,影响条数会返回15条,无法区分成功新增插入条数,和替换条数。


我在网上查了一下,也没有找到答案,各位有什么好办法,指教一下,感谢。

巨无霸 发表于 2019-10-5 20:21

1、在REPLACE INTO插入之前,可以用count(*)统计下你本次操作的数据在数据库中存在的数量,这个结果就是你替换的数据条数。

2、本次操作的数据数量减去替换的数据条数,就是你新增的数据条数。

3、步骤1、2中的查询、计算结果,返回给前台,就是替换、新增的条数。

cqwcns 发表于 2019-10-5 20:50

巨无霸 发表于 2019-10-5 20:21
1、在REPLACE INTO插入之前,可以用count(*)统计下你本次操作的数据在数据库中存在的数量,这个结果就是你 ...

这个方法是可以,但主要是要提前查询一次,不利于大数据操作的性能。
页: [1]
查看完整版本: MYSQLi使用REPLACE INTO语句,返回影响条数的问题