powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Отмена удаления в тригире???
13 сообщений из 13, страница 1 из 1
Отмена удаления в тригире???
    #32508305
Demosphen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Собственно в сабже уже всё сказанно, а также хотелось бы знать как можно отменить вставку или апдейт.
...
Рейтинг: 0 / 0
Отмена удаления в тригире???
    #32508378
Denis Uskov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно вызвать исключение, но откат транзакций только на клиенте!
------------------------
С уважением, Denis Uskov
...
Рейтинг: 0 / 0
Отмена удаления в тригире???
    #32508592
IGORRR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да будет табличка:

CREATE TABLE TEST1
(
ID INTEGER,
COLUMN1 INTEGER
);

И да будет к ней триггер:

set term ^;
create trigger trigger1 for test1
active after delete position 0
as
begin
insert into test1 (id, column1) values (OLD.id, OLD.column1);
end
^
set term ;^

У меня заработала.... Только не забывай в контролах Refresh делать
...
Рейтинг: 0 / 0
Отмена удаления в тригире???
    #32508636
alex_k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно вызвать исключение, но откат транзакций только на клиенте!
а savepoint это не в кассу?
...
Рейтинг: 0 / 0
Отмена удаления в тригире???
    #32508680
IGORRR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
alex_k, я наверное туплю, но если с БД работает одновременно несколько клиентов, и один из них ставит savepoint, а через час, скажем, откатывает его... Как себя почувствуют остальные?
Если вопрос глупый, то скажу - savepoinтами никогда пользоваться не приходилось...
...
Рейтинг: 0 / 0
Отмена удаления в тригире???
    #32508693
alex_k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если вопрос глупый, то скажу - savepoinтами никогда пользоваться не приходилось...
мой вопрос не менее глупый :-) я тоже savepointами не пользовался :-)
...
Рейтинг: 0 / 0
Отмена удаления в тригире???
    #32508698
IGORRR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
гы:)
Толковые мы с тобой советчики - теоретики ))
...
Рейтинг: 0 / 0
Отмена удаления в тригире???
    #32508965
Demosphen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IGORRR

Для Апдейта твоё предложение прокатит, но меня больше всего волновал вопрос удаления. Мне хотелось бы в тригире проверять определённые условия и на основе их уже решать удалять ли запись или нет.
...
Рейтинг: 0 / 0
Отмена удаления в тригире???
    #32508982
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какого апдейта?!!!!
Он же тебе показал как сделать то что тебе нужно, на основе after delete - триггера.
Какого апдейта?!!!!
...
Рейтинг: 0 / 0
Отмена удаления в тригире???
    #32509025
IGORRR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну да, пишешь вместо
after delete after insert/update
а дальше проверяешь свои условия..
В чем сложность то?
Выложи код чтоли...
...
Рейтинг: 0 / 0
Отмена удаления в тригире???
    #32509353
Demosphen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сорру, я уже понял что неправильно написал.
Но возникло сразу же два вопроса.
1. Я просто не знаю, after тригер происходит когда пользователь сделает комит или как?
2. У меня ID уникально и если я вставлю запись этим тригером не возникнет ли при откате ошибка.
Извеняюсь за возможно глупые вопросы, просто опыта ещё маловато.
...
Рейтинг: 0 / 0
Отмена удаления в тригире???
    #32509447
Nikola18
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Просто создай в системе свой Exception и на проверке условий
в триггере вызывай его. Пользователь получит вполне подробное
объяснение и будет откат операции и только.
...
Рейтинг: 0 / 0
Отмена удаления в тригире???
    #32509571
Gold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тебе надобно тригге instead of delete сделать. Попробуй сделать представление-копию таблицы, но чтобы оно только на чтение было, удаляй через представление и в триггере решай удалять или нет
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Отмена удаления в тригире???
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]