Thursday, March 15, 2007

Запрет на UPDATE/DELETE/INSERT посредством триггера

Иногда(на практике - в очень редких случаях) может понадобиться
запретить обновление, удоление или добавление данных в таблицу
посредством триггера.
На первый взгляд кому-то задача может показаться сложной, но на
самом деле все крайне тривиально.

Пример такого триггера (при попытке UPDATE возникает EXCEPTION):


CREATE OR REPLACE TRIGGER Trigger_Name
BEFORE UPDATE
ON Some_Table
BEGIN
RAISE_APPLICATION_ERROR(-20001, 'Cant update data');;
END;


Никакой магии - все предельно просто :)

0 комментария(ев):