Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Триггеры в mysql 5.1 и mysql 5.5
Форумы портала PHP.SU » PHP » SQL и Архитектура БД » Триггеры в mysql 5.1 и mysql 5.5

Страниц (1): [1]
 

1. ant - 04 Декабря, 2012 - 03:46:50 - перейти к сообщению
Здравствуйте.
Создаю 2 триггера:
CODE (SQL):
скопировать код в буфер обмена
  1. DELIMITER |
  2. CREATE TRIGGER `after_insert_invite_friends_to_chat` AFTER INSERT ON `invite_friends_to_chat`
  3.   FOR EACH ROW BEGIN
  4.     INSERT INTO `messages` (`id_user_from`, `id_user_to`, `message`, `dt`, `is_watch`)
  5.       VALUES (NEW.id_user_who,
  6.         NEW.id_user_whom,
  7.         CONCAT((SELECT `lastname` FROM `users` WHERE `id` = NEW.id_user_who),
  8.           ' ',
  9.           (SELECT `name` FROM `users` WHERE `id` = NEW.id_user_who),
  10.           ' приглашает вас в чат: <a href="room.php?code1=',
  11.           NEW.chat_code,
  12.           '&code2=0">перейти в чат</a>'),
  13.         NOW(), 1);
  14.   END|
  15. |
  16. DELIMITER ;
  17.  
  18. DELIMITER |
  19. CREATE TRIGGER `after_delete_invite_friends_to_chat` AFTER DELETE ON `invite_friends_to_chat`
  20.   FOR EACH ROW BEGIN
  21.     DELETE FROM `messages` WHERE `id_user_from` = OLD.id_user_who AND
  22.       `id_user_to` = OLD.id_user_whom AND
  23.       `message` = CONCAT((SELECT `lastname` FROM `users` WHERE `id` = OLD.id_user_who),
  24.       ' ',
  25.       (SELECT `name` FROM `users` WHERE `id` = OLD.id_user_who),
  26.       ' приглашает вас в чат: <a href="room.php?code1=',
  27.       OLD.chat_code,
  28.       '&code2=0">перейти в чат</a>');
  29.   END|
  30. |
  31. DELIMITER ;


На локальном компьютере установлена MySQL 5.5 (Денвер) и все прекрасно работает. При добавлении и удалении (через event событие) записи в таблице invite_friends_to_chat создается и удаляется соответственно запись в таблице messages. А вот на сервере установлена MySQL 5.1.66 и эти 2 триггера не работают (то есть не создается запись в таблице messages после добавления записи в таблице invite_friends_to_chat). Команда show triggers показывает, что триггеры есть. Но они почему-то не работают. Подскажите, пожалуйста, в чем может быть причина?

 

Powered by ExBB FM 1.0 RC1