Гость
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Триггер контроля изменения значений полей записи / 16 сообщений из 16, страница 1 из 1
17.01.2019, 10:33
    #39760675
Hadroran
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Триггер контроля изменения значений полей записи
Всем привет.

Подскажите, есть ли возможность в IBExpert сделать триггер (на "после обновления") для контроля изменения значений того или иного поля записи?

Спасибо.
...
Рейтинг: 0 / 0
17.01.2019, 10:42
    #39760682
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Триггер контроля изменения значений полей записи
да
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
17.01.2019, 10:49
    #39760690
Hadroran
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Триггер контроля изменения значений полей записи
Мимопроходящий,

Сенк, пошел копать... ))
...
Рейтинг: 0 / 0
17.01.2019, 13:37
    #39760836
KreatorXXI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Триггер контроля изменения значений полей записи
Hadroran,

Только на изменение всей запись. На изменение конкретного поля нет. Если именно это интересует.
...
Рейтинг: 0 / 0
17.01.2019, 14:14
    #39760871
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Триггер контроля изменения значений полей записи
17.01.2019 13:37, KreatorXXI пишет:
> Только на изменение всей запись. На изменение конкретного поля нет.

не существенно.
Код: sql
1.
... IS [NOT] DISTINCT FROM ...


Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
18.01.2019, 09:09
    #39761249
Hadroran
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Триггер контроля изменения значений полей записи
Думаю, тему можно закрыть.
Делаю через триггер "после обновления" проверяю все необходимы поля на (old.xxx <> new.xxx) и соответственно под каждое поле свое действие.
...
Рейтинг: 0 / 0
18.01.2019, 09:15
    #39761250
m7m
m7m
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Триггер контроля изменения значений полей записи
HadroranДумаю, тему можно закрыть.
Делаю через триггер "после обновления" проверяю все необходимы поля на (old.xxx <> new.xxx) и соответственно под каждое поле свое действие.
Все-же обрати внимание на 21787883
...
Рейтинг: 0 / 0
18.01.2019, 09:27
    #39761254
WildSery
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Триггер контроля изменения значений полей записи
Лучше прямо написать, а то ведь может и не дойти.
Сравнение "<>" со значением NULL не работает так, как неопытные кодеры могут ожидать.
...
Рейтинг: 0 / 0
18.01.2019, 16:14
    #39761601
KreatorXXI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Триггер контроля изменения значений полей записи
Мимопроходящий17.01.2019 13:37, KreatorXXI пишет:
> Только на изменение всей запись. На изменение конкретного поля нет.

не существенно.
Код: sql
1.
... IS [NOT] DISTINCT FROM ...




"Выкручиваемся, брат. Жить хочется." ©

На самом деле не мешало бы отдельные триггеры. А ТС, видимо, не понял про "is distinct from". Не докопал.
...
Рейтинг: 0 / 0
18.01.2019, 17:01
    #39761637
WildSery
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Триггер контроля изменения значений полей записи
KreatorXXIНа самом деле не мешало бы отдельные триггеры.А вот мне мешали бы. Особенно для отладки.
Триггер есть - должен сработать. А так хрен его знает, когда он там выскочит. Надо в голове всё держать.
...
Рейтинг: 0 / 0
18.01.2019, 17:18
    #39761655
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Триггер контроля изменения значений полей записи
18.01.2019 17:01, WildSery пишет:
> Надо в голове всё держать.

у Оракла триггеры могут быть по условию.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
CREATE TRIGGER hr.salary_check
BEFORE INSERT OR UPDATE OF salary, job_id ON hr.employees
FOR EACH ROW
WHEN (new.job_id <> 'AD_VP')
AS
BEGIN
  ...
END;



Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
21.01.2019, 09:17
    #39762222
WildSery
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Триггер контроля изменения значений полей записи
Мимопроходящий,

Это всё понятно, но когда у тебя с десяток триггеров висит, то в списке видно, какой для чего?
...
Рейтинг: 0 / 0
21.01.2019, 09:40
    #39762228
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Триггер контроля изменения значений полей записи
WildSery,

никто не мешает давать им правильные имена, и тогда всё видно
...
Рейтинг: 0 / 0
21.01.2019, 09:58
    #39762236
WildSery
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Триггер контроля изменения значений полей записи
Симонов Денис,

Ок. Какое имя дать триггеру
Код: sql
1.
WHEN (new.job_id <> 'AD_VP')


Я так понимаю, что оно будет "говорящим" только создателю.
...
Рейтинг: 0 / 0
21.01.2019, 12:02
    #39762282
Мимопроходящий
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Триггер контроля изменения значений полей записи
21.01.2019 9:58, WildSery пишет:
> Я так понимаю, что оно будет "говорящим" только создателю.

даже создатель всего с(ц)ущего по прошествии некоторого времени
хрен вспомнит, что там унутре и какая неонка чего люминисцирует.
а посему, не стоит пренебрегать полем RDB$DESCRIPTION.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
21.01.2019, 14:00
    #39762368
KreatorXXI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Триггер контроля изменения значений полей записи
Не вижу больших проблем. В SQLAnywhere выглядит вот так:
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Триггер контроля изменения значений полей записи / 16 сообщений из 16, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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