Apabila mengemas kini jadual MySQL, adalah perkara biasa untuk tertanya-tanya sama ada pangkalan data akan menimpa nilai sedia ada dengan nilai yang sama. Pertimbangkan jadual berikut:
<code class="sql">user_id | user_name 1 John 2 Joseph 3 Juan</code>
Jika anda melaksanakan pertanyaan berikut:
<code class="sql">UPDATE `user` SET user_name = 'John' WHERE user_id = 1</code>
Adakah MySQL akan menimpa nilai sedia ada 'John' dengan nilai yang sama, atau adakah ia abaikan kemas kini kerana nilainya kekal tidak berubah?
Menurut dokumentasi MySQL untuk pernyataan KEMASKINI:
Jika anda menetapkan lajur kepada nilai itu Pada masa ini, MySQL menyedari perkara ini dan tidak mengemas kininya.
Dalam kes kami, lajur nama_pengguna untuk user_id 1 sudah ditetapkan kepada 'John'. Oleh itu, apabila anda melaksanakan pertanyaan kemas kini, MySQL akan mengenali bahawa nilai baharu adalah sama dengan nilai semasa dan akan tidak menulis sebarang perubahan pada pangkalan data.
Atas ialah kandungan terperinci Adakah MySQL Mengganti Nilai Sedia Ada dengan Nilai Yang Sama pada Kemas Kini?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!