Вниз
Скачать: CL | DM;

Как внутри триггера запретить вносить изменения?   Найти похожие ветки 

← →
AlexanderSK   (2004-07-07 15:49) [0]

Подскажите, пожалуйста, как реализовать триггер внутри которого при определенном стечении обстоятельств запретить внесение изменения в таблицу?


← →
Sandman25 ©   (2004-07-07 15:50) [1]

сгенерить exeption


← →
Соловьев ©   (2004-07-07 16:03) [2]

или условие


← →
Курдль ©   (2004-07-07 16:09) [3]


> AlexanderSK   (07.07.04 15:49)  
> Подскажите, пожалуйста, как реализовать триггер внутри которого
> при определенном стечении обстоятельств запретить внесение
> изменения в таблицу?

Для начала попробовать выразить это "сечение обстоятельств" в виде бизнес правила -> check constraint. Если не получится - генерить исключение в триггере [1].



> Соловьев ©   (07.07.04 16:03) [2]
> или условие

А это как?


← →
TohaNik ©   (2004-07-07 16:44) [4]

Ну м. так
чего то внутри тригера делали и получили "определенном стечение обстоятельств"
то тогда new.MyValue = old.MyValue


← →
Курдль ©   (2004-07-07 17:19) [5]


> TohaNik ©   (07.07.04 16:44) [4]
> то тогда new.MyValue = old.MyValue

А юзеры не офигеют от такого "искуственного интеллекта"? :)


← →
TohaNik ©   (2004-07-07 17:37) [6]

Ага забавно получается - юзер меняет а оно никак причем мольча:)

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


← →
vv_fran   (2004-07-08 08:15) [7]

Типа так:

CREATE EXCEPTION MAYTABLE_UPDATE "Нельзя редактировать строку с кодом 0!";

CREATE TRIGGER MAYTABLE_BU0 FOR MAYTABLE
ACTIVE BEFORE UPDATE POSITION 0
AS
begin
   if (MAYTABLE.cod = 0 ) then EXCEPTION MAYTABLE_UPDATE;
end



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.021 c
1-1089893368
voe
2004-07-15 16:09
2004.08.01
TDateTimePicker


14-1089692960
Def
2004-07-13 08:29
2004.08.01
Память и сворачивание приложения


14-1089451132
YurikGL
2004-07-10 13:18
2004.08.01
Форум по системному администрированию и вопрос по нему


3-1089033344
Terminus
2004-07-05 17:15
2004.08.01
ZeosDBO. Несколько запросов


14-1089654853
SammIk
2004-07-12 21:54
2004.08.01
Мерзкии админ




   Наверх