2015-06-15 3 views
0
CREATE OR REPLACE TRIGGER HOP 
BEFORE DELETE ON VILLE 
FOR EACH ROW 

BEGIN 
IF DELETING THEN 
RAISE_APPLICATION_ERROR(-20001,"immposible de supprimer"); 
END IF; 
END; 
/

Привет, Я хочу создать триггер, который отказывается удалить город, но я получаю эту ошибку: «immposible де Supprimer» должен быть объявленДолжен быть объявлен?

+1

Используйте одинарные кавычки для строки, вместо двойных кавычек – 6ton

+1

Если вы планируете отказ удалить каждый город, как в вашем примере, это будет более уместно дать разные роли вашим пользователям и предоставить соответствующие гранты/запретить – guigui42

ответ

2

В Oracle некоторый текст между "denotes an identifier, имя таблицы или поля, например.

Вы должны использовать ', который обозначает string буквенные:

RAISE_APPLICATION_ERROR(-20001, 'immposible de supprimer'); 
+0

да, это верно, спасибо мужчинам! – Bobox

2

Вы окружили текстовую строку в двойные кавычки. Oracle полагает, что вы ссылаетесь на объект базы данных. Измените двойные кавычки на одинарные кавычки.

Смежные вопросы