我有一个名为special_offers
的表,其中包含以下列:
id
,old_price
,new_price
,redeemed_at
id
是一个自动递增的主键。
当我创建一行时,redeemed_at
列设置为NULL
我创建了一个包含old_price = 20
和new_price = 10
所以目前我有一行如下所示:| 1
| 20
| 10
| NULL
|
当我运行以下查询时:UPDATE special_offers SET redeemed_at = NOW() WHERE id = 1
一切顺利并更新行。
然后,我将redeemed_at
行更改回NULL并再次运行相同的查询,我收到以下错误:#1062 - Duplicate entry '1' for key 'PRIMARY'
我可以更改任何其他列,但只有在此特定redeemed_at
上才会给我错误。
有什么想法?
答案 0 :(得分:0)
问题出现在trigger
上,正在该表上插入日志。
它按原样记录了表,包括主键,在第二次记录时,它给出了副本。错误未提及该表。