Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

MYSQL:JIKA memiliki kondisi OR ®EXP cocok

Akhirnya mendapatkan versi pemicu yang terakhir dan benar setelah men-debug banyak kemungkinan dan menggali jawaban SO. Mengharapkan tanggapan cepat karena bukan pertanyaan SCI-FI yang tidak dapat dipecahkan oleh pengembang lain.

Kesalahan 1 :Spasi di antara ENDIF . Seharusnya END IF .

Kesalahan 2 :Tidak ada new.column dari definisi pemicu;

VERSI YANG BENAR :

CREATE TRIGGER `trg_contact_insert_profanity_check` BEFORE INSERT ON `contacts`
 FOR EACH ROW BEGIN
IF ((new.email IN (SELECT word FROM profanity)) OR (new.message
 IN (SELECT word FROM profanity)) OR (new.message REGEXP '/(http|https|ftp|ftps)?(://)?[a-zA-Z0-9-.]+.[a-zA-Z]{2,3}(/S*)?/' ))
THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = "Database Error: BAD REQUEST";
END IF;
END



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Praktik yang baik untuk membagi data ke beberapa basis data?

  2. Membuat grafik jqplot menggunakan php

  3. MYSQL:Bisakah Anda menarik hasil yang cocok seperti 3 dari 4 ekspresi?

  4. Mengekspor tabel HBase ke mysql

  5. mysql:periksa rentang tanggal