Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Mencegah Sisipan MySQL Berdasarkan Keadaan Menggunakan Pencetus?
Mencegah Sisipan MySQL dengan Pencetus
Untuk mengelakkan memasukkan baris apabila syarat tertentu dipenuhi, seperti tarikh lahir yang ditetapkan pada masa hadapan , anda boleh membuat pencetus. Begini caranya:
CREATE TRIGGER foo BEFORE INSERT ON table FOR EACH ROW BEGIN IF NEW.birthdate > CURRENT_DATE() THEN SIGNAL SQLSTATE '45000'; END IF; END;
Membatalkan Sisipan
Untuk membatalkan sisipan dalam pencetus, gunakan sintaks SIGNAL SQLSTATE. Sebagai contoh, untuk menimbulkan ralat apabila tarikh lahir adalah pada masa hadapan, anda akan menggunakan:
SIGNAL SQLSTATE '45000';
Ini akan membuang pengecualian takrif pengguna yang tidak dikendalikan dan menghalang sisipan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencegah Sisipan MySQL Berdasarkan Keadaan Menggunakan Pencetus?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!