Rumah >pangkalan data >tutorial mysql >'Kata kunci LAMA dan BAHARU membolehkan kami mengakses lajur dalam baris yang dipengaruhi oleh pencetus.'
Seperti yang kita ketahui dalam definisi pencetus kita boleh merujuk kepada lajur baris yang sedang disisipkan, dikemas kini atau dipadamkan. Begini cara kata kunci LAMA dan BARU membolehkan kami mengakses lajur:
Kita mesti menambah nama lajur dengan kelayakan LAMA untuk merujuk nilai dalam baris asal.
Kita mesti mendahului nama lajur dengan kelayakan BAHARU untuk merujuk kepada nilai dalam baris baharu.
Kini, LAMA dan BARU mesti digunakan dengan sewajarnya kerana peristiwa itu dicetuskan
Tentukan apa yang dibenarkan −
Dalam pencetus INSERT, NEW.column_name mewakili nilai lajur yang akan dimasukkan ke dalam baris baharu. LAMA tidak dibenarkan di sini.
Dalam pencetus DELETE, OLD.column_name mewakili nilai lajur dalam baris yang akan dipadamkan. Di sini, BARU tidak dibenarkan.
Dalam pencetus KEMASKINI, OLD.column_name dan NEW.column_name masing-masing merujuk kepada nilai lajur dalam baris sebelum dan selepas baris dikemas kini.
Dalam erti kata lain, kita boleh mengatakan bahawa LAMA mesti digunakan dalam cara baca sahaja, manakala BARU boleh digunakan untuk membaca atau menukar nilai lajur.
Berikut ialah contoh pencetus PADAM yang menunjukkan cara LAMA digunakan −
mysql> CREATE TRIGGER studentinfo_after_delete -> AFTER DELETE -> ON student_info -> FOR EACH ROW FOLLOWS -> BEGIN -> DECLARE vuser varchar(30); -> SELECT USER() into vuser; -> INSERT INTO student_info_deleted(id,deleted_date,deleted_by) VALUES(OLD.id,SYSDATE(),vuser); -> END; // Query OK, 0 rows affected (0.25 sec)
Berikut ialah contoh pencetus INSERT, menunjukkan cara menggunakan BARU −
mysql> Create Trigger before_inser_studentage BEFORE INSERT ON student_age FOR EACH ROW BEGIN IF NEW.age < 0 THEN SET NEW.age = 0; END IF; END // Query OK, 0 rows affected (0.30 sec)
Atas ialah kandungan terperinci 'Kata kunci LAMA dan BAHARU membolehkan kami mengakses lajur dalam baris yang dipengaruhi oleh pencetus.'. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!