![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Перебор строк в таблице
TDM © (2002-04-21 16:32:00)Добрый день. Не могу сделать перебор всех строк таблицы (Table) по какому нибудь определенному столбцу. Например в таблице 50 строчек и 5 столбцов, как мне получить список всех строчек первого столбца ??? Так как таблица сразу же отображается в DBGrid, то использования Table.Next или Table.RecNo приходится избегать - иначе получается прямо на экране прокрутка всей таблицы.
Не знаю что делать, помогите кто может.
Заранее спасибо.
777 (2002-04-22 00:48:00) [1]А индексы всё равно пригодятся.
по моему это реальный выход.
kaif (2002-04-21 20:46:00) [2]Чтобы Grid при перекрутке не отображало процесс, проще всего сделать так:
var
N: integer;
with Table do
begin
DisableControls
try
N := RecNo; //запоминаем номер строки в наборе
здесь прокрутка, например,
while (что-то) and not Eof do
Next;
потом возврат на исходную запись Table.RecNo := N
finally
EnableControls;
end;
end;
TDM (2002-04-21 19:37:00) [3]да, просто список.... Самое интересное что в свойстве Table есть счетчик строчек (записей) RecordCount, но явно указать на какую то определенную строку почему то нельзя. Придется придумывать что нибудь...... Спасибо всем за помощь.
777 (2002-04-21 18:57:00) [4]Извините, погорячился с Lookup :)
(TDM © требуется ведь только
получить список ВСЕХ значений?)
777 (2002-04-21 18:48:00) [5]Если просто возвращаться в исходное положение, то
можно таблицу проиндексировать, а после
перебора найти по индексам нужное значение.
Или использовать TTable.Lookup
Anatoly Podgoretsky (2002-04-21 17:49:00) [6]Можно отключить, а можно дополнительный набор данных иметь, по вкусу. Все зависит от того зачем нужно перебирать и что с перебором делать.
TDM (2002-04-21 17:43:00) [7]А можно как нибудь без прокрутки таблицы обойтись ??? Например отключить ее, перебрать записи а потом вернуть курсор в начальную позицию ???
Anatoly Podgoretsky (2002-04-21 16:50:00) [8]Ну если ты не хочешь использовать Table.Next или Table.RecNo то никак