Метод Execute (подключение ADO)
Область применения: Access 2013 | Access 2016
Выполняет указанный запрос, инструкцию SQL, хранимую процедуру или текст, зависящий от поставщика.
Синтаксис
Для командной строки, не возвращающей строки:
подключение. ExecuteCommandText, RecordsAffected, Options
Для командной строки, возвращающей строки:
Установкаподключения кнабору записей = .Execute( CommandText, RecordsAffected, Options )
Возвращаемое значение
Возвращает ссылку на объект Recordset .
Параметры
CommandText
- Строковое значение, содержащее инструкцию SQL, хранимую процедуру, URL-адрес или текст для конкретного поставщика для выполнения. При необходимости можно использовать имена таблиц, но только в том случае, если поставщик поддерживает SQL. Например, если используется имя таблицы "Клиенты", ADO автоматически добавляет стандартный синтаксис SQL Select для формирования и передачи "SELECT * FROM Customers" в качестве инструкции T-SQL поставщику.
RecordsAffected
- Необязательный параметр. Переменная Long , в которую поставщик возвращает количество записей, затронутых операцией.
Параметры
- Необязательный параметр. Значение Long , указывающее, как поставщик должен оценивать аргумент CommandText . Может быть битовой маской из одного или нескольких значений CommandTypeEnum или ExecuteOptionEnum .
Примечание.
Используйте значение ExecuteOptionEnumadExecuteNoRecords , чтобы повысить производительность за счет минимизации внутренней обработки.
Не используйте значения CommandTypeEnumadCmdFile или adCmdTableDirect с командой Execute. Эти значения можно использовать только в качестве параметров с методами Open и Requeryнабора записей.
Замечания
При использовании метода Execute в объекте Connection выполняется любой запрос, который вы передаете методу в аргументе CommandText для указанного соединения. Если аргумент CommandText указывает запрос, возвращающий строки, все результаты, создаваемые при выполнении, сохраняются в новом объекте Recordset . Если команда не предназначена для возврата результатов (например, запроса SQL UPDATE), поставщик возвращает Nothing , если указан параметр adExecuteNoRecords ; В противном случае функция Execute возвращает закрытый набор записей.
Возвращаемый объект Recordset всегда является курсором только для чтения и только для прямого доступа. Если вам нужен объект Recordset с более функциональными возможностями, сначала создайте объект Recordset с нужными параметрами свойства, а затем используйте метод Open объекта Recordset, чтобы выполнить запрос и вернуть нужный тип курсора.
Содержимое аргумента CommandText зависит от поставщика и может быть стандартным синтаксисом SQL или любым специальным форматом команды, поддерживаемым поставщиком.
По завершении этой операции будет выдано событие ExecuteComplete .
Примечание.
URL-адреса, использующие схему HTTP, автоматически вызывают поставщик Microsoft OLE DB для публикации в Интернете. Дополнительные сведения см. в разделе Абсолютные и относительные URL-адреса.
См. также
- Форум для разработчиков Access
- Помощь при работе с Access на support.office.com
- Помощь при работе с Access на answers.microsoft.com
- Форумы Access на UtterAccess
- Справочный центр (FMS) для разработки и VBA программирования для Access
- Публикации по Access на StackOverflow
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.