Mysql
 sql >> база данни >  >> RDS >> Mysql

Mysql тригер за актуализиране на вмъкнатия ред

Според коментарите :)

Нуждаете се от BEFORE INSERT задействане. В този тригер променяте записа, преди да достигне постоянното му хранилище. Използвайки вашия пример, този тригер ще бъде дефиниран така:

DELIMITER $$
CREATE TRIGGER moodle.update_lang
BEFORE INSERT
ON moodle.mdl_user FOR EACH ROW
BEGIN
   SET NEW.lang='hu';
END$$
DELIMITER ;

Причината, поради която не можете да използвате UPDATE на същата таблица, за която се отнася тригерът, е, защото това може (и би) причинило безкраен цикъл.

Забележка:Не съм тествал това, но съдейки по вашите коментари изглежда работи. Успех!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Поддръжка за ограничаване на външния ключ в Rails

  2. `date` е валидно име на колона на mysql?

  3. Брой други редове в таблицата със същата стойност

  4. Как да конвертирате низ в шестнадесетичен в MySQL – HEX()

  5. Местоположение на таблиците на базата данни - MySQL - Windows XP