区分重复密钥和更新密钥

Distinguish duplicate key from updated key

我有一个创建 ID 的 SQL 查询:

insert into category(related,text) values(?,?) 
on duplicate key update id=last_insert_id(id)

然后我得到我的 ID:

$id=$connect->lastinsertid()

有没有办法区分使用查询发现的重复 ID 和全新 ID?

我认为不是直接的。如果您将创建和更新日期列添加到 table,您可以检索它们并比较值;如果记录是新插入的,则日期应相同;如果记录已更新,则日期应不同。插入应将当前日期指定为默认值。更新事件可以触发触发器来修改更新日期列中的日期