Гость
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Подскажите, как можно реализовать пополнение одной таблицы, при удалении записей из другой / 13 сообщений из 13, страница 1 из 1
29.03.2019, 06:52
    #39793385
antox
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как можно реализовать пополнение одной таблицы, при удалении записей из другой
Необходимо, что бы при удалении из таблицы t1, данные из некоторых столбцов удаляемых записей пополняли таблицу t2

Как это лучше реализовать на стороне БД, без участия приложения ?
...
Рейтинг: 0 / 0
29.03.2019, 08:07
    #39793398
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как можно реализовать пополнение одной таблицы, при удалении записей из другой
antoxКак это лучше реализовать на стороне БД, без участия приложения ?
IBExpert умеет создавать такие скрипты.
...
Рейтинг: 0 / 0
29.03.2019, 08:12
    #39793399
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как можно реализовать пополнение одной таблицы, при удалении записей из другой
...
Рейтинг: 0 / 0
29.03.2019, 08:34
    #39793402
Ivan_Pisarevsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как можно реализовать пополнение одной таблицы, при удалении записей из другой
trigger after delete
...
Рейтинг: 0 / 0
29.03.2019, 17:34
    #39793810
antox
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как можно реализовать пополнение одной таблицы, при удалении записей из другой
Спасибо
...
Рейтинг: 0 / 0
29.03.2019, 19:10
    #39793905
MaratIsk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как можно реализовать пополнение одной таблицы, при удалении записей из другой
Ivan_Pisarevskytrigger after delete
after или before?
...
Рейтинг: 0 / 0
29.03.2019, 19:17
    #39793907
Ivan_Pisarevsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как можно реализовать пополнение одной таблицы, при удалении записей из другой
Я ж вроде бы однозначасно написал after, традиция однако, в саму запись пишем до, в остальные таблицы после.
...
Рейтинг: 0 / 0
29.03.2019, 19:43
    #39793913
MaratIsk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как можно реализовать пополнение одной таблицы, при удалении записей из другой
Ivan_PisarevskyЯ ж вроде бы однозначасно написал after, традиция однако, в саму запись пишем до, в остальные таблицы после.
т.е. after и before в данном случае равнозначны?
...
Рейтинг: 0 / 0
29.03.2019, 19:45
    #39793914
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как можно реализовать пополнение одной таблицы, при удалении записей из другой
antox,

я поясню. Триггеры before выполняются ДО действия, триггеры after - ПОСЛЕ.
Если запись надо "переместить", то делать надо это в after delete, потому что before или во время самого delete может что-то случиться, в результате вставку записи из before delete (если она там) серверу придется отменять. А зачем делать лишнюю работу?
Так что, before delete обычно используется для проверок перед удалением, типа, вызвать exception, если что не так.
...
Рейтинг: 0 / 0
29.03.2019, 20:21
    #39793927
MaratIsk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как можно реализовать пополнение одной таблицы, при удалении записей из другой
kdvantox,

я поясню. Триггеры before выполняются ДО действия, триггеры after - ПОСЛЕ.
Если запись надо "переместить", то делать надо это в after delete, потому что before или во время самого delete может что-то случиться, в результате вставку записи из before delete (если она там) серверу придется отменять. А зачем делать лишнюю работу?
Так что, before delete обычно используется для проверок перед удалением, типа, вызвать exception, если что не так.

имею ввиду ситуацию, когда необходимо сохранить старые значения куда-нибудь в лог перед удалением
OLD VALUES будут доступны при AFTER ?
...
Рейтинг: 0 / 0
29.03.2019, 20:37
    #39793933
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как можно реализовать пополнение одной таблицы, при удалении записей из другой
MaratIsk,

интересно, а почему они не будут доступны? Что тогда в after delete делать-то?
...
Рейтинг: 0 / 0
30.03.2019, 08:19
    #39794000
antox
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как можно реализовать пополнение одной таблицы, при удалении записей из другой
Как я успел понять, именно after, хотя логичнее было бы ON )
...
Рейтинг: 0 / 0
30.03.2019, 08:37
    #39794002
MaratIsk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как можно реализовать пополнение одной таблицы, при удалении записей из другой
kdvMaratIsk,

интересно, а почему они не будут доступны? Что тогда в after delete делать-то?
действительно работает
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Подскажите, как можно реализовать пополнение одной таблицы, при удалении записей из другой / 13 сообщений из 13, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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