- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ON DUPULICATE UPDATE)
MySQLでのデータのINSERT時に既存レコードが更新されない理由
このQ&Aのポイント
- MySQLのINSERT文には、既に存在するレコードの場合に更新処理を行うための構文があります。しかし、質問のような構文では正しく更新されず、新たにレコードが追加されてしまいます。
- 構文の問題点は、ON DUPLICATE KEY UPDATE句に指定するキーが不正確であることです。ID = 1ではなく、TABLE_ID = 2のレコードが更新されるべきです。
- 正しい構文としては、INSERT INTO TABLE_A (TABLE_ID, COUNT) VALUES (2, 1) ON DUPLICATE KEY UPDATE COUNT = 1となります。正しいキーを指定し、更新するカラムも正確に指定することが必要です。
- みんなの回答 (1)
- 専門家の回答
お礼
メッセージありがとうございます。 スイマセン、ご連絡遅くなりました。 ちょとやり方を変えて出来るようになりました。ありがとうございました。