MySQL Fire Trigger untuk Kedua-dua Sisipan dan Kemas Kini: Menggabungkan Pencetus Melalui Prosedur Biasa
Apabila menguruskan data dalam MySQL, pencetus adalah alat yang tidak ternilai untuk memproses dan mengesahkan peristiwa yang berlaku pada jadual pangkalan data. Untuk menyelaraskan proses, adalah wajar untuk mencetuskan tindakan pada kedua-dua acara sisipan dan kemas kini tanpa perlu menentukan pencetus berasingan.
Soalan asal mencari penyelesaian kepada cabaran ini, menyatakan keinginan untuk menyatukan pencetus dan mengurangkan pengulangan kod . Walaupun MySQL secara asalnya tidak menyokong satu pencetus untuk kedua-dua acara sisipan dan kemas kini, terdapat penyelesaian menggunakan prosedur tersimpan.
Kunci untuk menggabungkan pencetus terletak pada mencipta prosedur tersimpan yang merangkumi tindakan biasa. Prosedur ini kemudiannya boleh digunakan daripada pencetus sisipan dan kemas kini, dengan berkesan memusatkan logik.
Begini cara untuk mencapainya:
Buat Simpanan Prosedur:
CREATE PROCEDURE my_trigger_procedure(...) BEGIN -- Insert and update logic here END //
Buat Pencetus Sisipan:
CREATE TRIGGER my_insert_trigger AFTER INSERT ON `table` FOR EACH ROW BEGIN CALL my_trigger_procedure(...); END //
Buat Kemas kini Pencetus:
CREATE TRIGGER my_update_trigger AFTER UPDATE ON `table` FOR EACH ROW BEGIN CALL my_trigger_procedure(...); END //
Dalam penyelesaian ini, my_trigger_procedure berfungsi sebagai skrip pusat, yang membolehkan kedua-dua pencetus melakukan tindakan yang diperlukan dengan lancar tanpa mengulangi kod.
Atas ialah kandungan terperinci Bagaimana untuk Menggabungkan Pencetus MySQL untuk Operasi Sisipan dan Kemas Kini Menggunakan Prosedur Tersimpan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!