検索

ホームページ  >  に質問  >  本文

MySQL の主キーが競合する場合の更新操作と置換操作の機能の違いは何ですか (図を参照)

曾经蜡笔没有小新曾经蜡笔没有小新2788日前892

全員に返信(2)返信します

  • 世界只因有你

    世界只因有你2017-06-07 09:27:03

    INSERT ... ON DUPLICATE KEY UPDATEREPLACE違いがあります。前者は INSERT が失敗した後に UPDATE を実行しますが、後者は DELETE を実行してから INSERT を実行するのと同じです。行全体が消えることがわかります。

    具体的には、テーブルに 3 つの列がある場合:

    リーリー

    これら 2 つの文の効果は異なります:

    リーリー

    前者のエイリアスは変更されませんが、後者は null になります。

    返事
    0
  • 迷茫

    迷茫2017-06-07 09:27:03

    重複更新時に挿入は元のレコードを操作します
    replace は重複があるかどうかを判断し、最初に削除してから挿入します

    返事
    0
  • キャンセル返事