ФорумПрограммированиеPHP для идиотов → Посты и комменты...

Посты и комменты...

  • technobulka

    Сообщения: 4540 Репутация: N Группа: Джедаи

    Spritz Авг. 23, 2010, 11:59 п.п., спустя 1 минуту 12 секунд

    мм… щас попробую…
    Высокоуровневое абстрактное говно
  • kostyl

    Сообщения: 5210 Репутация: N Группа: Джедаи

    Spritz Авг. 23, 2010, 11:59 п.п., спустя 11 секунд

    тобишь WHERE `posts`.`id` = new.post_id где new это только что вставленная запись коммента
  • technobulka

    Сообщения: 4540 Репутация: N Группа: Джедаи

    Spritz Авг. 24, 2010, 12: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 сек.
    все отлично, все пашет)) найс ^^
    Высокоуровневое абстрактное говно
  • kostyl

    Сообщения: 5210 Репутация: N Группа: Джедаи

    Spritz Авг. 24, 2010, 12:09 д.п., спустя 5 минут 13 секунд

    Stasovsky, ну в DELETE операторе не может быть новых записей… ))
    Спустя 26 сек.
    там может быть только old
  • technobulka

    Сообщения: 4540 Репутация: N Группа: Джедаи

    Spritz Авг. 24, 2010, 12: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 сек.
    спасибо еще раз))
    Высокоуровневое абстрактное говно
  • adw0rd

    Сообщения: 22959 Репутация: N Группа: в ухо

    Spritz Авг. 24, 2010, 11:44 д.п., спустя 11 часов 24 минуты 50 секунд


    в общем, без триггера работает добавление поста, с триггером выводи эту ошибку…
    и я сделал `comments`.`post_id`, потому что на old матерился, мол нет старой строки…
    Спустя 15 сек.
    добавление коммента*
    если нет олда, то ставь new
    Спустя 78 сек.
    молодца
    https://smappi.org/ - платформа по созданию API на все случаи жизни

Пожалуйста, авторизуйтесь, чтобы написать комментарий!