Rumah >pangkalan data >tutorial mysql >Bagaimana Mengendalikan Logik Pencetus Identik untuk Memasukkan dan Kemas Kini Acara dalam MySQL?

Bagaimana Mengendalikan Logik Pencetus Identik untuk Memasukkan dan Kemas Kini Acara dalam MySQL?

DDD
DDDasal
2024-11-12 16:54:021095semak imbas

How to Handle Identical Trigger Logic for Insert and Update Events in MySQL?

MySQL Trigger for both Insert and Update

Dalam MySQL, tidak mungkin untuk mencipta satu pencetus yang menyala untuk kedua-dua acara sisipan dan kemas kini pada jadual. Oleh itu, anda perlu mencipta dua pencetus berasingan, satu untuk setiap peristiwa.

Walau bagaimanapun, jika kod pencetus adalah sama untuk kedua-dua acara sisipan dan kemas kini, anda boleh mengalihkan kod biasa ke dalam prosedur tersimpan dan minta pencetus memanggil prosedur sebaliknya. Pendekatan ini membolehkan anda mengelak daripada mengulangi kod yang sama dalam berbilang pencetus.

Berikut ialah contoh cara anda boleh melakukannya:

Buat prosedur tersimpan:

CREATE PROCEDURE common_trigger_code()
BEGIN
    -- Insert or update some data...
END //

Buat pencetus sisipan:

CREATE TRIGGER insert_trigger
AFTER INSERT ON `table`
FOR EACH ROW
CALL common_trigger_code();

Buat pencetus kemas kini:

CREATE TRIGGER update_trigger
AFTER UPDATE ON `table`
FOR EACH ROW
CALL common_trigger_code();

Penyelesaian ini memastikan bahawa kod biasa hanya ditulis sekali dan boleh dikemas kini dengan mudah pada masa hadapan.

Atas ialah kandungan terperinci Bagaimana Mengendalikan Logik Pencetus Identik untuk Memasukkan dan Kemas Kini Acara dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn