Общая характеристика запросов

При работе с БД часто возникает необходимость выбрать из нее информацию, удовлетворяющую определенным условиям, или произвести различные вычисления. Например, нужно извлечь из учебной БД Деканат сведения о студентах, сдавших сессию на «отлично», либо определить, каков средний балл экзамена по английскому языку в данной группе.

Для решения таких задач предназначены запросы. Запрос сообщает Access, какая именно информация интересует пользователя в настоящий момент. В нем можно указать, какие

• таблицы содержат нужную информацию;

• записи нужно выбрать из таблиц БД и порядок их сортировки;

• поля должны быть выданы на экран;

• вычисления следует выполнить над выбранными данными.

Запросы могут быть использованы для выделения в таблицах различных групп данных и выполнения над ними вычислений и сравнений. С их помощью можно также выполнить следующие операции:

• добавление новых записей в таблицу;

• удаление записей из таблицы;

• изменение содержимого полей таблицы.

Запрос часто используется в качестве источника данных при создании формы или отчета. Открытие такой формы или отчета автоматически приводит к выполнению соответствующего запроса. Поэтому на экране всегда присутствует самая «свежая» информация об объекте.

Результат запроса можно распечатать или передать с помощью буфера обмена в другое приложение Windows, например, вставить в виде таблицы в документ Word.

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

Access анализирует этот образец и сохраняет в виде инструкций языка структурированных запросов SQL (Structured Query Language). Именно втаком виде запрос затем используется в качестве источника данных дляформ и отчетов. Отметим, что некоторые важные виды запросов нельзяполучить путем заполнения бланка запроса. Для их создания необходимонаписать инструкцию на SQL.

Типы запросов в Access

Access позволяет создавать следующие типы запросов:

Запрос-выборка. Используется для отбора информации из таблиц идругих запросов БД. При выполнении этого запроса Access создает динамический набор записей, содержащий выбранные данные. С этим набором в большинстве случаев можно работать как с обычной таблицей. Его можно просматривать и редактировать, выбирать нужную информацию и т.д. Однако в отличие от таблицы динамический набор записей физически в базе данных не существует и хранится в памяти ЭВМ лишь во время выполнения запроса. При изменении данных в полях динамического набора Access обычно автоматически вносит сделанные изменения в таблицы, на базе которых был построен запрос.

Перекрестный запрос. Представляет данные в формате, подобном электронной таблице, на основе условий, определенных в запросе. С его помощью можно сгруппировать большой объем информации и представить его в виде, удобном для восприятия. Этот вид запроса часто применяется при построении диаграмм.

Запрос на изменение. За одну операцию выбирает записи на основе указанных условий отбора и вносит в них изменения. Существует четыре типа запросов на изменение:

• запрос на добавление — добавляет группу записей из одной таблицы в другую таблицу.

• запрос на удаление — позволяет удалить группу записей из одной или нескольких таблиц.

• запрос на обновление — вносит изменения в группу записей одной или нескольких таблиц.

• запрос на создание таблицы — позволяет создать таблицу на основе данных, содержащихся в других таблицах БД.

Запрос SQL — запрос, который может быть создан только с помощью SQL. Существует три типа таких запросов:

• запрос-объединение — позволяет объединить поля из нескольких таблиц или запросов в один набор данных;

• запрос к серверу — передает инструкции SQL удаленной базе данных;

• управляющий запрос — создает, изменяет или удаляет таблицы или индексы базы данных Access.

Запросы являются гибким, интерактивным и итеративным средством. Если запрос сформулирован неточно, его можно легко изменить и выполнить еще раз. Составляя запросы, построенные на результатах предыдущих запросов, вы можете работать с базой данных, задавая ей вопросы типа «А что, если ...?».

Режимы окна запроса

Окно запроса может находиться в одном из трех режимов: конструктора, таблицы и SQL.

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

Режим таблицы служит для предварительного просмотра данных, отобранных запросом, или, в случае запроса на изменение, для просмотра данных, которые могут измениться в результате выполнения запроса.

Окно запроса может также находиться в режиме SQL, который используют для ввода или просмотра инструкций SQL при создании или изменении запроса. При создании запроса в режиме конструктора Access

автоматически создает в режиме SQL эквивалентную инструкцию SQL.

Для переключения между этими режимами следует использовать кнопку Режим Общая характеристика запросов - student2.ru ,расположенную слева на панели инструментов. Нажатие этой кнопки переводит окно в режим, значок которого выведен на ней. Если нажать стрелку рядом с кнопкой, то раскроется список доступных режимов и можно выбрать нужный режим.

Создание запроса

Прежде чем приступить к созданию запроса, следует продумать ответы на следующие вопросы:

• какая таблица или таблицы содержит нужную информацию,

• как связать эти таблицы,

• какой тип запроса использовать,

• каким условиям должны удовлетворять отбираемые записи,

• каким должен быть порядок их сортировки,

• какие вычисления нужно выполнить над отобранными данными,

• какое имя должен получить создаваемый запрос.

Для создания запроса нужно щелкнуть по корешку Запросыокна БД, а затем по кнопке Создатьнад списком запросов. На экране появится диалоговое окно Новый запрос,и Access предоставит вам выбор: создать запрос самому в режиме конструктора или воспользоваться помощью одного из мастеров по разработке запросов.

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

• Простой запрос. Создается запрос на выборку из указанных полей.

• Перекрестный запрос. Выводит данные в формате электронной таблицы.

• Поиск повторяющихся записей. Осуществляется поиск повтор- яющихся записей в указанной таблице или запросе.

• Поиск записей, не имеющих подчиненных. Находит все записи в главной таблице, не имеющие связанных с ними записей в подчиненной таблице.

Наши рекомендации