Метод Recordset2.OpenRecordset (DAO)
Область применения: Access 2013, Office 2013
Создает новый объект Recordset и добавляет его в коллекцию Recordsets.
Синтаксис
expression . OpenRecordset(Type, Options)
Выражение Переменная, представляющая объект Recordset2 .
Параметры
Имя |
Обязательный/необязательный |
Тип данных |
Описание |
---|---|---|---|
Name |
Обязательный |
String |
Источник записей для нового объекта Recordset. Источником может быть имя таблицы, имя запроса или оператор SQL, возвращающий записи. Для объектов Recordset табличного типа в базах данных ядра СУБД Microsoft Access источником может быть только имя таблицы. |
Type |
Необязательный |
Variant |
Константа RecordsetTypeEnum, которая указывает на то, какой тип объекта Recordset нужно открыть. ПРИМЕЧАНИЕ: при открытии Recordset в рабочей области Microsoft Access, если вы не указали тип, OpenRecordset создает табличный тип Recordset, если возможно. Вы укажете связанную таблицу или запрос, OpenRecordset создаст объект Recordset типа dynaset. |
Options |
Необязательно |
Variant |
Сочетание констант RecordsetOptionEnum, которые указывают характеристики нового объекта Recordset. ПРИМЕЧАНИЕ: Константы dbConsistent и dbInconsistent являются взаимоисключающими, и использование обоих констант вызывает ошибку. Предоставление аргумента lockedits, когда опции используют константы dbReadOnly, также приводит к возникновению ошибки. |
LockEdit |
Необязательно |
Variant |
Константа LockTypeEnum, определяющая блокировку Recordset. NOTE: вы можете использовать dbReadOnly или в аргументе параметров или в аргументе lockedits, но не одновременно. Если вы используете его для обоих аргументов, возникает ошибка во время выполнения. |
Возвращаемое значение
Recordset
Примечания
Обычно если у пользователя возникает эта ошибка во время обновления записи, код должен обновлять содержимое полей и возвращать измененные значения. Если ошибка возникает при удалении записи, код может отобразить для пользователя данные новой записи и сообщение о недавнем изменении данных. В этот момент код может запросить у пользователя подтверждение удаления записи.
Вы также можете использовать константу dbSeeChanges при открытии Recordset в рабочей области ODBC, подключенной к ядру СУБД Microsoft Access для таблицы Microsoft SQL Server 6.0 (или более поздней версии), содержащей столбец IDENTITY, в противном случае может возникать ошибка.
Открытие нескольких объектов Recordset для источника данных ODBC может привести к завершению работы, так как подключение будет занято предыдущим вызовом OpenRecordset. Один из способов решения этой проблемы состоит в полном заполнении Recordset с помощью метода MoveLast непосредственно после открытия Recordset.
Закрытие Recordset с помощью метода Close автоматически удаляет его из коллекции Recordsets.
Примечание.
Если источник ссылается на инструкцию SQL, состоящую из строки, сцепленной с не целым числом, а системные параметры указывают не в США. десятичный символ, например запятая (например, strSQL = "PRICE > " & lngPrice и lngPrice = 125,50), ошибка возникает при попытке открыть набор записей. Это возникает по причине того, что при объединении число будет преобразовано в строку с помощью используемого по умолчанию в вашей системе десятичного символа, а SQL поддерживает только десятичные символы, используемые в США.