Вниз
Скачать: CL | DM;

Как определить есть ли в 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 вообще не рекомендуется использовать в приложениях клиент-сервер, потому что если в таблице пару миллионов записей, можно очень долго ждать окончание этого оператора.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.006 c
14-8974
РУС
2001-12-12 18:06
2002.02.04
УРА!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


6-8969
Hawk
2001-11-11 20:20
2002.02.04
Разрыв связи между TServerSocket и TClienSocket


1-8822
Аркадий
2002-01-20 00:27
2002.02.04
Физические и логические диски


3-8796
roottim
2002-01-06 12:36
2002.02.04
DbGrid


3-8799
otari
2002-01-06 23:15
2002.02.04
никто не знает INTERBASE?




   Наверх