Хорошо, поэтому я работаю над домашним заданием. У меня есть три стола, фильмы (название, год, длина, жанр, студия, продюсер) StarsIn (movieTitle, starName) MovieStar (имя, адрес, пол, дата рождения)Oracle Trigger Вставка/обновление
В принципе, мне нужно убедиться, что кто-то вставляет или обновляет что-то в StarsIn, эти изменения должны произойти и в MovieStar.
До сих пор у меня есть что-то вроде этого ..
CREATE OR REPLACE TRIGGER testTrig
AFTER UPDATE OR INSERT ON STARSIN
DECLARE
l_name MOVIESTAR.NAME%TYPE;
BEGIN
SELECT NAME FROM MOVIESTAR INTO l_name;
FOR EACH ROW WHEN (new.STARSIN.STARNAME NOT IN l_name)
INSERT INTO MOVIESTAR(NAME) VALUES (new.STARSIN.STARNAME);
END;
Я получаю несколько ошибок компилятора
Error(4,1): PL/SQL: SQL Statement ignored
Error(4,28): PL/SQL: ORA-00933: SQL command not properly ended
Error(5,10): PLS-00103: Encountered the symbol "ROW" when expecting one of
the following: in
Я очень новый для оракула и я практикую триггера. Я знаю, что это можно легко сделать с помощью внешних ключей, но назначение - использовать триггеры.
Я мог бы действительно помочь с этим. Я пробовал как миллион различных способов сделать это, не повезло.
Заранее благодарим за помощь/совет.
Да, это сработало! Вы не представляете, насколько я счастлив. Я собирался начать стучать головой по моей клавиатуре :-) Спасибо. – mingle