![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TFIBQuery возвращает только одну запись [D7]
dRake © (2007-09-05 18:15:00)В таблице 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;
jack128_ (2007-09-09 22:40:00) [1]> так я [12] и цитировал
Оп-с.
Прошу прощения.
Меня глючнуло, что ты кайфа цитируешь.
Вася Правильный (2007-09-09 21:09:00) [2]
> jack128_ (09.09.07 21:03) [19]
так я [12] и цитировал
jack128_ (2007-09-09 21:03:00) [3]
> и хде в [0] закрытие?
помино [0] в ветке еще несколько постов было. В частности - [12]
Вася Правильный (2007-09-06 20:09:00) [4]
> датасет запроса закрывался - и в нем оставалась та самая
> единственная первая зафетченная запись.
и хде в [0] закрытие?
kaif (2007-09-06 18:15:00) [5]А что, в FIB-ах после закрытия запроса остается одна зафетченная запись?
dRake (2007-09-06 18:10:00) [6]Да не клоны :)
Просто траблу надо было решить срочно - вот и запостил сразу на два форума
Anatoly Podgoretsky (2007-09-06 09:55:00) [7]> Германн (06.09.2007 02:20:14) [14]
Атака клопов
Германн (2007-09-06 02:20:00) [8]
> Johnmen © (05.09.07 20:55) [13]
>
> Атака ламеров
"Атака клонов" :)
Johnmen (2007-09-05 20:55:00) [9]Атака ламеров
http://sql.ru/forum/actualthread.aspx?tid=470444
http://sql.ru/forum/actualthread.aspx?tid=470538
dRake (2007-09-05 19:32:00) [10]Все всем спасибо - разобрался :)
Автокоммит транзакции в свойствах TFIBQuery надо было убрать :)
После выполнения запроса транзакция коммитилась и датасет запроса закрывался - и в нем оставалась та самая единственная первая зафетченная запись.
PEAKTOP (2007-09-05 19:28:00) [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 18:45:00) [12]Никаких свойств на эту тему нет
Reindeer Moss Eater (2007-09-05 18:41:00) [13]Ну значит в каких-нить опциях квери стоит фетчить только одну запись
dRake (2007-09-05 18:38:00) [14]>Ну а самому-то найти что-то похожее не судьба?
Есть только разновидности Exec-a с параметрами, да и ExecProcedure.
В документации к FIB-у был пример выполнения запроса через TFIBQuery, который по логике кода возвращает больше одной записи - там использовался метод ExecQuery
Reindeer Moss Eater (2007-09-05 18:34:00) [15]Ну а самому-то найти что-то похожее не судьба?
dRake (2007-09-05 18:33:00) [16]>А с методом Open вместо Exec все тоже самое?
У меня (FIBPlus 6.45.0) такого метода у TFIBQuery нет, есть только Read-only свойство.
dRake (2007-09-05 18:27:00) [17]GoToFirstRecord стоит True
Reindeer Moss Eater (2007-09-05 18:26:00) [18]щас выяснится, что опечатался не только, здесь, а там вообще не читать - там рыбу заворачивали.
А с методом Open вместо Exec все тоже самое?
Германн (2007-09-05 18:26:00) [19]А First не забыл?
dRake (2007-09-05 18:19:00) [20]
until true;
Опечатался - естесственно until false