|
|
|
or в IB короткий или длинный
|
|||
|---|---|---|---|
|
#18+
ну ладно, не будем педалировать, а то Мимопроходяший обидится и не будет больше тут появляться... принимаю заказы на удаление постингов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 15:23 |
|
||
|
or в IB короткий или длинный
|
|||
|---|---|---|---|
|
#18+
Ну, бывает и на меня проруха Не обратил внимание на OR ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 15:28 |
|
||
|
or в IB короткий или длинный
|
|||
|---|---|---|---|
|
#18+
СПАСИБО ВСЕМ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 15:32 |
|
||
|
or в IB короткий или длинный
|
|||
|---|---|---|---|
|
#18+
Я так понимаю что под NULL везде подразумевали UNKNOWN? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 16:00 |
|
||
|
or в IB короткий или длинный
|
|||
|---|---|---|---|
|
#18+
GoldЯ так понимаю что под NULL везде подразумевали UNKNOWN? Они синонимичны. Даже стандарт не в состоянии внятно обозначить их различие ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 16:06 |
|
||
|
or в IB короткий или длинный
|
|||
|---|---|---|---|
|
#18+
Вот вы мне скажите, мне надо такое вот написать в триггере: Код: plaintext 1. Оно будет правильно работать или этого никто не гарантирует и лучше писать Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 17:05 |
|
||
|
or в IB короткий или длинный
|
|||
|---|---|---|---|
|
#18+
имхо, 1) если NEW.ID будет нулл, то эксепшн не выскочит, даже если OLD.ID тоже будет нулл, потому что любое сравнение с нуллом дает неправду... 2) если UPDATING будет нулл, то тоже не выскочит - а оно тебе так и надо. вобщем, все равно как писать, только нужно иметь ввиду ситуацию 1) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 17:27 |
|
||
|
or в IB короткий или длинный
|
|||
|---|---|---|---|
|
#18+
UPDATING не может быть NULL/UNKNOWN, а вобще ты прав, оно по любому правильно работать будет, так как ID у меня объявлен как NOT NULL... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2004, 17:40 |
|
||
|
or в IB короткий или длинный
|
|||
|---|---|---|---|
|
#18+
автортак как ID у меня объявлен как NOT NULL... В триггере он тем не менее может быть NULL'ом, так что как он объявлен - не суть важно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 09:44 |
|
||
|
or в IB короткий или длинный
|
|||
|---|---|---|---|
|
#18+
Ну OLD-значение в триггере не может быть NULL, а NEW-значение хоть и может, но сервер то ругнёться. А вобще вы бы какой механизм посоветовали для проверки неизменности значения поля. Я иногда использую IF (COALESCE(OLD.FIELD,'+-=')<>COALESCE(NEW.FIELD,'=-+')), но это слишком длинно получается когда много полей :-/ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 13:04 |
|
||
|
or в IB короткий или длинный
|
|||
|---|---|---|---|
|
#18+
авторНу OLD-значение в триггере не может быть NULL Еще как может. Посмотри на OLD.ID в BEFORE INSERT OR UPDATE триггере в момент вставки... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 13:21 |
|
||
|
or в IB короткий или длинный
|
|||
|---|---|---|---|
|
#18+
dimitrЕще как может. Посмотри на OLD.ID в BEFORE INSERT OR UPDATE триггере в момент вставки... Так вроде разговор про update? Неужели если field not null при update OLD.Field может быть NULL? ------------------------ С уважением, Denis Uskov ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 13:39 |
|
||
|
or в IB короткий или длинный
|
|||
|---|---|---|---|
|
#18+
авторТак вроде разговор про update? Неужели если field not null при update OLD.Field может быть NULL? Вроде как разговор уже вышел за рамки UPDATE ;-) Ответ на твой вопрос: по-хорошему нет, не может. Но может по-плохому, если ты в этом триггере присвоил NULL в OLD.ID. К сожалению, сервер это допускает. И более того, это может быть причиной порчи БД. Т.к. присвоение идет во временный буфер записи, а не в таблицу, NOT NULL не проверяется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2004, 13:53 |
|
||
|
or в IB короткий или длинный
|
|||
|---|---|---|---|
|
#18+
dimitrНо может по-плохому, если ты в этом триггере присвоил NULL в OLD.ID Теоритически наверное да, но ... Не я такими вещами не занимаюсь и другим не советую, да и зачем это? Не вижу примеров для работы с OLD.ID таким образом. ------------------------ С уважением, Denis Uskov ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2004, 09:07 |
|
||
|
or в IB короткий или длинный
|
|||
|---|---|---|---|
|
#18+
При благополучном стечвении обстоятельств, например много выпивки, мало закуски, багатая фантазия и отсутствие времени(желания) доделвать завтра можно и не такое придумать. Правда как правило на утро это лечиться :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2004, 15:32 |
|
||
|
or в IB короткий или длинный
|
|||
|---|---|---|---|
|
#18+
Ну у меня есть идея зачем это может быть нужно. Допустим вам жалко объявлять новую переменную, но надо где-то сохранить промежуточное значение в универсальном триггере например при вставке. Вот и можно в переменную OLD положить ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2004, 15:47 |
|
||
|
or в IB короткий или длинный
|
|||
|---|---|---|---|
|
#18+
fedd: автор потому что любое сравнение с нуллом дает неправду Не совсем верно. Будет не FALSE а UNKNOWN (NULL как угодно), а вот в IF пойдет на ELSE не потому что FALSE а потому что не TRUE. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2004, 17:11 |
|
||
|
or в IB короткий или длинный
|
|||
|---|---|---|---|
|
#18+
Что-то я торможу :-( feddпотому что любое сравнение с нуллом дает неправду Это как? Код: plaintext 1. 2. 3. 4. 5. Куда пойдет обработка? ------------------------ С уважением, Denis Uskov ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2004, 07:30 |
|
||
|
|

start [/forum/topic.php?fid=40&gotonew=1&tid=1579033]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
24ms |
get topic data: |
7ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 202ms |
| total: | 299ms |

| 0 / 0 |
