Форум: "Базы";
Текущий архив: 2008.01.20;
Скачать: [xml.tar.bz2];
ВнизTFIBQuery возвращает только одну запись Найти похожие ветки
← →
dRake © (2007-09-05 18:15) [0]В таблице USERS дофига записей, но почему то возвращается всегда только одна :(
Запрашиваем:
Query.SQL.Text := "SELECT * FROM USERS";
Query.ExecQuery();
Смотрим:
with Query do
if RecordCount > 0 then
repeat
ShowMessage("Row!");
if not EoF
then Next
else Break;
until true;
← →
dRake © (2007-09-05 18:18) [1]В итоге Row! выводится только один раз :(
Транзакция на Query - Read commited, автостарт и коммит транзакции включены.
Все другие программы отрабатывают запрос нормально - показывают все записи.
← →
dRake © (2007-09-05 18:19) [2]
until true;
Опечатался - естесственно until false
← →
Германн © (2007-09-05 18:26) [3]А First не забыл?
← →
Reindeer Moss Eater © (2007-09-05 18:26) [4]щас выяснится, что опечатался не только, здесь, а там вообще не читать - там рыбу заворачивали.
А с методом Open вместо Exec все тоже самое?
← →
dRake © (2007-09-05 18:27) [5]GoToFirstRecord стоит True
← →
dRake © (2007-09-05 18:33) [6]>А с методом Open вместо Exec все тоже самое?
У меня (FIBPlus 6.45.0) такого метода у TFIBQuery нет, есть только Read-only свойство.
← →
Reindeer Moss Eater © (2007-09-05 18:34) [7]Ну а самому-то найти что-то похожее не судьба?
← →
dRake © (2007-09-05 18:38) [8]>Ну а самому-то найти что-то похожее не судьба?
Есть только разновидности Exec-a с параметрами, да и ExecProcedure.
В документации к FIB-у был пример выполнения запроса через TFIBQuery, который по логике кода возвращает больше одной записи - там использовался метод ExecQuery
← →
Reindeer Moss Eater © (2007-09-05 18:41) [9]Ну значит в каких-нить опциях квери стоит фетчить только одну запись
← →
dRake © (2007-09-05 18:45) [10]Никаких свойств на эту тему нет
← →
PEAKTOP © (2007-09-05 19:28) [11]А если так ?
try
Query.Open;
except
ShowMessage("cannot to open query ""+Query.SQL.Text+"" !");
end;
if Query.Active then
begin
Query.FetchAll;
if(Query.RecordCount > 0)then
begin
Query.First;
while(not Query.EOF)do
begin
ShowMessage("Row!");
Query.Next;
end;
end;
end;
← →
dRake © (2007-09-05 19:32) [12]Все всем спасибо - разобрался :)
Автокоммит транзакции в свойствах TFIBQuery надо было убрать :)
После выполнения запроса транзакция коммитилась и датасет запроса закрывался - и в нем оставалась та самая единственная первая зафетченная запись.
← →
Johnmen © (2007-09-05 20:55) [13]Атака ламеров
http://sql.ru/forum/actualthread.aspx?tid=470444
http://sql.ru/forum/actualthread.aspx?tid=470538
← →
Германн © (2007-09-06 02:20) [14]
> Johnmen © (05.09.07 20:55) [13]
>
> Атака ламеров
"Атака клонов" :)
← →
Anatoly Podgoretsky © (2007-09-06 09:55) [15]> Германн (06.09.2007 02:20:14) [14]
Атака клопов
← →
dRake © (2007-09-06 18:10) [16]Да не клоны :)
Просто траблу надо было решить срочно - вот и запостил сразу на два форума
← →
kaif © (2007-09-06 18:15) [17]А что, в FIB-ах после закрытия запроса остается одна зафетченная запись?
← →
Вася Правильный (2007-09-06 20:09) [18]
> датасет запроса закрывался - и в нем оставалась та самая
> единственная первая зафетченная запись.
и хде в [0] закрытие?
← →
jack128_ (2007-09-09 21:03) [19]
> и хде в [0] закрытие?
помино [0] в ветке еще несколько постов было. В частности - [12]
← →
Вася Правильный (2007-09-09 21:09) [20]
> jack128_ (09.09.07 21:03) [19]
так я [12] и цитировал
← →
jack128_ (2007-09-09 22:40) [21]> так я [12] и цитировал
Оп-с.
Прошу прощения.
Меня глючнуло, что ты кайфа цитируешь.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2008.01.20;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.05 c