Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.06.20;
Скачать: CL | DM;

Вниз

IBQuery1.RecordCount=0 или 1???   Найти похожие ветки 

 
Fishka   (2002-05-27 09:52) [0]

Необходимо подсчитать количество записей, возвращаемых запросом.
Но если даже записей > 1 IBQuery1.RecordCount выдает 1. Как это понимать?


 
Alexandr ©   (2002-05-27 09:54) [1]

IBQuery.FetchAll сначала сделай
или IBDataSet используй вместо IBQuery

не знаю я точно этих IBX.

FIBPlus Rulezzzz


 
WellSlava ©   (2002-05-27 10:07) [2]

Вообще-то? мне кажется, что это глюк Delphi. Я у себя замечал, что RecordCount работает не корректно. Если этот запрос подключен к DBGrid, или к DBEdit, то считает вроде правильно, а, если нет, то может выдавать все что угодно. Я пользуюсь запросом Select Count(*) From...


 
jonik pegas ©   (2002-05-27 11:23) [3]

Это не глюк Delphi, так задумано :-)
RecordCount вероятно выдает количество записей хранящихся во внутреннем буфере. Приходится Select Count(*) From... хотя количество в многопользовательской системе может и не совпасть


 
Fishka   (2002-05-27 11:49) [4]

Alexandr © , WellSlava © , jonik pegas ©
Спасибо за ответы и советы.
Но если большое количество записей, то делать еще один запрос Select Count(*) From ... не очень хочется.


 
Deniz ©   (2002-05-27 12:14) [5]

Смотри > Alexandr © (27.05.02 09:54) IBQuery.FetchAll

>WellSlava © (27.05.02 10:07)
Видится, что у вас не совсем хорошо с IBX? Хотя в реальности, IMHO, работает все правильно(у меня update IBX6.3).


 
Леха_   (2002-05-27 12:46) [6]

написали же уже вверху FetchAll прочитает все данные и установит провильное значение RecordCount можно извращенно Last(при этом текущая запись сместится в конец)


 
kaif ©   (2002-05-27 13:19) [7]

Правильно делать FetchAll. Если же кол-во записей настолько велико, что есть даже сомнение в SELECT COUNT(*), то FetchAll тогда тем более неправильно делать. И что же тогда делать, я вообще не знаю. Универсального решения нет. Для маленьких таблиц FetchAll (или Last) идеальное решение, для больших - кроме SELECT COUNT(*) ничего не придумаешь.


 
Леха_   (2002-05-27 13:30) [8]

если пользователю выдается большая таблица целиком значит что то не в порядке с логикой(это не касается инструментов работы с данными напрямую)



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

Текущий архив: 2002.06.20;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.012 c
1-65162
Kostik_n
2002-06-06 15:37
2002.06.20
Цвет в ячейках StringGrid


4-65290
Frigad
2002-04-21 19:37
2002.06.20
Как с помощью API сделать форму поверх остальных?


1-65172
Tahion
2002-06-06 20:15
2002.06.20
Как сделать невозможным копирование программы на другой компью...


3-64946
ЮРИЙ_К
2002-05-27 15:55
2002.06.20
Строки в DBCtrlGrid разными цветами.


7-65256
vet
2002-03-21 11:39
2002.06.20
Мастера!!!!!!! Пожалуйста!!!!! (работа с модемом в voice-режиме)