Типы запросов в аксесс

Система управления базами данных (СУБД) – это специальная программа или совокупность программ, которые необходимы для организации и ведения соответствующих баз данных. К одной из таких программ относится MS Access.

Понятие о запросах

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

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

Классификация запросов

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

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

Запросы на выборку

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

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

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

Создание запросов в MS Access данного вида предполагает, что их можно создать вручную или при помощи "Мастера создания запросов".

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

Для перехода в режим конструктора в Access 2013 нужно в области навигации кликнуть контекстной кнопкой мыши на имени формы и выбрать "Конструктор". Нажав ALT+F8, можно вызвать "Список полей", из которых поля можно перетащить непосредственно в форму.

Запросы на изменение

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

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

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

Создание новых таблиц используется при архивировании данных, проведении бэкапов или экспорте данных.

Разновидностью запросов на изменение являются запросы на обновление, при использовании которых обновляются абсолютно все записи, которые удовлетворяют какому-либо заданному условию. Если в комплекс данных необходимо внести изменения, то используют данную разновидность.

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

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

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

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

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

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

Перекрестные запросы в Access, как правило, применяют для создания отчетов и диаграмм.

Запросы с параметрами

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

Чтобы создать запрос в Access, необходимо в столбце запроса, в ячейке "Условие", поместить выражение ввода параметров в квадратных скобках.

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

SQL-запросы

В Access 2013 и других версий запросы выполняются при помощи языка структурированных запросов SQL.

Для создания SQL-запросов необходимо перейти в режим конструктора, затем на кнопке "Вид" выбрать "Режим SQL". В результате появится диалоговое окно, в котором в поле Select вводим названия столбцов, а в поле From – то, что будет выводиться в строках, например названия поставщиков (если первый столбец "Название").

В Access используется не чистый SQL, а его диалект Jet-SQL. Основными инструкциями для запросов в этом языке являются: SELECT, по которому осуществляется выборка из записей по определенным условиям (названия полей исходных таблиц, переносящихся в результирующую таблицу), UPDATE – используется с целью редактирования записей, DELETE – для удаления каких-либо указанных записей, CREATE – для создания новых объектов БД. В MS Access также используются TRANSFORM для построения перекрестных запросов, WITH OWNER-ACCESS OPTION для создания специальных запросов пользователем, не имеющем доступа к таблицам, к которым должен быть доступ у этого запроса, IN (для обеспечения связи с удаленной БД), DISTINCTROW (создание запроса с возможным объединением данных). Также могут применяться итоговые функции SQL, встроенные функции Access и VBA.

В заключение

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

Читайте также:  Программа для сброса чернил epson l222

В лабораторной работе №3 "Запросы в Access" были рассмотрены Простой запрос, запрос Повторяющиеся записи и запрос Записи без подчинения. Они являются достаточно простыми как по созданию, так и по выполняемым операциям. В MS Access также широко применяются более сложные виды запросов, к которым относятся Перекрёстный запрос и Запросы на изменение.

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

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

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

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

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

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

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

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

Разработка запросов

Запрос с параметром по одной таблице.

Для создания запросов с параметром Должность тренера.

Сначала создаётся простой запрос:

– Откройте объект Запросы, щелкните по кнопке Создать;

– В появившемся окне выберите Простой запрос и щелкните по кнопке OK;

– В появившемся окне в строке Таблицы и запросы выберите из списка таблицу Тренеры;

– Перенесите все поля из окна Доступные поля в окно Выбранные поля, щелкнув по кнопке;

– Нажмите кнопку Далее. В следующем окне мастера запросов оставьте подробный отчёт (чёрная точка в кружке), еще раз щелкните по кнопке Далее;

– В появившемся окне введите имя запроса Должность;

– Нажмите кнопку Готово. На экране появится таблица с данными запроса – полным списком тренеров.

Теперь на базе этого простого запроса нужно создать запрос с параметром Должность. Для этого перейдите в режим конструктора:

– В строке Условия отбора для поля Должность введите фразу (квадратные скобки тоже вводить): [ Введите должность ] ;

– Выполните запрос, щелкнув по кнопке [!] на панели инструментов, или выполните команду Запрос Запуск;

– В появившемся окне введите Тренер (можно со строчной буквы) и щелкните по кнопке ОК. На экране появится таблица с данными о всех тренерах таблицы Тренеры. Аналогично запросить вывод Старших тренеров и т.д.

– Сохраните запрос и закройте таблицу запроса.

Запрос с параметром по нескольким таблицам.

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

Сначала создаётся простой запрос по таблицам Тренеры и Виды спорта:

– Выделив в окне БД объект Запросы, щелкните по кнопке Создать;

– Выберите Простой запрос и щелкните по кнопке ОК; Выберите таблицу Тренеры и перенесите поля Фамилия, Имя, Отчество, Должность, Зарплата в окно Выделенные поля.

– В таблице Виды спорта перенесите поле Название дисциплины;

Тем самым сформировано шесть полей запроса – они связаны между собой посредством схемы данных;

– Нажмите кнопку Далее, затем в следующем окне снова щелкните по кнопке Далее;

– В появившемся окне введите имя запроса Фамилия-Дисциплина, затем щелкните в кружке Изменить макет запроса (в ней появится черная точка) – это позволит сразу перейти в режим конструктора;

– Нажмите кнопку Готово;

Вводим параметры запроса:

– В строке Условия отбора для поля Название дисциплины введите фразу: [Введите название дисциплины], для поля Фамилия – фразу [Введите фамилию], скобки тоже вводить;

– Выполните запрос (через Запрос Запуск или [!]);

– В первом появившемся окне введите Бокс, щелкните по кнопке ОК, во втором – введите Лапин, щелкните по кнопке ОК. На экране появится таблица со строкой (табл. 1):

Название дисциплины Фамилия Имя Отчество Должность Зарплата
Бокс Лапин Илья Фомич Старший тренер 5890р.

– Сохраните запрос и закройте таблицу запроса.

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

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

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

Создание перекрестного запроса. Для этого:

Читайте также:  Замена терморегулятора на батарее отопления

– На вкладке Запросы щелкните по кнопке Создать;

– Выберите Перекрестный запрос и щелкните по кнопке ОК;

– Щелкните по ячейки Запросы, выберите Зарплата тренеров и щелкните по кнопке Далее;

– Выберите поле Название дисциплины и щелкните по кнопке Далее;

– Из полей Должность и Зарплата выделите поле Зарплата, нажмите кнопку Далее;

– Выберите функцию Среднее и щелкните по кнопке Далее;

– Введите название запроса Средняя зарплата и нажмите кнопку Готово. Откроется таблица перекрестного запроса. Обратите внимание на то , что Access создает еще итоговое значение средних оценок по дисциплинам;

– Закройте таблицу запроса.

Не нашли то, что искали? Воспользуйтесь поиском:

Лучшие изречения: При сдаче лабораторной работы, студент делает вид, что все знает; преподаватель делает вид, что верит ему. 9529 – | 7348 – или читать все.

91.146.8.87 © studopedia.ru Не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования. Есть нарушение авторского права? Напишите нам | Обратная связь.

Отключите adBlock!
и обновите страницу (F5)

очень нужно

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

запросы к серверу, которые используются для выборки данных с сервера;

запросы на автоподстановку, автоматически заполняющие поля для новой записи;

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

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

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

другие типы запросов.

Запросы и фильтры

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

Основные отличия запросов и фильтров заключаются в следующем.

Фильтры не позволяют в одной строке отображать данные из нескольких таблиц, т. е. объединять таблицы.

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

Фильтры не могут быть сохранены как отдельный объект в окне базы данных (они сохраняются только в виде запроса).

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

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

для просмотра подмножества записей таблицы без предварительного открытия этой таблицы или формы;

для того чтобы объединить в виде одной таблицы на экране данные из нескольких таблиц;

для просмотра отдельных полей таблицы;

для выполнения вычислений над значениями полей.

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

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

Существует два варианта построения: в режиме Мастера и в режиме Конструктора.

Создание запроса в режиме Мастера.

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

в основном окне базы данных необходимо выбрать объект Запросы, затем на панели инструментов основного окна нажать кнопку Создать и в открывшемся диалоговом окне Новый запрос (рис. 12) выбрать строку Простой запрос:

Рис. 12. Окно Новый запрос

мастер запросов можно вызвать сразу, если в объекте Запросы щелкнуть по надписи Мастер запросов.

В обоих случаях будет открыто диалоговое окно Создание простых запросов для выбора полей (рис. 13)

Рис. 13. Окно Создание простых запросов. Шаг первый

В окне списка Таблицы и запросы надо выбрать таблицу, из которой будут отбираться данные, после чего в окне Доступные поля автоматически появится список полей выбранной таблицы. Нужные поля отбираются в окно Выбранные поля с помощью стрелок, расположенных между окнами (одинарная стрелка переносит одно выделенное поле в одну или другую сторону, двойная – переносит все). Кнопка Далее позволит перейти на следующий шаг работы мастера (рис. 15).

Кнопка Далее откроет окно второго шага (рис. 15).

Рис. 15. Окно Создание простых запросов. Шаг третий

В последнем окне необходимо задать имя запроса. Кнопка Готово выведет на экран запрос в режиме таблицы (рис. 16)

Рис. 16. Новая таблица, созданная мастером запросов

Создание запроса в режиме Конструктора (основной режим построения)

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

Так же как и в мастере запросов, открытие запроса в режиме Конструктора происходит двумя способами:

Читайте также:  Dexp ixion 350 характеристики

в основном окне базы данных необходимо выбрать объект Запросы, на панели инструментов основного окна нажать кнопку Создать и в окне Новый запрос выбрать строку Конструктор. Кнопка ОК в этом случае откроет два окна: Запрос 1: запрос на выборку и Добавление таблицы;

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

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

К выбору таблиц нужно отнестись внимательно, так как вместо данных в них могут находиться коды. Лучше всего ориентироваться на таблицы, в которые информация вносится впервые. Например, нужно знать название товара и его количество. Эти данные находятся в таблице Поставка товара, однако название товара здесь представлено в виде кода, поэтому для отбора данных потребуется две таблицы: Товар и Поставка товара.

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

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

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

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

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

В результате всех действий запрос в режиме Конструктора примет вид, представленный на рис. 17

Рис. 17. Создание запроса в режиме Конструктора

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

После проверки запроса окно построителя закрывается. При этом появится сообщение о сохранении запроса. Если содержащиеся в нем данные будут использованы в дальнейшем, запрос надо сохранить, присвоив ему индивидуальное имя. В основном окне базы данных в объекте Запросы появится новый запрос.

Открытие запроса производится двойным щелчком мыши по названию. Запрос открывается в режиме таблицы.

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

Запросы с параметрами работают по двум вариантам:

отбор данных происходит в отдельном диалоговом окне. Такие диалоговые окна существуют в любой справочной системе, где вводится вопрос, и программа ищет ответ;

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

Диалоговое окно для запроса

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

Любой запрос начинается с создания простого запроса, а так как предстоит дополнительная работа, то создавать его лучше в режиме Конструктора.

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

После слова «введите» указывается название поля (рис. 18).

Рис. 18. Создание запроса с параметром

При проверке или запуске запроса открывается диалоговое окно Введите значение параметра (рис. 19), в котором пользователю предлагают ввести параметры. Какой параметр внести, указано на сером фоне окна, а в текстовом окне мигает курсор, дожидаясь ввода данных с клавиатуры.

Рис. 19. Диалоговое окно Введите значение параметра

После ввода параметра в диалоговом окне Введите значение параметра нажмите ОК, и на экране появится таблица с выбранными параметрами (рис. 20).

Рис. 20. Результат действия запроса с параметром

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

Отбор данных в таблице запроса

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

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

Рис. 21. Создание итогового запроса

Функции в раскрывающемся списке имеют краткое обозначение (табл. 11).

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *