删除后的mysql插入因"重复输入"而失败

Noa*_*oam 10 mysql sql

我有一个包含两个mysql查询的代码.
DELETE FROM my_table WHERE user_id=some_number
INSERT INTO my_table (user_id, ... ) VALUES(some_number, ...)

字段user_id是唯一的.

在极少数情况下,插入失败声称发生了重复输入.我的第一直觉让我相信DELETE没有完成,现在插入尝试插入,我得到一个重复的条目.这可能吗?我怎么能避免这个?您可以想到有不同的解释吗?

更新:我删除的原因是因为我想要删除我第一次没有更新/插入的所有数据.此外,我认为重要的是要声明大多数数据保持不变.

Los*_*ama 1

您始终可以在 DELETE 之后尝试 COMMIT 以确保其完成。