Шаг 173.
VBA в MSExcel.
Работа с внешними базами данных. Методы и свойства объекта Recordset
На этом шаге мы перечислим основные методы и свойства этого объекта.
Приведем наиболее часто используемые методы и свойства объекта Recordset, позволяющие анализировать, редактировать записи базы данных. Способ их
применения будет показан на примере простого приложения для работы с базой данных, разработанного на следующем шаге.
Методы объекта Recordset.
- AddNew - создает и добавляет новую запись. После внесения изменений в новую запись следует вызвать метод Update для сохранения изменений и
добавления записи в объект Recordset. До вызова метода Update изменения в базу данных не заносятся.
- Clone - создает копию объекта Recordset. Синтаксис:
Set Копия = Оригинал.Clone
- Close - закрывает открытый объект доступа к данным.
- Delete - удаляет текущую запись в обновляемом объекте Recordset.
- Edit - копирует текущую запись из обновляемого объекта Recordset в буфер копирования для последующего изменения. После внесения изменений в
новую запись следует вызвать метод Update для сохранения изменений и добавления записи в объект Recordset.
- MoveFirst, MoveLast, MoveNext и MovePrevious - делает текущей первую, последнюю, следующую или предыдущую запись объекта Recordset соответственно.
- FindFirst, FindLast, FindNext и FindPrevious - находит первую, последнюю, следующую или предыдущую запись соответственно, удовлетворяющую заданным условиям,
и делает эту запись текущей записью.Синтаксис:
{FindFirst | FindLast | FindNext | FindPrevious} Criteria
Criteria — это выражение (или переменная типа String), используемая для поиска записи. Приведем несколько примеров критериев:
"[Оценка] > 3"
"[Фамилия] = 'Петров' "
"[Оценка] =5 AND [Предмет] = 'Информатика' "
"[ДатаЭкзамена] = #17/06/13#"
- Seek - находит в индексированном объекте Recordset типа Table запись, удовлетворяющую заданным условиям для текущего индекса, и делает
эту запись текущей. Синтаксис:
Seek comparison, key1, key2 . . . key13
Аргументы:
- comparison — допустимые значения: "<", "<=", "=", ">=" или ">".
- key1, key2, ..., key13 — одно или несколько значений ключевых полей в текущем индексе объекта Recordset.
- GetRows - загружает строки объекта Recordset в массив. Синтаксис:
Set ИмяМассива = НаборЗаписей.GetRows (NumRows)
где NumRows — число строк.
- Update - сохраняет вставки и изменения, произведенные в объекте Recordset при помощи методов AddNew и Edit.
- CancelUpdate - отменяет все изменения объекта Recordset, выполненные при помощи методов AddNew и Edit.
Свойства объекта Recordset.
- BOF - возвращает значение True, если указатель текущей записи расположен перед первой записью набора записей, и значение False, если
указатель текущей записи расположен на первой записи набора или на любой записи после нее.
- EOF - возвращает значение True, если указатель текущей записи расположен после последней записи набора, и значение False, если указатель
текущей записи расположен на последней записи набора или на любой записи перед ней.
- Bookmark - устанавливает или возвращает закладку, которая однозначно определяет текущую запись в объекте Recordset. Обычно используется для
возврата в объект Recordset на определенное место, без указания конкретного адреса записи.
- NoMatch - Возвращаемые значения: True, если нужная запись не найдена, и False в противном случае .
- RecordCount - возвращает число записей, к которым был осуществлен доступ в объекте Recordset. Свойство RecordCount не показывает,
сколько записей содержится в объекте Recordset до обращения ко всем записям. После обращения к последней записи набора значение свойства RecordCount
становится равным полному числу не удаленных записей в объекте Recordset. Для принудительного обращения к последней записи следует вызвать для объекта
Recordset метод MoveLast.
- Filter - задает или возвращает значение, определяющее записи, которые будут включены в открываемый объект Recordset.
При указания критерия фильтрации названия полей заключаются в квадратные скобки. Приведем несколько примеров критериев:
[Оценка] = 5
[Оценка] >= 3
[Оценка] =5 AND [Предмет] = "Информатика"
[Оценка] = 4 AND [Предмет] = "Информатика"
[Оценка] >= 4 AND [Предмет] IN ("Информатика", "Право")
[Длина] * [Ширина] > 100
В критериях вместо знака равенства допустимо использование ключевого слова LIKE, например:
- Sort - задает или возвращает порядок сортировки записей в объекте Recordset (только в рабочей области Microsoft Jet). Для сортировки по
возрастанию используется ключевое слово ASC, а по убыванию — DESC. Например,
[Оценка] ASC
[Фамилия] DESC
Для сортировки первоначально по полю Оценка, а потом по полю Фамилия:
[Оценка] ASC, [Фамилия] DESC
На следующем шаге мы рассмотрим пример приложения.
Предыдущий шаг
Содержание
Следующий шаг