Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.01;
Скачать: 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 вся ветка

Текущий архив: 2004.08.01;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.025 c
1-1089809469
Vanya
2004-07-14 16:51
2004.08.01
Фнукция вывода виндовского хинта при заполнении например едита


3-1089442246
Kaginava
2004-07-10 10:50
2004.08.01
работа с БД из отдельного потока


1-1089508311
Алекс А
2004-07-11 05:11
2004.08.01
Как записать record в ini-файл ?


14-1090057824
Baron
2004-07-17 13:50
2004.08.01
Опрос и обсуждение.


11-1046110368
KSV
2003-02-24 21:12
2004.08.01
Плагин