Базы данных
Оценка 4.7

Базы данных

Оценка 4.7
doc
05.05.2020
Базы данных
Тема 5.3. Использование языка SQL.doc

Тема 5.3. Использование языка SQL

Для построения и выполнения произвольной запросной функции в Access очень удобным и доступным является язык запросов по образцу QBE, под­держанный мощным интерфейсом пользователя. Язык SQL в некотором роде скрыт от пользователя, хотя весьма важен при составлении VBA-программ в приложениях Access.

Особенности применения запросов SQL

Запросом SQL называют запрос, создаваемый с помощью инструкции SQL. Примерами запросов SQL являются запросы на объедине­ние, запросы к серверу, управляющие и подчиненные запросы.

Запрос на объединение — это такой запрос, в котором объединяются поля (столбцы) одной или нескольких таблиц или запросов в одно поле или столбец в результирующем наборе записей. Запрос к серверу выполняет передачу через ODBC команд SQL-серверу, например, Microsoft SQL Server. Запросы к серверу позволяют непосредствен­но работать с таблицами на сервере вместо их присоединения. Результатом выполнения запроса к серверу может быть загрузка записей или изменение данных

Управляющий запрос создает или изменяет объекты базы данных, такие как таблицы Access или SQL Server.

Подчиненный запрос состоит из инструкции SQL SELECT, находящейся внутри другого запроса на выборку или запроса на изменение.

Язык SQL в Access может применяться при разработке экранных форм, отчетов, а также при создании макрокоманд и программ на VBA.

Связь языков QBE и SQL

В Access между языками QBE и SQL имеется тесная связь. Запросные таблицы (бланки, формы) на языке QBE, заполняемые пользователем, перед непосредственным выполнением преобразуются в выражения (или сообщения) SQL. To есть язык SQL является внутренним стандартом на выполнение запросов. Такой механизм имеет преимущество, поскольку позволяет внутри системы Access унифицировать подготовку запросов к выполнению па локальном и удаленном компьютерах. В последнем случае SQL-сообщение реально передается к компьютеру-серверу запроса.

В Access запрос может находиться в одном из трех режимов (состоянии); Конструктора, SQL и таблицы. Режим Конструктора применяют для разработки нового запроса с чистого листа (без использования Мастеров или других средств) или для изменения макета существующего запроса. Режим SQL применяют для ввода или просмотра инструкций SQL. Режим таблицы применяют для работы с результатами выполнения запроса.

SQL в формах и отчетах

Основными источниками записей в экранных формах и отчетах являются таблицы и запросы. Во втором случае запросом может быть готовый запрос к БД или создаваемый при разработке формы или отчета. Описать новый запрос как источник записей при разработке формы или отчета в режиме Конструктора можно следующим образом.

1.      Открыть окно базы данных и на вкладке Формы (Forms) или Отчеты (Reports) нажать кнопку Создать (New).

2.      В очередном окне выбрать режим создания объекта с помощью Конструктора и нажать ОК.

3.      В окне создания новой формы или отчета подвести курсор мыши к за головку окна и в контекстном меню выбрать пункт Свойства (Properties).

4.      В появившемся окне Форма (Form) или Отчет (Report) на вкладке Дан­ные (Data) определить источник записей с помощью SQL-выражения, вводимого в поле ввода свойства «Источник записей», или с помощью Построителя запросов, вызываемого нажатием кнопки напротив ПОЛЯ ввода SQL-выражения. При вызове Построителя запросов появляется окно добавления таблиц и запросов в модель запроса.

5.      Ввести нужные таблицы/запросы в схему запроса-источника записей получим тем самым формируемый запрос.

От этого запроса легко перейти к SQL-выражению одним из описанных способов, например, по команде Вид | Режим SQL (View | SQI)

SQL в макрокомандах

Макрокоманды входят в состав макросов, которые используются для ав­томатизации выполнения часто повторяющихся действий в работе с БД. Макрос представляет собой одну или несколько макрокоманд с аргумента­ми.

Макросы вызываются из окна БД или автоматически при наступлении определенных событий. В последнем случае требуется связать макрос с нужным событием. Событием, по которому вызывается макрос, может быть, например, нажатие кнопки в области экранной формы или откры­тие окна БД.

Наряду с выполнением некоторых действий над объектами БД макросы могут вызывать другие макросы, программы на Visual Basic и внешние при­ложения.

Из множества макрокоманд (около 50) с SQL непосредственно связаны две макрокоманды: 3апуск3апросаSQL (RunSQL) и ОткрытьЗапрос (OpenQuery).

Макрокоманда 3апуск3апросаSQL запускает запрос на изменение или уп­равляющий запрос Access с помощью соответствующей инструкции SQL. Эта макрокоманда делает возможным выполнение действий в макросе без предварительного создания сохраненных запросов. С помощью макрокоманды можно выполнять и сохраненные запросы.

Запросами на изменение являются инструкции SQL, ре­ализующие следующие функции: добавление (INSERT INTO), удаление (DELETE), создание таблицы (SELECT...INTO) и обновление (UPDATE).

Управляющими запросами являются инструкции SQL, выполняющие сле­дующие функции: создание таблицы (CREATE TABLE), изменение таблицы (ALTER TABLE), удаление таблицы (DROP TABLE), создание индекса (CREATE INDEX) и удаление индекса (DROP INDEX).

Единственным     и     обязательным     аргументом     макрокоманды 3апуск3апросаSQL является инструкция SQL. Максимальная длина инструкции SQL составляет 255 символов. Для выполнения инструкции SQL длиной более 255 символов следует вызвать метод RunSQL объекта DoCnul в программе VBA. В программах VBA допускается использование инструкций SQL длиной до 32768 символов.

Макрокоманда ОткрытьЗапрос позволяет открывать запрос на выборку или перекрестный запрос (в режимах Таблицы, Конструктора и Предварительного просмотра), запускать запрос на изменение или ввод данных. Вызов эквивалентен нажатию кнопки Открыть (Open) или Конструктор (Design) в окне базы данных после выбора запроса на вкладке Запросы (Queries).

В макрокоманде задаются три аргумента: имя запроса, режим и режим данных. Первый аргумент задает имя открываемого запроса и является обязательным. Второй аргумент задает режим открытия запроса. Допустимыми значениями являются: «Таблица» (используется по умолчанию), «Конструктор и «Просмотр».

Третий аргумент описывает режим ввода данных в запрос. Аргумент можно применять к запросам, открываемым в режиме таблицы. Допустимые значения: «Добавление» (можно вводить новые записи, нельзя изменять существующие), «Изменение» (можно вводить новые и изменять существующие записи; действует по умолчанию) и «Только чтение» (разрешается просматривать записи).

SQL в программах на VBA

Напомним, что программы на VBA, как и макросы, предназначены для ав­томатизации выполнения повторяющихся операций над объектами БД Access. Для выполнения программы следует запустить содержащую ее процедуру Sub или функцию Function. Программа записывается в процедуре как набор ин­струкций и методов, с помощью которых выполняются требуемые действия. Процедуры, как известно, хранятся в модулях и выполняются в ответ на со­бытия или вызываются из выражений, макросов и других процедур.

В Access существуют следующие способы запуска программ VBA:

·         включение программы в процедуру обработки события;

·         вызов функции в выражении;

·         вызов процедуры Sub в другой процедуре или в окне отладки;

·         выполнение макрокоманды ЗапускПрограммы (RunCode) в макросе.

 

Вернутся в содержание.


Скачано с www.znanio.ru

Тема 5.3. Использование языка

Тема 5.3. Использование языка

Основными источниками записей в экранных формах и отчетах являются таблицы и запросы

Основными источниками записей в экранных формах и отчетах являются таблицы и запросы

С помощью макрокоманды можно выполнять и сохраненные запросы

С помощью макрокоманды можно выполнять и сохраненные запросы

В Access существуют следующие способы запуска программ

В Access существуют следующие способы запуска программ
Материалы на данной страницы взяты из открытых истончиков либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.
05.05.2020