Перемещение по набору данных

Перемещение по набору данных требует установки указателя текущей записи внутри курсора (извлеченных данных). Для перемещения по объекту Recordsetиспользуют пять следующих методов:

MoveFirst - перемещение указателя к первой записи в наборе.

MoveNext - перемещение указателя к следующей записи в наборе.

MovePrevious - перемещение указателя к предыдущей записи в наборе.

MoveLasc - перемещение указателя к последней записи в наборе.

Move х[, начало]  - перемещение указателя на заданное в аргументе число записей, где х — значение типа Long, определяющее количество записей, на которые требуется сместиться, а начало— значение типа String или Variant.

При перемещении по записям постоянно нужно проверять два места, используя булевы свойства BOF (beginning of file – первая запись) и EOF (end of file – последняя запись).

Введите эту процедуру в стандартный модуль. В окне Immediate введите название процедуры и нажмите Enter.

Названия клиентов будут в цикле выводиться в окно Immediate.

Оператор Do Until проверяет истинность свойства EOF (конец набора записей), и как только оно станет истинным, прерывает выполнение цикла. В приведенном примере использованы два метода: MoveFirst и MoveNext. Применение первого метода до начала цикла гарантирует установку указателя в первую запись, так что нет никакой необходимости проверять свойство BOF. В теле же цикла используется метод MoveNext для смещения указателя к следующей записи набора данных, после чего выполнение цикла продолжается.

Объект Recordset содержит коллекцию Fields, в которой находится по одному объекту Field для каждого поля данных. Существует масса способов обращения к данным. Например, можно использовать объект Field следующим образом:

rst.Fields "Клиент" .Value

В качестве альтернативы можно использовать индексное значение поля. Если точно известно, что столбец Клиент является вторым в наборе записей по счету, к тому же результату приведет и следующее обращение:

Rst(1)

При использовании индексных значений помните, что индекс самого левого столбца равен нулю. Следовательно, индексом второго столбца будет единица, третьего — двойка и т.д.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: