Форум → Программирование → PHP для идиотов → Посты и комменты...
Посты и комменты...
Страницы: ← Предыдущая страница →
-
23 августа 2010 г. 23:59, спустя 1 минуту 12 секунд
мм… щас попробую…Высокоуровневое абстрактное говно -
23 августа 2010 г. 23:59, спустя 11 секунд
тобишь WHERE `posts`.`id` = new.post_id где new это только что вставленная запись коммента -
24 августа 2010 г. 0:03, спустя 3 минуты 57 секунд
pma - сука!))
сделал запрос, а он вякаетSQL-запрос:
CREATE TRIGGER `comments_counter_delete` AFTER DELETE ON `comments` FOR EACH ROW BEGIN UPDATE `posts` SET `comments_count` = `comments_count` - 1 WHERE `id` = new.`post_id`; END//
Ответ MySQL: Документация
#1363 - There is no NEW row in on DELETE trigger
но при этом работает))
наверно и при BEFORE и old тоже работало))Спустя 57 сек.все отлично, все пашет)) найс ^^Высокоуровневое абстрактное говно -
24 августа 2010 г. 0:09, спустя 5 минут 13 секунд
Stasovsky, ну в DELETE операторе не может быть новых записей… ))Спустя 26 сек.там может быть только old -
24 августа 2010 г. 0:20, спустя 11 минут 7 секунд
да-да)) я все исправил, нуна вот такdelimiter //
DROP TRIGGER IF EXISTS `comments_counter_insert`//
DROP TRIGGER IF EXISTS `comments_counter_delete`//
CREATE TRIGGER `comments_counter_insert` AFTER INSERT ON `comments` FOR EACH ROW BEGIN
UPDATE `posts` SET `comments_count` = `comments_count` + 1 WHERE `id` = new.`post_id`;
END//
CREATE TRIGGER `comments_counter_delete` BEFORE DELETE ON `comments` FOR EACH ROW BEGIN
UPDATE `posts` SET `comments_count` = `comments_count` - 1 WHERE `id` = old.`post_id`;
END//
delimiter ;
Спустя 25 сек.спасибо еще раз))Высокоуровневое абстрактное говно -
24 августа 2010 г. 11:44, спустя 11 часов 24 минуты 50 секунд
если нет олда, то ставь new
в общем, без триггера работает добавление поста, с триггером выводи эту ошибку…
и я сделал `comments`.`post_id`, потому что на old матерился, мол нет старой строки…Спустя 15 сек.добавление коммента*Спустя 78 сек.молодцаhttps://smappi.org/ - платформа по созданию API на все случаи жизни
Страницы: ← Предыдущая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!