Привет, ребята, спасибо за помощь ранее. У меня теперь возникла новая проблема. Несколько шагов в моей домашней работе мне пришлось добавить дополнительную часть этого триггера. Триггер должен вычесть один из числа копий. Когда число копий достигает 0, оно должно отображаться недоступно. Я пытался в течение последних нескольких часов понять это, и это то, что я придумал. Любая помощь или предложения были бы очень признательны!Что означают эти триггерные ошибки
CREATE or REPLACE Trigger Unavailable_Rule
BEFORE INSERT ON Transaction
FOR EACH ROW
BEGIN
IF :new.Date_Rented_Out is not null AND :new.Date_Returned is NULL AND Num_Copies=1
THEN
UPDATE Video
set Num_Copies = Num_Copies - 1,
Status = 'Unavailable'
where Vid_Num = :new.Vid_Num;
ELSE
Num_Copies = Num_Copies - 1;
End IF;
END;
/
show errors;
6/4 PL/SQL: SQL Statement ignored
7/15 PL/SQL: ORA-00971: missing SET keyword
13/13 PLS-00103: Encountered the symbol "=" when expecting one of the f ollowing: := . (@ % ;
14/2 PLS-00103: Encountered the symbol "END"
Спасибо, что сузили ошибки только для этих двух: 13/13 PLS-00103: Встретил символ «=», когда ex вызывая одно из следующих:: =. (@%; 14/2 PLS-00103: встречается символ «END» – Erica
В другом случае есть что-то не так: «Num_Copies = Num_Copies -1;» Вам нужна остальная часть обновления stmt здесь? Num_Copies = Num_Copies-1 где Vid_Num =: new.Vid_Num; – Jt2ouan
Это не сработало, я получил дополнительные ошибки – Erica