sql >> Databáze >  >> RDS >> Mysql

MYSQL:POKUD se shoduje podmínka NEBO ®EXP

Konečně jsem dostal konečnou a správnou verzi triggeru po odladění mnoha možností a vykopání odpovědí SO. Očekával rychlou odpověď, protože to nebyla otázka SCI-FI, kterou ostatní vývojáři nedokázali rozluštit.

Chyba 1 :Mezera mezi ENDIF . Mělo by to být END IF .

Chyba 2 :Chybí new.column z definice spouštěče;

SPRÁVNÁ VERZE :

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. Načtěte data z tabulky spojení v Yii2

  2. Chyba 404 Nenalezeno s EM 12c

  3. SQL Server nahradit, odstranit vše po určitém znaku

  4. Jaké jsou důsledky opakovaného otevírání připojení MySQL v PHP