我需要的是使用特定键(实际上是复合键)设置记录的所有字段的值,如果还没有使用该键的记录,则插入记录。
REPLACE
似乎可以完成这项工作,但与此同时,其手册页也显示
INSERT ... ON DUPLICATE KEY UPDATE
。
我最好选择其中哪些?为什么?
REPLACE
我想到的唯一“副作用”是,它会增加自动增量值(幸运的是,我没有使用任何值),而INSERT ... ON DUPLICATE KEY UPDATE
可能不会。还有其他需要注意的实际差异吗?在哪些特定情况下可以REPLACE
优先选择INSERT ... ON DUPLICATE KEY UPDATE
,反之亦然?