Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.01.29;
Скачать: CL | DM;

Вниз

Триггер не ловит Null вроде   Найти похожие ветки 

 
Vemer ©   (2004-01-03 17:24) [0]

Здравствуйте.
Есть таблица с двумя полями, POLE(Int) и Ctrl(SmallInt) и триггер Before Update типа:
IF (new.Pole <> old.Pole) then
new.ctrl = old.Ctrl + 1


То есть триггер отмечает в CTRL изменения POLE, но путем несложных экспериментов я установил, что триггер не ловит изменения с NULL и на NULL.
В принципе это можно победить, забивая в поле изначально какие-то значения.
Вопрос - можно ли это победить как-нибудь проще, по другому.


 
jack128 ©   (2004-01-03 17:40) [1]

Тригер, то ловит, не ловит твое условие.
(null <> 10) - это false


 
Rad ©   (2004-01-03 20:35) [2]

Надо проверять new.Pole IS NULL


 
Vemer ©   (2004-01-03 23:37) [3]

Всем спасибо.
Триггер слишком громоздкий получаеться (проверка 3-х условий).
Поля текстовые, шифрованные, заполняються не напрямую поэтому просто сделал надпись "нет" когда нет значения.


 
Jack128 ©   (2004-01-04 06:30) [4]


> просто сделал надпись "нет" когда нет значения
Не есть это хорошо. Вдруг нужно будет в базу слово "нет" запихнуть ;-)
А вообще в чем проблема, то?
Сложно вместо IF (new.Pole <> old.Pole) then
написать
if ((new.Pole is null and old.Pole is not null) or
(new.Pole is not null and old.Pole is null) or
(new.Pole <> old.Pole)) then


 
Vemer ©   (2004-01-04 15:10) [5]

Спасибо за пример, где-нибудь пригодиться (хотя проще будет поставить Default какой-нибудь).
Для 12 полей будет громоздко(IMHO), а запихивать "Нет" в телефоны и адреса навряд-ли придеться + с "нет" даже лучше смотриться. Хотя "громоздко" понятие тоже растяжимое.



Страницы: 1 вся ветка

Текущий архив: 2004.01.29;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.02 c
14-93679
termos
2004-01-09 09:43
2004.01.29
Закрытие портов на локальной машине


3-93376
Grihan
2003-12-31 12:07
2004.01.29
TIBTable.CreateTable


1-93451
ИМХО
2004-01-16 07:55
2004.01.29
Как оптимизировать работу с типизированным файлом?


1-93490
YuRock
2004-01-15 14:18
2004.01.29
Работа с потоками в Delphi с использованием VCL


9-93319
Dead Moroz
2003-07-01 03:42
2004.01.29
Движок для текстового 3D_Shooter-а