Страница 1 из 1
в Триггере не выполняется UPDATE
Добавлено: 19 мар 2010, 10:40
Karburator
Здравствуйте, помогите разобраться - в триггере, при попытке удаления записи в таблице PSPO, хочу изменить данные в таблице T_SET, а затем вызвать исключение. Исключение вызывается успешно, но данные в таблице T_SET не изменяются - почему этого не происходит, что я делаю не так?
Код триггера:
Код: Выделить всё
CREATE TRIGGER PSPO_BD0 FOR PSPO
ACTIVE BEFORE DELETE POSITION 0
AS
begin
update T_SET
set tset=1
where (id=1);
exception E_PSPO_NODEL;
end
версия сервера - FB 2.1.1
Re: в Триггере не выполняется UPDATE
Добавлено: 19 мар 2010, 11:17
hvlad
Karburator писал(а):Здравствуйте, помогите разобраться - в триггере, при попытке удаления записи в таблице PSPO, хочу изменить данные в таблице T_SET, а затем вызвать исключение. Исключение вызывается успешно, но данные в таблице T_SET не изменяются - почему этого не происходит, что я делаю не так?
Исключение отменяет твой апдейт
Re: в Триггере не выполняется UPDATE
Добавлено: 19 мар 2010, 12:05
Karburator
Есть ли в таком случае возможность в триггере одновременно вызвать и исключение и запомнить изменения таблицы T_SET? И как это можно сделать?
Re: в Триггере не выполняется UPDATE
Добавлено: 19 мар 2010, 12:49
hvlad
Делать апдейт в автономной тр-ции, Firebird 2.5
Или пересмотреть задачу
Re: в Триггере не выполняется UPDATE
Добавлено: 22 мар 2010, 06:42
Karburator
Благодарю за ответы, где можно посмотреть информацию о совместимости версий FB 2.1 и 2.5 и переходе на старшую? Интересует так же такой вопрос - сервер на версии 2.5 будет работать с клиентом на 2.1?
Re: в Триггере не выполняется UPDATE
Добавлено: 22 мар 2010, 10:17
kdv
информацию о совместимости версий FB 2.1 и 2.5 и переходе на старшую?
Firebird_v2.5.0.ReleaseNotes.pdf в папке doc установки. там же и
README.incompatibilities.txt
сервер на версии 2.5 будет работать с клиентом на 2.1?
будет, но лучше клиента 2.5. зачем такой бутерброд?