|
Проверка на null
|
|||
---|---|---|---|
#18+
Всем привет! У меня такая проблема. Не могу проверить поле на null if (IsDBNull(rs("IDSaler") or rs("IDSaler")=-1) then Выдает такую ошибку Operator is not valid for type 'DBNull' and type 'Integer'. Поле IDSaler типа int. Подскажите плиз ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2004, 12:26 |
|
Проверка на null
|
|||
---|---|---|---|
#18+
nvn_Всем привет! if (IsDBNull(rs("IDSaler") or rs("IDSaler")=-1) then Скобки перепутал, попробуй так: if IsDBNull(rs("IDSaler")) or rs("IDSaler")=-1 then ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2004, 13:10 |
|
Проверка на null
|
|||
---|---|---|---|
#18+
Спасибо за ответ, действительно прогнал со скобками, правда ничего не изменило, как только убрал or rs("IDSaler")=-1 работает, как два условия - болт if IsDBNull(rs("IDSaler")) or rs("IDSaler")=-1получается, что одновременно нельзя проверять на нул и на значение? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2004, 13:54 |
|
Проверка на null
|
|||
---|---|---|---|
#18+
Можно воспользоваться конструкцией ,например: If condition [ Then ] [ statements ] [ ElseIf elseifcondition [ Then ] Причем в первом If должна быть проверка на DBNull.Value (IsDBNull), а во втором на определенное целое значение ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2004, 14:03 |
|
Проверка на null
|
|||
---|---|---|---|
#18+
nvn_Спасибо за ответ, действительно прогнал со скобками, правда ничего не изменило, как только убрал or rs("IDSaler")=-1 работает, как два условия - болт if IsDBNull(rs("IDSaler")) or rs("IDSaler")=-1получается, что одновременно нельзя проверять на нул и на значение? Одновременно не только можно, но и нужно. Правда тогда наверно ты опять перепутал - вместо OR надо AND ставить. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2004, 16:00 |
|
Проверка на null
|
|||
---|---|---|---|
#18+
Max Pro nvn_Спасибо за ответ, действительно прогнал со скобками, правда ничего не изменило, как только убрал or rs("IDSaler")=-1 работает, как два условия - болт if IsDBNull(rs("IDSaler")) or rs("IDSaler")=-1получается, что одновременно нельзя проверять на нул и на значение? Одновременно не только можно, но и нужно. Попробуй вместо rs("IDSaler")=-1 вот что: iif(not isdbnull(rs("idsaler")) and not isnothing(rs("idsaler")),rs("idsaler")=-1,false) Понимаешь, эта функция помогает избежать ситуации, при которой выражение rs("IDSaler")=-1 примет значение Is Null. В SQL-запросе такого извращения не требуется, так как язык SQL нормально переваривает значение Is Null. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2004, 16:13 |
|
Проверка на null
|
|||
---|---|---|---|
#18+
Всем спасибо за участие, не стал я мучаться, взял else if, все нормально хавает. Как будет больше времени, обязательно попробую вариант с isnothing. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.07.2004, 16:46 |
|
Проверка на null
|
|||
---|---|---|---|
#18+
Это как раз место для AndAlso - условный оператор. Код: plaintext
В этом случае, если первое выражение = False(null), то второе не будет проверятся вообще. Почитайте МСДН - bitwise operataros. Magnus ... |
|||
:
Нравится:
Не нравится:
|
|||
04.08.2004, 03:19 |
|
Проверка на null
|
|||
---|---|---|---|
#18+
Это как раз место для AndAlso - условный оператор. Только не AndAlso, а OrElse Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
04.08.2004, 07:40 |
|
|
start [/forum/topic.php?fid=17&fpage=127&tid=1354068]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
41ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
2ms |
others: | 344ms |
total: | 472ms |
0 / 0 |