|
|
|
Проверка в триггере: какое из полей было изменено
|
|||
|---|---|---|---|
|
#18+
Подскажите пожалуйста: Как в триггере на вставку определить, что было изменено конкретное поле и если оно было изменено выполнить какие-либо действия ? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2002, 17:46:05 |
|
||
|
Проверка в триггере: какое из полей было изменено
|
|||
|---|---|---|---|
|
#18+
if update(field) .... Но: возвращает true, даже если значение не изменилось, но поле участвовало в запросе. Т.е. было 1, но в запросе написано updte .. set field=1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2002, 18:01:14 |
|
||
|
Проверка в триггере: какое из полей было изменено
|
|||
|---|---|---|---|
|
#18+
ключевое слово на вставку вообще-то должен работать if update, но у меня не работал Если нет default можно на null это поле сравнивать, не красиво конечно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2002, 18:06:07 |
|
||
|
Проверка в триггере: какое из полей было изменено
|
|||
|---|---|---|---|
|
#18+
>> ключевое слово на вставку Сорри. Это не ключевое слово - это я ошибся. Естественно на обновление. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2002, 18:10:58 |
|
||
|
Проверка в триггере: какое из полей было изменено
|
|||
|---|---|---|---|
|
#18+
>> if update(field) .... Спасибо. >> Но: возвращает true, даже если значение не изменилось, но поле участвовало в запросе. Т.е. было 1, но в запросе написано updte .. set field=1 В моем случае это не страшно, но чтобы знать на будущее - может есть более универсальный способ ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2002, 18:14:36 |
|
||
|
Проверка в триггере: какое из полей было изменено
|
|||
|---|---|---|---|
|
#18+
Никак, имхо - тока проверкой if exists() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2002, 18:19:10 |
|
||
|
Проверка в триггере: какое из полей было изменено
|
|||
|---|---|---|---|
|
#18+
Может так: if exists(select * from inserted A, table B where A.field<>B.field and A.key=B.key) Здесь field - поле, изменение которого мы проверяем key - ключевое поле в таблице Или я не прав ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2002, 18:26:17 |
|
||
|
|

start [/forum/topic.php?fid=46&fpage=3411&tid=1820174]: |
0ms |
get settings: |
6ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
33ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
| others: | 192ms |
| total: | 324ms |

| 0 / 0 |
