Поиск:

Ответ в темуСоздание новой темы Создание опроса
> ADOQuery.Recordset, проблема в получении результата запроса 
:(
    Опции темы
ne0n
Дата 15.10.2009, 20:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


PlayBoy
**


Профиль
Группа: Участник
Сообщений: 733
Регистрация: 5.8.2005
Где: Н.Новгород

Репутация: нет
Всего: 11



Доброго времени суток! Сразу скажу что с ADO вообще почти не работал, поэтому если задаю глупый вопрос не пинайте)

в общем подключаюсь к MS SQL Serever'y отправляю через ADOQuery запрос, теперь надо обработать результат запроса: пытаюсь сделать это так:
Код

//qry1.Recordset.MoveFirst;
for i:=0 to qry1.Recordset.RecordCount - 1  do
begin
  ShowMessage(qry1.Recordset.Fields.Item[0].Value);
  qry1.Recordset.MoveNext;
end;


получаю ошибку о том что значение EOF либо BOF - true; вообще не понятно по чему такое может быть....
самое интересное если переписать этот код таким образом :
Код

qry1.Recordset.MoveLast;
for i:=0 to qry1.Recordset.RecordCount - 1  do
begin
  ShowMessage(qry1.Recordset.Fields.Item[0].Value);
  qry1.Recordset.MovePrevious;
end;


то все выполнится корректно smile 

Хотелось бы понять что я делаю не так, заранее спасибо.

PM MAIL ICQ   Вверх
ТоляМБА
Дата 15.10.2009, 21:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Котэ
***


Профиль
Группа: Завсегдатай
Сообщений: 1607
Регистрация: 15.12.2004

Репутация: 3
Всего: 252



ne0n, а если:

Код
qry1.Recordset.MoveFirst;
while not qry1.Recordset.Eof do
begin
  ShowMessage(qry1.Recordset.Fields.Item[0].Value);
  qry1.Recordset.MoveNext;
end;

PM   Вверх
ne0n
Дата 15.10.2009, 22:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


PlayBoy
**


Профиль
Группа: Участник
Сообщений: 733
Регистрация: 5.8.2005
Где: Н.Новгород

Репутация: нет
Всего: 11



ТоляМБА,  я так тоже пробовал, если не ошибаюсь цикл выполнялся всего 1 раз
PM MAIL ICQ   Вверх
Данкинг
Дата 15.10.2009, 22:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 35
Всего: 130



ne0n, а что такое .MoveNext ? Если просто .Next попробовать?


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
ne0n
Дата 15.10.2009, 22:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


PlayBoy
**


Профиль
Группа: Участник
Сообщений: 733
Регистрация: 5.8.2005
Где: Н.Новгород

Репутация: нет
Всего: 11



Цитата(Данкинг @  15.10.2009,  22:11 Найти цитируемый пост)
ne0n, а что такое .MoveNext ? Если просто .Next попробовать?

ну MoveNext это вроде как переход на следующею запись.
и вправду если сделать так, то все работает
Код

 for i:=0 to qry1.RecordCount - 1  do
  begin
    ShowMessage(qry1.Fields[0].AsString);
    qry1.Next;
  end;


но всеранво не понятно почему через Recordset не хочет...

адд: опечатался немного в коде

Это сообщение отредактировал(а) ne0n - 15.10.2009, 23:04
PM MAIL ICQ   Вверх
Данкинг
Дата 15.10.2009, 22:41 (ссылка)   | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 35
Всего: 130



Цитата(ne0n @  15.10.2009,  23:32 Найти цитируемый пост)
но всеранво не понятно почему через Recordset не хочет... 

Не знаю. А тебе не всё равно? smile Я до сегодняшнего дня даже не знал о RecordSet.MoveNext. smile 


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
ne0n
Дата 15.10.2009, 23:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


PlayBoy
**


Профиль
Группа: Участник
Сообщений: 733
Регистрация: 5.8.2005
Где: Н.Новгород

Репутация: нет
Всего: 11



Цитата(Данкинг @  15.10.2009,  22:41 Найти цитируемый пост)
Не знаю. А тебе не всё равно?


ну в контексте моей задачи - все равно) 

PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0503 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.