Rumah >pangkalan data >tutorial mysql >Bagaimana Mengemas kini atau Memasukkan Rekod dengan Cekap dalam MySQL Berdasarkan Kewujudannya?
MySQL: Mengemas kini atau Memasukkan Rekod Berdasarkan Kewujudan
Apabila berurusan dengan pangkalan data, adalah perkara biasa untuk menghadapi senario di mana anda perlu sama ada mengemas kini atau memasukkan rekod berdasarkan kewujudannya. Jika anda menggunakan PHP dan MySQL, soalan ini sering timbul.
Dalam konteks ini, pertanyaan asal cuba menggabungkan kemas kini dan memasukkan pernyataan menggunakan sintaks IF EXISTS. Walau bagaimanapun, ini bukan pendekatan yang paling cekap.
Untuk mencapai kefungsian yang diingini, anda harus mempertimbangkan untuk menggunakan sintaks INSERT ... PADA KEMASKINI KUNCI PENDUPLICATE. Berikut ialah sintaks yang betul:
INSERT INTO <table> (field1, field2, field3, ...) VALUES ('value1', 'value2','value3', ...) ON DUPLICATE KEY UPDATE field1='value1', field2='value2', field3='value3', ...
Dengan sintaks ini, anda boleh melaksanakan kedua-dua operasi INSERT dan UPDATE dalam satu pertanyaan. Jika rekod tidak wujud (berdasarkan kunci utama atau indeks unik), ia akan dimasukkan. Jika rekod sudah wujud, ia akan dikemas kini dengan nilai yang disediakan.
Adalah penting untuk ambil perhatian bahawa nilai baris yang terjejas untuk setiap baris ialah:
Pendekatan ini lebih cekap dan lebih mudah untuk dikekalkan daripada mengendalikan kemas kini dan operasi sisipan secara berasingan.
Atas ialah kandungan terperinci Bagaimana Mengemas kini atau Memasukkan Rekod dengan Cekap dalam MySQL Berdasarkan Kewujudannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!