Rumah >pangkalan data >tutorial mysql >Bagaimanakah MySQL Triggers Boleh Mengendalikan Entri Duplikat dan Pengecualian Isyarat kepada Aplikasi C#?
Cara Mengendalikan Entri Pendua dengan Pencetus dalam MySQL
Apabila mengekalkan jadual dengan kekangan unik yang melangkaui had panjang kunci, seperti seperti dalam kes rentetan parameter yang panjang, pencetus boleh digunakan untuk menguatkuasakan kekangan ini. Artikel ini membincangkan cara mengendalikan entri pendua dan membuang pengecualian untuk memberitahu aplikasi anda.
Melempar Pengecualian
Untuk membuang pengecualian dan mengembalikan ralat kepada kod C# anda, anda boleh menggunakan pernyataan SIGNAL dalam pencetus anda. Kod berikut menunjukkan cara:
DECLARE msg VARCHAR(255); IF (SomeTestToFail = "FAIL!") THEN SET msg = "DIE: You broke the rules... I will now Smite you, hold still..."; SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = msg; END IF;
Kod ini menetapkan mesej ralat dan menandakan pengecualian dengan keadaan SQL '45000'. Anda kemudiannya boleh menangkap pengecualian ini dalam kod C# anda.
Membenarkan Sisipan
Untuk membenarkan sisipan jika tiada entri pendua wujud, anda boleh menggunakan kod berikut:
IF num_rows = 0 THEN -- Allow insert END IF;
Kod ini menyemak sama ada kiraan entri pendua (bilangan_baris) ialah 0. Jika ya, sisipan dibenarkan untuk meneruskan.
Atas ialah kandungan terperinci Bagaimanakah MySQL Triggers Boleh Mengendalikan Entri Duplikat dan Pengecualian Isyarat kepada Aplikasi C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!