Какие способы создания запросов вы знаете. Объектная модель запроса "схема запроса" - теория и примеры использования

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

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

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

В перекрестном запросе отображаются результаты статистических расчетов (такие, как суммы, количество записей, средние значения), выполненных по данным из одного поля таблицы. Эти результаты группируются по двум наборам данных, один из которых распо­ложен в левом столбце таблицы, а второй - в верхней строке. Например, нам надо узнать средний стаж работы ассистентов, доцентов и профессоров на разных кафедрах (на основе таблицы Преподаватели). Перекрестный запрос позволит легко решить эту задачу, создав таблицу, в которой заголовками строк будут служить должности, заголовками столбцов - названия кафедр, а в ячейках будут рассчитаны средние значения стажа преподавателей.

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

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

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

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

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

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

Запрос на выборку используется наиболее часто. При его выполнении данные, удовле­творяющие условиям отбора, выбираются из одной или из нескольких таблиц и выводятся в определенном порядке. Например, можно вывести на экран данные о фамилиях доцентов, стаж которых более 15 лет (на основе таблицы Преподаватели). Можно также использовать запрос на выборку, чтобы сгруппировать записи для вы­числения сумм, средних значений, пересчета и других действий. Например, используя за­прос на выборку, можно получить данные о среднем стаже доцентов и профессоров (на основе таблицы Преподаватели). Простые запросы на выборку практически не отличаются от фильтров. Более того, фильтры можно сохранять как запросы.

Запрос с параметрами - это запрос, при выполнении которого в его диалоговом окне пользователю выдается приглашение ввести данные, на основе которых будет выполняться запрос. Например, часто требуются данные о том, какие дисциплины ведут преподаватели. Чтобы не создавать отдельные запросы по каждому преподавателю, можно создать один запрос с параметрами, где в качестве параметра будет использоваться фамилия преподавателя. При каждом вызове этого запроса вам будет предложено ввести фамилию преподавателя, а затем на экран будут выведены все поля, которые вы указали в запросе, например фамилия, имя, отчество преподавателя и читаемая им дисциплина.

Для создания нового запроса надо в окне базы данных выбрать вкладку Запросы и щелкнуть по кнопке <Создать>. Откроется окно «Новый запрос».

В окне вы должны выбрать один из пяти пунктов:

    Конструктор,

    Простой запрос.

    Перекрестный запрос,

    Повторяющиеся записи.

    Записи без подчиненных.

Конструктор позволит вам самостоятельно создать любой тип запроса, но этот режим рекомендуется пользователям, уже имеющим некоторый опыт создания запросов.

Простой запрос позволит создать с помощью Мастера запрос на выборку из определенных полей таблиц или других запросов. (Это наилучший способ создания запроса для начинающих пользователей.)

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

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

У вас может возникнуть вопрос: как создавать запросы с параметрами и запросы на изменение, если при создании запроса они явно не указаны? Следует отметить, что основой для всех этих запросов является запрос на выборку, т.е. сначала необходимо определить набор данных, с которым хотите работать. Затем для созданного запроса на выборку надо перейти в режим конструктора. Задание параметров производится в строке Условия отбора для соответствующих полей. Подробнее это будет рассмотрено ниже при выполнении задания. Для доступа к запросам на изменение надо открыть пункт меню Запрос - в открыв­шемся списке вы увидите все виды запросов на изменение.

При выполнении запроса на выборку Access извлекает записи из таблиц и формирует результирующий набор данных. Он выглядит, как таблица, хотя и не является ею. Результирующий набор данных является динамическим (или виртуальным) набором записей и не хранится в базе данных.

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

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

    на физическом носителе информации (обычно это жесткий диск) требуется меньший объем пространства;

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

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

Для сохранения запроса следует выполнить следующие действия. Выполните коман­ду Файл, Сохранить или щелкните по кнопке <Сохранить> на панели инструментов. Если вы впервые сохраняете запрос, введите новое имя запроса в диалоговом окне «Сохране­ние».

Запрос лучше всего создавать с помощью Конструктора (язык QBE). Для этого есть специальный значок в окне База данных . Он называется Создание запроса в режиме конструктора и открывает специальный окно в режиме языка QBE (см. рисунок 1). Окно состоит из двух частей. В верхней отображается структура таблиц, к которым запрос адресован, а нижняя область разбита на столбцы – по одному столбцу на каждое поле будущей результирующей таблицы.

Рис. 1 Окно создания запрос в режиме QBE

Памятка «Условия отбора»

Оператор

Описание

? Улица

Знак вопроса заменяет один символ

43 место*

Звездочка заменяет несколько символов, идущих после определенного слова

Значение меньше 100

Значение больше или равно 1

<>"Москва"

Все города кроме Москвы

Between 1 and 10

Значения между 1 и 10

Is Null Is Not Null

Находит пустые записи или находит все записи кроме пустых

Like "a*"

Все слова, начинающиеся с буквы а

>0 And <=10

Все значения большие 0 и меньшие 10

"Bob" Or "Jane"

Значения равные или Bob, или Jane

Запрос (query) – это средство выбора необходимой информации из базы данных. Вопрос, сформированный по отношению к базе данных, и есть запрос.

Применяются два типа запросов: по образцу (QBE – Query by example) и структурированный язык запросов (SQL – Structured Query Language).

QBE - запрос по образцу – средство для отыскания необходимой информации в базе данных. Он формируется не на специальном языке, а путем заполнения бланка запроса в окне Конструктора запросов.

SQL – запросы – это запросы, которые составляются (программистами) из последовательности SQL – инструкций. Эти инструкции задают, что надо сделать с входным набором данных для генерации выходного набора. Все запросы Access строит на основе SQL – запросов, чтобы посмотреть их, необходимо в активном окне проектирования запроса выполнить команду Вид/SQL.

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

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

Простой

По условию

Параметрические

Итоговые

С вычисляемыми полями

При создании query необходимо определить:

Поля в базе данных, по которым будет идти поиск информации

Предмет поиска в базе данных

Перечень полей в результате выполнения запроса

Чтобы вызвать Конструктор запросов , необходимо перейти в окно базы данных. В окне база данных необходимо выбрать вкладку Запросы и дважды щелкнуть на пиктограмме Создание запроса в режиме конструктора . Появится активное окно Добавление таблицы на фоне неактивного окна «Запрос: запрос на выборку».

В окне Добавление таблицы следует выбрать таблицу – источник или несколько таблиц из представленного списка таблиц, на основе которых будет проводиться выбор данных, и щелкнуть на кнопке Добавить . После этого закрыть окно Добавление таблицы , окно «Запрос: запрос на выборку » станет активным.

Окно Конструктора состоит из двух частей – верхней и нижней. В верхней части окна размещается схема данных запроса, которая содержит список таблиц – источников и отражает связь между ними.

В нижней части окна находится Бланк построения запроса QBE (Query by Example), в котором каждая строка выполняет определенную функцию:

Поле – указывает имена полей, которые участвуют в запросе

Имя таблицы – имя таблицы, из которой выбрано это поле

Сортировка – указывает тип сортировки

Вывод на экран – устанавливает флажок просмотра поля на экране

Условия отбора - задаются критерии поиска

Или – задаются дополнительные критерии отбора

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

Запрос 1 Выбрать все затраты организации ОАО «Всестрой»

Все текстовые значения вводятся в кавычках, но если кавычки уже существуют то такое выражение включают в одинарных кавычках.

В окне «Запрос: запрос на выборку» с помощью инструментов формируем query:

Выбрать таблицу – источник, из которой производится выборка записей.

Переместить имена полей с источника в Бланк запроса. Например, из таблицы Организации отбуксировать поле организации в первое поле Бланка запросов, из таблицы затраты отбуксировать поле Затраты во второе поле Бланка запросов, а из таблицы Затраты отбуксировать поле Стоимость в третье поле

Задать принцип сортировки. Курсор мыши переместить в строку Сортировка для любого поля, появится кнопка открытия списка режимов сортировки: по возрастанию и по убыванию. Например, установить в поле Стоимость режим сортировки – по возрастанию.

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

В строке "Условия" отбора и строке "Или" необходимо ввести условия ограниченного поиска – критерии поиска. Например, в поле Код организации ввести код 302 т.е. отображать все затраты,организации ОАО «Всестрой»

После завершения формирования запроса закрыть окно Запрос на выборку. Откроется окно диалога Сохранить – ответить Да (ввести имя созданного запроса, например, Образец запроса в режиме Конструктор) и щелкнуть ОК и вернуться в окно базы данных.

Запрос 2 Затраты Иркутских организаций

Запрос по условию

Запрос3 Затраты за первый квартал 2012г ,


Параметрические запросы

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

Процедура формирования запросов ИОН-offline в программе «Референт».

В разделе «Выходной контроль» окна программы «Референт» нужно нажать кнопку («Запросы ФНС») на панели инструментов.

Примечание. Если программа «Референт» настроена на работу с несколькими почтовыми ящиками, то после нажатия на кнопку «Запросы ФНС» откроется окно «Запросы ФНС. Выбор ящика». В этом окне с помощью кнопки следует выбрать из выпадающего списка наименование организации, с почтового ящика которой нужно отправить запрос, и нажать на кнопку «ОК».

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

Для того чтобы было удобнее найти нужные КБК, используется поле «Фильтр».

После того как все необходимые КБК выбраны, нажмите кнопку «Сохранить».

В поле «Группировка» окна «Запрос ИОН» указывается одно из двух значений:

  • группировать по видам платежа;
  • не группировать по видам платежа.

Если необходимо сформировать запрос на перечень налоговых деклараций (расчётов) и бухгалтерской отчётности, то нужно заполнить поля «С» и «По» , где указывается период, на который нужен запрос. Также в поле «Отчётность» указывается тип документов:

  • все виды деклараций;
  • первичные;
  • корректирующие (последняя коррекция).

Если нужно получить акт сверки расчётов по налогам, сборам, пени и штрафам, то следует указать дату, на которую требуется сверка (в поле «На дату»), и добавить нужные КБК в список вышеуказанным способом.

После того как все необходимые поля будут заполнены, следует нажать на кнопку «Создать».

Затем в окне «Выходного контроля» появится файл для отправки, который необходимо пометить галочкой и нажать «Отправить».

Данная форма позволяет сформировать запросы в инспекции ФНС России на получение следующих документов:

  • перечень налоговых деклараций (расчётов) и бухгалтерской отчётности, предоставленных в отчётном году;
  • акт сверки расчётов по налогам, сборам, пеням, штрафам, процентам;
  • справка об исполнении налогоплательщиком (плательщиком сборов, налоговым агентом) обязанности по уплате налогов, сборов, пеней, штрафов.

В поле «Отправитель» указывается организация, с почтового ящика которой отправляется запрос. Поле «Направление (ИФНС)» показывает номер транзитной налоговой инспекции (указывается для КНП, во всех остальных случаях номера транзитной ИФНС и конечной совпадают). В поле «Ответственное лицо» указывается Ф.И.О. владельца сертификата ключа подписи.

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

Далее в окне «Запрос ИОН» нужно указать налоговую инспекцию, в которой состоит на учёте налогоплательщик (поле «Конечная ИФНС»). Если в поле «Конечная ИФНС» указать значение «0000», то налогоплательщик получит ответ по всем обособленным подразделениям своей организации. Поле «КПП» нужно заполнить, если необходимо получить информацию по одному конкретному объекту налогообложения, или оставить пустым в случае, когда требуется информация по всем объектам.

Также необходимо указать желаемый формат ответа из ИФНС (XML, XLS, PDF или RTF) в поле «Формат ответа». В поле «Код запроса» указывается, какой именно документ нужно получить из налоговой инспекции:

  • справка о состоянии расчётов по налогам, сборам, пени и штрафам;
  • выписка операций по расчётам с бюджетом;
  • перечень налоговых деклараций (расчётов) и бухгалтерской отчётности;
  • акт сверки расчётов по налогам, сборам, пеням, штрафам, процентам.

Справка об исполнении налогоплательщиком (плательщиком сборов, налоговым агентом) обязанности по уплате налогов, сборов, пеней, штрафов.

Окно «Запрос ИОН» меняет вид в соответствии с тем, какое значение установлено в поле «Код запроса».

Если нужно получить справку о состоянии расчётов по налогам, сборам, пени и штрафам, то далее заполняется поле «На дату» (число, на которое хотите получить справку из ИФНС).

Если необходимо сформировать запрос на выписку операций по расчётам с бюджетом, то появляются следующие поля: «Год», «Группировка» и поле, где необходимо указать КБК. В поле «Год» нужно указать год, на который требуется выписка операций. Далее нужно выбрать интересующие КБК. Они добавляются в список с помощью кнопки(при нажатии этой кнопки появляется справочник, из которого выбираются нужные КБК двойным щелчком мыши) и удаляются из списка с помощью кнопки . Также в запросах с типом 2 и 4 имеется возможность ввода КБК вручную. Для этого нужно ввести код КБК в поле «КБК», которое находится над справочником, и нажать клавишу Enter.

Если в запросе с типом «2 - выписка операций по расчётам с бюджетом» не указывать КБК, то в ответ поступит информация по всем налоговым обстоятельствам на заданную дату для налогоплательщика.

Для того чтобы настроить список выбора КБК, сверху в меню выберите «Справочники - КБК...».

Откроется окно «Выбор КБК».

Инструкция по формированию запросов ИОН-offline в системе «Онлайн-Спринтер»

Для того чтобы воспользоваться услугой ИОН-offline, необходимо:


Инструкция по формированию запросов offline для ПК «1С-Спринтер»

Для формирования запроса:


Запрос в ПФР отправляется аналогичным образом с закладки «ПФР».

Как создать и отправить запрос ИОН-offline в программе Такском-Доклайнер?

Для создания запроса ИОН-offline в программе «Такском-Доклайнер»:


Запросы – это один из видов документов, используемых в СУБД Access , которые предназначены для обработки данных, хранимых в таблицах

Запросы можно создавать в режиме конструктора и с помощью мастеров . Конструктор позволяет самостоятельно создать любой тип запроса, но этот режим рекомендуется пользователям, уже имеющим некоторый опыт создания запросов.

Мастер запроса за несколько шагов собирает сведения, необходимые для формирования запроса, а затем автоматически составляет его в зависимости от ответов пользователя на поставленные вопросы.

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

§ Простой запрос.

§ Перекрестный запрос.

§ Повторяющиеся записи.

§ Записи без подчинённых.

Для создания любого из них надо в окне базы данных выбрать объект Запросы и щелкнуть по кнопке Создать. Откроется окно Новый запрос, вид которого представлен на рис. 1.

Рисунок 1 Окно БД Штат и окно выбора видов запросов

Простой запрос позволяет создать с помощью Мастера запрос на выборку данных из определенных полей таблиц или запросов, он наиболее удобен для начинающих пользователей. При его выборе запускается Мастер, в первом окне которого (рис. 2) нужно в списке Таблицы и запросы выбрать таблицу, напр., Штат преподавателей, выбрать из перечня её доступных полей те, которые должны присутствовать в запросе и перевести каждое нажатием кнопки [>]. Аналогично в запрос добавляются поля из других таблиц той же БД.

Примечание. Запрос может составляться только по таблицам или только по запросам БД. Объединение в запросе полей из таблицы и запроса не допускается.

Рисунок 2 Выбор полей для запроса.

Перекрестный запрос имеет вид таблицы, в которой выводится до трёх полей (столбцов) исходной таблицы, ячейки одного из оставшихся преобразуются в новые столбцы, а на их пересечении выводится одно из указанных пользователем значений – Дисперсия, Минимум, Максимум, Среднее, Отклонение, Число, Первое, Последнее и др. Например, запрос на рис. 4 является перекрёстным запросом таблицы 1 на рис. 3, в котором величины расстояний стали названиями столбцов:

Вариант Повторяющиеся записи создаёт запрос на поиск повторяющихся записей (строк) в одной таблице или запросе, для таблицы на рис. 3 при заданных полях Расстояние и Стоимость проезда он имеет вид (рис.5)

MS Access позволяет создать такой запрос только для одной таблицы или запроса (не для нескольких таблиц БД), причём в нём нужно задавать

Рисунок 3 Таблица 1 для создания перекрёстного запроса


Рисунок 4 Перекрёстный запрос табл. 1

только те поля, в которых есть полное одновременное совпадение данных из записей (например, поле Транспорт в этот запрос включать нельзя). Дополнительно, для распознавания, можно включить неповторяющееся поле (Город).

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

Рисунок 6 Основная таблица 1

Запрос без подчинённых на сравнение таблиц рис. 3 и рис. 6 выведет на экран несовпадающую строку (рис. 7):

Эти запросы являются основой для создания более сложных запросов, для которых применяется режим Конструктора.

4. Формирование запросов к базе данных

4.1 Общее понятие запросов

Запрос - это требование на извлечение данных из таблиц базы, на выполнение вычислений над данными, на внесение изменений в базу данных.

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

СУБД Access позволяет создавать запросы трех типов: запросы на выборку, перекрестные запросы, запросы на внесение изменений в базу данных.

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

Включать в результирующую таблицу поля из одной или нескольких таблиц в нужном порядке;

Выбирать записи, удовлетворяющие условиям отбора;

Осуществлять вычисления над полями базы данных;

Группировать записи и находить для групп записей или для всех записей итоговые значения по некоторым полям с помощью статистических функций: Sum – сумма значений поля, Avg – среднее значений поля, Max – максимальное из значений поля, Min – минимальное из значений поля, Count – число значений поля и др.

Разновидностью запроса на выборку является запрос с параметрами - это запрос, который при выполнении отображает в собственном диалоговом окне приглашение ввести интересующее пользователя значение критерия отбора записей.

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

Существует четыре типа запросов на внесение изменений в базу данных:

1) запрос на удаление - удаляет группу записей из одной таблицы или нескольких взаимосвязанных таблиц базы данных, для которых задано каскадное удаление связанных записей;

4) запрос на создание таблицы - создает новую таблицу на основе всех или части данных из одной или нескольких таблиц базы данных.

СУБД Access позволяет создавать запросы с помощью Мастеров и с помощью Конструктора. Мастера используются для создания определенных запросов. С помощью Конструктора можно создать любой запрос.

4.2 Создание запроса выбора

Для создания запроса выбора с помощью Конструктора необходимо открыть окно Конструктора запроса, выполнив действия:

Окно БД - объект Запросы - [Создать] - окно Новый запрос - выбрать Конструктор - окно Добавление таблицы - выбрать таблицы-источники запроса - [Закрыть].

Окно Конструктора запроса имеет вид как на рис. 4.1.


Рис. 4.1 Окно Конструктора запроса

Оно разделено на две панели.

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

Нижняя панель есть бланк запроса по образцу (QBE-запроса). Он представлен в виде таблицы, предназначенной для определения структуры результирующей таблицы запроса и задания условий отбора данных из таблиц. Каждый столбец бланка относится к одному полю таблицы. Строки бланка имеют следующее назначение:

· Поле – указывает имена полей, участвующих в формировании запроса;

· Имя таблицы - указывает имена таблиц, которым принадлежат эти поля;

· Сортировка – дает возможность отсортировать записи в результирующей таблице запроса;

· Вывод на экран – позволяет управлять отображением полей в этой таблице;

· Условие отбора – служит для задания условий отбора записей;

· или – позволяет объединять условия отбора логической операцией ИЛИ. При этом условия отбора могут указываться в нескольких строках бланка запроса.

Включение отдельных полей в бланк запроса можно выполнить одним из следующих способов:

· перетащить поле из списка полей в крайнюю слева свободную клетку строки Поле;

· дважды щелкнуть по имени поля в списке полей;

· щелкнуть в клетке строки Поле и из раскрывающегося списка выбрать нужное поле.

Включение в бланк запроса всех полей таблицы можно выполнить, если:

· дважды щелкнуть по имени таблицы и перетащить все выделенные поля в клетку строки Поле;

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

Для очистки отдельных столбцов бланка запроса используется команда - Правка/Удалить столбцы.

Для очистки всего бланка запроса служит команда - Правка/Очистить бланк.

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

Формирование запроса с применением сортировки.

Сортировка возможна по одному или нескольким полям одновременно. Для сортировки по нескольким полям поля располагаются в бланке запроса в том порядке, в котором требуется выполнять сортировку. В Access записи сортируются сначала по самому левому полю, затем по полю, расположенному в следующем столбце справа и т.д. Для задания порядка сортировки необходимо щелкнуть в строке Сортировка для поля, по которому сортируются записи, и из раскрывающегося списка выбрать – по возрастанию или по убыванию. Пример создания запроса с применением сортировки см. в Приложении 9-10.

Формирование запроса с условиями отбора.

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

Если выражения вводятся в несколько клеток одной строки Условие отбора, то они автоматически объединяются с помощью логического оператора And. Если выражения вводятся в разные строки бланка запроса, то Access объединяет их логическим оператором Or. Пример создания запроса с условием для создаваемой базы данных см. в Приложении 11-12.

В условии отбора может быть использована конструкция Between (между). Например, Between 100 and 200. Результат построения запроса с использованием конструкции Between см. в Приложении 13-14.

Формирование запроса с вычисляемым полем.

Для создания вычисляемого поля в пустую клетку строки Поле вводится имя вычисляемого поля с двоеточием, после которого – выражение. Например,

СТОИМОСТЬ: [ЦЕНА]*[КОЛИЧЕСТВО]

Если выражение сложное, то для его создания целесообразно использовать построитель выражений.

Для проектируемой базы данных запрос с вычисляемым полем имеет вид – см. в Приложении 15-16.

Формирование запроса с группировкой.

Часто требуется в таблице видеть не все записи, а только итоговые значения по группам записей. Расчет итогов для некоторых полей групп производится с помощью статистических функций, которые были описаны выше.

Для создания запроса с группировкой выполняется следующее:

· перетаскивается в первую клетку строки Поле то поле, по которому производится группировка записей. Затем перетаскиваются в последующие клетки поля, по которым подводятся итоги;

· вводится команда Вид / Групповые операции. В бланке запроса появляется новая строка Групповая операция, в которой для всех полей указано Группировка;

· в строке Групповая операция для полей, по которым подводятся итоги, производятся щелчки и из раскрывающегося списка выбирается требуемая статистическая функция.

Формирование запроса с параметрами

Если необходимо часто выполнять один и тот же запрос выбора, меняя только в условиях отбора значения полей, то целесообразно создать запрос с параметрами. В строках Условие отбора, или для полей, играющих роль параметров, вводится в квадратных скобках текст приглашения на ввод интересующих пользователя значений этих полей. Этот текст будет выводиться в диалоговом окне "Введите значение параметра при выполнении запроса". Результат построения запроса с параметрами приведен в Приложении 17-18.

4.3 Создание перекрестного запроса

Создание перекрестного запроса с помощью Конструктора начинается с открытия окна Конструктора запроса. В этом окне в бланк запроса последовательно перетаскиваются:

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

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

· поле, по которому подводится итог с использованием статистической функции.

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

Результат создания перекрестного запроса представлен в Приложении 19-20.

4.4 Создание запросов действия

Формирование запроса на создание таблицы БД.

После открытия окна конструктора запроса вводится команда Запрос / Создание таблицы

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

Формирование запроса на обновление полей таблицы БД

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

Формирование запроса на добавление записей к таблице БД.

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

Затем перетаскиваются те поля из списка полей таблицы-источника, которые совпадают с полями пополняемой таблицы. Их имена Access автоматически укажет в строке Добавление как имена полей пополняемой таблицы.

Формирование запроса на удаление записей из таблицы БД.

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

В этом случае при удалении записей из подчиненной таблицы в окне конструктора запроса вводится команда Запрос / Удаление. В результате в бланке запроса появится новая строка Удаление. Тогда из списка полей подчиненной таблицы перетаскивается в бланк запроса символ звездочки (*), после чего в строке Удаление для этого поля отобразится значение Из. Затем из списка полей главной таблицы перетаскиваются поля, участвующие в условии отбора удаляемых записей, и для них в строке Удаление появится значение Условие. После этого задаются условия отбора удаляемых записей.

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

При составлении запроса на удаление записей из главной таблицы (в обоих случаях) в окне конструктора запроса вводится команда Запрос / Удаление.

В бланк запроса перетаскиваются поля, участвующие в условиях отбора записей на удаление, и задаются условия отбора.

4.5 Выполнение и сохранение запроса

После формирования запроса его необходимо выполнить. Из окна Конструктора запроса это можно сделать, введя одну из команд.