Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.04;
Скачать: [xml.tar.bz2];




Вниз

Как определить есть ли в DataSet записи? 


kengura   (2002-01-08 12:22) [0]

Доброго времени суток. Когда необходимо определить есть ли записи в DataSet или нет обычно использую что-то вроде:
if Query.RecordCount > 0 then ....
Однако где-то прочел, что RecordCount вычисляется путем прямого пересчета всех записей на клиенте. Мне же это собственно незачем. Может есть какой-то более оптимальный способ узнать пуст DataSet или нет?



Alexandr   (2002-01-08 12:26) [1]

замени в своем Query
select <бля-бля-бля>
from.....

на
select count(*)
from......

в большинстве случаев этот модифицированный запрос вернет тебе
кол-во записей в твоем запросе.
А вообще-то иногда лучше именно RecordCount использовать.
Тут как-то эта проблема очень подробно обсуждалась.



alexts   (2002-01-08 12:36) [2]

Можно поробовать еще if exists(select * from ...) then select 1 else select 0



Alexandr   (2002-01-08 12:47) [3]

2Alexts где попробовать?



petr_v_a   (2002-01-08 12:55) [4]

Query.isempty



Romkin   (2002-01-08 13:32) [5]

if not(EOF and BOF) then notEmpty := true
Универсально, для любого потомка TDataSet - если одновременно начало и конец таблицы, она пустая



oname   (2002-01-08 13:34) [6]

Точно так-же можно использовать Query.Eof. A Query.RecordCount вообще не рекомендуется использовать в приложениях клиент-сервер, потому что если в таблице пару миллионов записей, можно очень долго ждать окончание этого оператора.




Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.04;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.023 c
1-8861            NLO                   2002-01-18 12:36  2002.02.04  
Как получить иконку зарегистрированного расширения


1-8839            Tym                   2002-01-21 00:47  2002.02.04  
обращение к функциям Mathcad из Delphi!


1-8834            Ajax                  2002-01-15 09:31  2002.02.04  
Изменение свойств KOL формы


7-9008            Vitaliy Jungle        2001-10-13 05:42  2002.02.04  
Гребаный MSDOS


1-8881            VladimirL             2002-01-15 18:47  2002.02.04  
Во время работы не меняются данные на форме