Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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.041 c
2-1197993068
авыф
2007-12-18 18:51
2008.01.20
TMemoryStream


15-1197452705
DelphiN!
2007-12-12 12:45
2008.01.20
Алгоритм вычисления, максимального колличества пересечений времен


2-1198069448
kyn66
2007-12-19 16:04
2008.01.20
RecNo у TADsQuery


2-1197969187
rubikos
2007-12-18 12:13
2008.01.20
StrokeAndFillPath


2-1197896157
niKo
2007-12-17 15:55
2008.01.20
общие ресурсы





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский