Sql в программах на vba
VBA, как и макросы, предназначены для автоматизации выполнения повторяющихся операций над объектами БД Access.
В Access существуют следующие способы запуска программ VBA:
- включение программы в процедуру обработки события;
- вызов функции в выражении;
- вызов процедуры Sub в другой процедуре или в окне отладки;
- выполнение макрокоманды ЗапускПрограммы (RunCode) в макросе.
Функции применяются в выражениях, определяющих вычисляемые поля в формах, отчетах или запросах. Выражения используются для указания условий в запросах и фильтрах, а также в макросах, в инструкциях и методах VBA, а также в инструкциях SQL. В процедуру Sub можно включать общедоступные VBA – подпрограммы, вызываемые из других процедур.
Рассмотрим выполнение запроса к базе данных с помощью инструкций SQL в программе на Visual Basic для приложений.
В запросе производится отбор в базе данных записей, удовлетворяющих определенным условиям (запрос на выборку), либо выдается инструкция на выполнение указанных действий с записями, удовлетворяющими определенным условиям (запрос на изменение).
Существуют следующие способы выполнения запросов:
- вызов метода Execute (для выполнения запросов SQL на изменение);
- создание и выполнение специального объекта QueryDef;
- использование инструкции SQL в качестве аргумента метода OpenRecordset;
- выполнение метода OpenRecordset для существующего объекта QueryDef;
- вызов методов RunSQL и OpenQuery.
Метод Execute используется, если требуется выполнить такое изменение в БД, при котором не возвращаются записи. Например, операции вставки или удаления записей.
Объект QueryDef представляет собой сохраненное определение запроса в базе данных. Его можно рассматривать как откомпилированную инструкцию SQL.
Метод OpenRecordset используется, чтобы открыть объект типа Recordset для выполнения последующих операций над ним.
Метод RunSQL выполняет макрокоманду ЗапускЗапроса SQL в программе VBA
Метод OpenQuery выполняет макрокоманду ОткрытьЗапрос (OpenQuery) в программе VBA. С его помощью можно открыть запрос в режиме таблицы, Конструктора или просмотра. При этом устанавливается один из следующих режимов работы с данными: добавление, изменение или только чтение.
Выбор варианта выполнения запроса определяется программистом с учетом особенностей решаемой задачи.
Yandex.RTB R-A-252273-3