Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

TFIBQuery возвращает только одну запись [D7]


Страницы:   1 2

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


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо