如何查看mysql是否替换或插入我的查询

kqhtkvqz  于 2021-06-18  发布在  Mysql
关注(0)|答案(2)|浏览(326)

这个问题在这里已经有答案了

找出replace语句是否已替换或刚刚插入mysql(3个答案)
两年前关门了。
如果我有一个字段1为主键的查询:

$rep = "Replace into table (field1,field2) values ('value1','value2')";
$stmt = $db->query($rep);

有没有办法判断mysql是插入了行,还是找到并替换了行?

n3ipq98p

n3ipq98p1#

为子孙后代:

$rowCount = $stmt->rowCount();

如果$rowcount==1,则为插入;如果$rowcount==2,则为替换。

zpgglvta

zpgglvta2#

在重复键上插入aggregateddata(datenum,timestamp)值(“734152.979166667”,“2010-01-14 23:30:00.000”)update timestamp=values(timestamp)
为了完成这类任务,mysql提供给我们 DUPLICATE KEY UPDATE .
下面是一个示例,如果数据库中不存在记录,您将如何创建新记录,否则它将更新记录

$rep = "INSERT into table (primaryField,field2) values ('value1','value2') ON DUPLICATE KEY UPDATE primaryField=VALUES(primaryField)";
$stmt = $db->query($rep);

欲知更多详情,请阅读此文https://dev.mysql.com/doc/refman/8.0/en/insert-on-duplicate.html
我想这对你有帮助。

相关问题