powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Процедура проверка на null
10 сообщений из 10, страница 1 из 1
Процедура проверка на null
    #38841182
Sashaua
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа, подскажите.
Есть вот такая простенькая процедура
Код: sql
1.
2.
3.
4.
5.
6.
7.
begin
 for
 select count_ from table  where id_model=:id_model into :count_
 do begin
 if (:count_ is null ) then бла...бла
  suspend;
end


почему если по условию выборки
Код: sql
1.
 select count_ from table  where id_model=:id_model 

нет записям удовлетворяющим условия проверка
Код: sql
1.
 if (:count_ is null ) then бла...бла 

не работает?
И как можно в таком случае сделать правильную проверку.
За ранее спасибо
...
Рейтинг: 0 / 0
Процедура проверка на null
    #38841184
Фотография zirra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sashaua> почему если по условию выборки
> select count_ from table where id_model=:id_model
> нет записям удовлетворяющим условия проверка
> if (:count_ is null ) then бла...бла
> не работает?
Записей нет = 0 , а не null ...

--
Vladimir A.Bakhvaloff
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Процедура проверка на null
    #38841188
Sashaua
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zirraSashaua> почему если по условию выборки
> select count_ from table where id_model=:id_model
> нет записям удовлетворяющим условия проверка
> if (:count_ is null ) then бла...бла
> не работает?
Записей нет = 0 , а не null ...

--
Vladimir A.Bakhvaloff


если записей нет ничего не возвращается и проверка не срабатывает.
...
Рейтинг: 0 / 0
Процедура проверка на null
    #38841190
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SashauaЕсть вот такая простенькая процедура
И даже в ней ты не способен посчитать на пальцах begin-ы и end-ы?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Процедура проверка на null
    #38841191
Sashaua
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

Уже разобрался. Да действительно неправильно.
ПС. на самом деле процедура сложнее это маленькая часть которая работала неправильно.
Всем спасибо за помощь.
...
Рейтинг: 0 / 0
Процедура проверка на null
    #38841243
Фотография roadster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sashauaесли записей нет ничего не возвращается и проверка не срабатывает.если записей, отвечающих условию нет, то их количество будет равно 0, проверка в данном случае лишняя, потому как всегда будет false.
для простоты восприятия можно взять пример с пирожными в холодильнике. тебя мама попросила посчитать (это count) пирожные в холодильнике (холодильник - это БД) на второй полке сверху (это таблица), ты открываешь холодильник (коннектишься), смотришь сколько пирожных на второй полке сверху (это select с условием where вкусняшка = пирожное) и видишь что на второй полке сверху нет пирожных. что ты скажешь маме? что на второй полке сверху неопределённое количество пирожных (null - это неопределённость)? если ты так скажешь, то тебе либо 1 годик, либо у тебя большие проблемы со счётом и в школе у тебя двойка по математике.
...
Рейтинг: 0 / 0
Процедура проверка на null
    #38841282
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
roadster,

вообще-то у человека там не агрерующая функция count(), а извлечение поля count_ (название кстати дурацкое), так что в ней вполне может быть null

Только вот если "нет записям удовлетворяющим условия проверка", то тело цикла не разу не выполнится, поэтому и условие проверяться не будет.
...
Рейтинг: 0 / 0
Процедура проверка на null
    #38841336
NikolayV81
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисroadster,

вообще-то у человека там не агрерующая функция count(), а извлечение поля count_ (название кстати дурацкое), так что в ней вполне может быть null

Только вот если "нет записям удовлетворяющим условия проверка", то тело цикла не разу не выполнится, поэтому и условие проверяться не будет.

т.е. у него по факту у него не очень хорошо выйдет, если "count_" для нескольких моделей будет null
В принципе "работает неправильно" тут неверный термин на мой взгляд.
...
Рейтинг: 0 / 0
Процедура проверка на null
    #38841337
Sashaua
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисroadster,

вообще-то у человека там не агрерующая функция count(), а извлечение поля count_ (название кстати дурацкое), так что в ней вполне может быть null

Только вот если "нет записям удовлетворяющим условия проверка", то тело цикла не разу не выполнится, поэтому и условие проверяться не будет.
Верно, я извлекаю значение поля count_ (не знал как его по нормальному назвать :( ), и оно может быть null.
Разобрался где начудил, почему тело цикла не разу не выполнялось.
Всем спасибо за помощь и объяснения.
have a nice day
...
Рейтинг: 0 / 0
Процедура проверка на null
    #38841505
Фотография roadster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисвообще-то у человека там не агрерующая функция count(), а извлечение поля count_ой, точно.
прошу прощения.
ЗЫ тогда coalesce нужно
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Процедура проверка на null
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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