ошибка компиляции при создании триггера «вместо» для представления - PullRequest
1 голос
/ 29 ноября 2010

Я создал триггер «вместо» для простого представления, которое только выбирает * для таблицы, и триггер, который ничего не делает (я хотел минимизировать проблему):

create or replace view tmp(id, nazwa, nip, adres, zalega, punkty) as
select * from klient

create or replace trigger tmp_trg
instead of insert
on tmp
for each row
begin

end;

Вид создан. Затем, когда я хочу сделать объявить этот триггер SQL-разработчик возвращает ошибку:

Ошибка (8,1): PLS-00103: Обнаружен символ «END» при ожидании одного из следующего: начинайте регистр, объявляйте выход для goto, если цикл mod null pragma поднимает возвращать select update, в то время как с «идентификатором» двойные кавычки delimited-identifier '' переменная связывания '<< закрыть текущий удалить выборку заблокировать вставить открыть откат сохранить набор точек sql выполнить commit для всего канала слияния </p>

Ответы [ 2 ]

5 голосов
/ 29 ноября 2010

просто добавьте "ноль";между началом и концом.

1 голос
/ 29 ноября 2010

триггер, который ничего не делает (я хотел минимизировать проблему):

Я не уверен, что понимаю, зачем вам триггер, если он ничего не делает?

Чтобы ответить, в вашем блоке кода триггера нет действительного оператора PL / SQL, добавьте NULL, чтобы сделать его допустимым блоком и не выполнять никаких действий.

create or replace trigger tmp_trg
instead of insert
on tmp
for each row
begin
NULL;
end;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...