Форум: "Начинающим";
Текущий архив: 2008.06.08;
Скачать: [xml.tar.bz2];
ВнизSQL in Delphi Найти похожие ветки
← →
Гена_88 (2008-05-15 17:02) [0]Помогите разобраться с SQL запросом в дельфи.
Делаю запрос :
SELECT COUNT (ID) cnt, ID FROM TABLE WHERE NAME = :N GROUP BY ID
передаю параметр N = "asdasdasd"
Если такой записи нет, то он отображает в колонке "CNT" null а не 0.
Подскажите что не так?
← →
Сергей М. © (2008-05-15 17:16) [1]Делфи здесь ни причем.
Для Парадокса (да и для большинства других распространенных СУБД) null-результат совершенно нормален.
А чем тебе он помешал ?
На клиентской стороне можно завести вычисляемое поле, в котором null менять на 0.
← →
clickmaker © (2008-05-15 17:17) [2]дело в гроуп бай - возвращает пустой набор, если записи нет
← →
Гена_88 (2008-05-15 17:18) [3]А как определить, что значение null при получении поля путем
FieldByname("CNT").AsInteger ??? Возвращает значение 484232 что то типа того ...
← →
Сергей М. © (2008-05-15 17:19) [4]А еще точнее, этот null, что ты видишь, - есть скорее всего реакция конкретного просмотрщика, получившего результатом твоего запроса пустой набор данных.
← →
Гена_88 (2008-05-15 17:21) [5]
> дело в гроуп бай - возвращает пустой набор, если записи
> нет
Помогите переписать запрос, плиз :(
← →
Сергей М. © (2008-05-15 17:22) [6]
> как определить, что значение null при получении поля путем
> FieldByname("CNT").AsInteger ?
Пнрежде чем этим озаботиться ты должен был убедиться в выполнении условия MyQuery.RecordCount > 0. Если это условие не выполняется (а оно и не выполняется), рассуждения в [3] лишены смысла.
← →
Гена_88 (2008-05-15 17:24) [7]Да, RecordCount не выполняется .... Что делать помогите плиз :( домой уйти не могу ...
← →
Сергей М. © (2008-05-15 17:24) [8]
> Гена_88 (15.05.08 17:21) [5]
Попробуй убрать GROUP BY clause
← →
Гена_88 (2008-05-15 17:26) [9]
> Попробуй убрать GROUP BY clause
Без Group by не работает ... "Invalid token"
← →
Ega23 © (2008-05-15 17:28) [10]
> Без Group by не работает ... "Invalid token"
Тебе какой результат запроса нужен?
← →
Гена_88 (2008-05-15 17:32) [11]Если записей нет, то должно возвратить "0" но не null т.к из дельфи обращаться не получается ...
← →
clickmaker © (2008-05-15 17:35) [12]FieldByname("CNT").IsNull ?
← →
Гена_88 (2008-05-15 17:41) [13]Решение найдено, всем спасибо ... if Query.EOF then CNT := 0 :))))
← →
Ega23 © (2008-05-15 17:47) [14]TDataSet.IsEmpty
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.06.08;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.054 c