Использование инструкций SQL для создания запросов
Создание запроса к серверу
Еще одним типом запроса SQL является запрос к серверу. Он обрабатывается не процессором Jet, как все остальные запросы, а непосредственно передается на сервер базы данных, к которому выполняется обращение, например Microsoft SQL Server. Главной особенностью этого запроса является то, что он должен использовать синтаксис языка SQL сервера базы данных (для Microsoft SQL Server это – Transact-SQL). Создается этот запрос аналогично запросу на объединение с помощью команды меню Запрос › Запрос SQL › К серверу (Query › SQL Specific › Pass-Through). Запросы к серверу применяются в приложениях, имеющих архитектуру "клиент-сервер".
Управляющие запросы
Управляющие запросы относятся к третьему типу запросов, которые создаются в окне Режим SQL и используют инструкции Jet SQL. Такие запросы позволяют работать с таблицами и индексами – создавать, изменять и удалять таблицы, создавать индексы.
Инструкции SQL, которые при этом используются, относятся к подмножеству SQL, называющемуся DDL – язык определения данных. Набор этих инструкций в Jet SQL существенно сокращен по сравнению со стандартом ANSI SQL, т. к. многие операции можно выполнить с помощью других средств (команд меню или окна базы данных).
В обычном режиме можно использовать следующие инструкции SQL:
- CREATE TABLE – создает таблицу;
- CONSTRAINT – создает уникальный индекс, в том числе по первичному ключу, а также применяется для установления отношений между таблицами;
- ALTER TABLE – изменяет структуру таблицы, созданной с помощью инструкции CREATE TABLE;
- DROP – удаляет таблицу из базы данных или удаляет индексы в таблице;
- CREATE INDEX – создает индекс для поля или группы полей.
В режиме ANSI SQL-92 возможны дополнительно следующие инструкции:
- CREATE PROCEDURE – создает хранимую процедуру;
- CREATE VIEW – создает новое представление;
- CREATE USER или GROUP – создает одного или нескольких новых пользователей или группу;
- ADD USER – добавляет одного или нескольких существующих пользователей к существующей группе;
- DROP USER или GROUP – удаляет одного или нескольких существующих пользователей или групп или исключает одного или нескольких существующих пользователей из существующей группы;
- ALTER USER или DATABASE – изменяет пароль существующего пользователя или базы данных;
- GRANT – предоставляет конкретные привилегии существующему пользователю или группе;
- REVOKE – отменяет конкретные привилегии существующего пользователя или группы.
Замечание
Запросы данного типа обычно используются в программах на языке Visual Basic для приложений (VBA) тогда, когда нужно выполнить соответствующие операции программно. В противном случае для этого гораздо удобнее и быстрее применять средства пользовательского интерфейса Access.
В рамках данной книги мы не описываем подробно синтаксис всех инструкций SQL. Заинтересованному читателю рекомендуется обратиться к разделу Справочник Microsoft Jet SQL Справочной системы Access.