![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
RecordSet как пройтись циклом 2 раза?
gedevan © (2016-01-10 01:19:00)
while not ADOQuery.Recordset.Eof do
begin
// перейдём к следующей записи
ADOQuery.Recordset.MoveNext;
end;
ADOQuery.Recordset.MoveFirst;
while not ADOQuery.Recordset.Eof do
begin
// перейдём к следующей записи
ADOQuery.Recordset.MoveNext;
end;
хочу пройтись по выборке циклом 2 раза. Но на этой строке ADOQuery.Recordset.MoveFirst; программа вылетает и говорит что EOF уже равен истине или строка отсутствует. Так как же мне снова вернуться к началу и пробежаться еще раз?
Лори (2016-01-11 12:09:00) [1]Зачем? С первого раза нельзя сделать то что вы делаете? Странно, может логика программы спроектирована не так?
sniknik (2016-01-10 13:21:00) [2]повторюсь...
> и еще совет - 1: пиши понятнее, без мусора. 2: проверяй на простых, просто таки элементарных запросах. 3: используй ADODataSet.
тут твой "пафос" обращения прямо к объекту есть "мусор", раз уж используешь "обертку", причем двойную какой является ADOQuery.
используешь объект, пользуйся его методами, типа - ADODataSet1.First;
но вообще конечно, см [1],
ADODataSet1.CursorType:= ctDynamic; или := ctKeyset;
Open только после этого;
кгшзх (2016-01-10 11:13:00) [3]курсор форвард оунли?