Nie chciałem tworzyć nowego tematu, więc zadam pytanie w tym.
Dodałem sobie triggera do bazy:
delimiter |
CREATE TRIGGER `categories_insert` AFTER INSERT ON `categories`
FOR EACH ROW BEGIN INSERT INTO connections (first_id, second_id, depth) VALUES (NEW.id, NEW.id, 0);
IF connections.second_id IS NOT NULL THEN
INSERT INTO connections (first_id, second_id, depth)
SELECT NEW.id, second_id, depth + 1 FROM connections WHERE first_id = connections.second_id;
END IF;
END;
|
Wszystko pięknie, lecz gdy robie inserta w categories, to wyrzuca mi error : `Unknown table connections in the field list`. A tabela connections istnieje.
P.S.
Trigger powinien ogólnie wyglądać tak:
delimiter |
CREATE TRIGGER `categories_insert` AFTER INSERT ON `categories`
FOR EACH ROW BEGIN INSERT INTO connections (first_id, second_id, depth) VALUES (NEW.id, NEW.id, 0);
IF NEW.second_id IS NOT NULL THEN
INSERT INTO connections (first_id, second_id, depth)
SELECT NEW.id, second_id, depth + 1 FROM connections WHERE first_id = NEW.second_id;
END IF;
END;
|
Lecz wtedy podczas dodawania triggera wyrzuca błąd, że second_id nie istnieje.
O co chodzi ?