Вниз
Скачать: 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.025 c
14-1089997718
}|{yk
2004-07-16 21:08
2004.08.01
Все! Ухожу...


14-1089385460
dix
2004-07-09 19:04
2004.08.01
Использовать ли Базу данных


6-1084811642
MaxcM
2004-05-17 20:34
2004.08.01
ICS HttpServer + POST


3-1089016013
Gamar
2004-07-05 12:26
2004.08.01
Фильтрация через ComboBox


1-1090248783
serg128
2004-07-19 18:53
2004.08.01
как в TTreeView получить родительский узел?




   Наверх