Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Создание запроса-выборки.

Запросы

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

Зачем нужны запросы?

- Отобрать поля. Необязательно включать в запрос все поля таблицы. Например, можно создать запрос, который показывает только фамилии и номера телефонов клиентов и не показывает адреса и прочие сведения.

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

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

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

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

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

- Изменять табличные данные.

По способу создания различают 2 типа запросов: запросы по образцу (QBE - queries by example) и структурированный язык запросов (SQL - Structured Query Language -).

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

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

Однако все запросы Access строит на основе соответствующего SQL-запроса. Когда пользователь создает запрос в режиме конструктора запроса, Microsoft Access автоматически создает эквивалентную инструкцию SQL. Пользователь имеет возможность просматривать и изменять инструкции SQL в режиме SQL.Чтобы просмотреть его, необходимо в активном окне проектирования запроса дать команду Вид→SQL.

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

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

Различают запросы выборки и запросы-изменения. Существует 4 типа запросов-изменений:

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

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

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

Запрос на обновление записей изменяет данные в группе записей.

Запросы-выборки.

Создание запроса-выборки.

Создание запроса - С помощью мастера и конструктором запросов.

Последовательность создания запроса с помощью Конструктора:

1) В окне БД выбрать вкладку «Запросы» и щелкнуть кнопку «Создать»; при этом откроется окно диалога «Новый запрос»

2) Выбрать опцию «Конструктор» и нажать кнопку «ОК»; при этом открывается окно диалога «Добавление таблицы». В нем нужно выбрать имена таблиц-источников, на основе которых будет производиться выбор данных, и щелкнуть кнопку «Добавить.

3) Закрыть окно диалога «Добавление таблицы» кнопкой «Закрыть», окно Конструктора «Запрос на выборку» станет активным.

С помощью инструментария окна Конструктора формируем запрос:

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

2) выбираем поля результатов запроса (перетаскиванием в нижнюю часть окна Конструктора);

3) указываем критерии для выборки, группирования и упорядочения данных.

Окно Конструктора запросов состоит из 2 частей.

 

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

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

«Поле» - указываются имена полей, которые участвуют в запросе;

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

«Сортировка» - указывается тип сортировки;

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

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

Последовательность заполнения бланка запроса:

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

2) Задать способ сортировки. Курсор мыши перевести в строку «Сортировка», в соответствующем имени поля появится кнопка раскрывающегося списка, щелкнуть по ней и выбрать способ сортировки.

3) В строке «Вывод на экран» автоматически устанавливается флажок просмотра найденной информации в поле (для отмены вывода на экран следует снять флажок)

4) В строке «Условие отбора» и размещенного ниже «ИЛИ» ввести критерии поиска (об этом ниже)

5) После завершения формирования запроса закрыть окно «запрос на выборку», сохранив его под определенным именем.

Можно просмотреть результат выполнения запроса, не закрывая окно Конструктора и не сохраняя запрос. Для этого выполнить Вид→Режим таблицы (или кнопка на панели инструментов Конструктор запросов)

Связывание таблиц

Если в запрос включено несколько таблиц, как в нашем случае, МА должен знать, как именно следует объединить данные из этих таблиц.

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

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

Связь между таблицами можно установить и вручную

Для этого:

Выделите поле в одной таблице и перенесите его к полю в другой таблицы, с которым его следует объединить.

Чтобы удалить объединение таблиц необходимо выделить соответствующую линию объединения и нажать клавишу Del.

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

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

Чтобы произвести выборку записей, согласно каким-то условиям определите их в строке “Условие отбора”.

В нашем случае из таблицы Товары следует выбрать поля Тип, Название, Цена, а из таблицы Заказы поля Количество, Цена и ФИО.

Запрос будет выглядеть следующим образом:

Поле: Тип Название Количество Цена ФИО
Сортировка:          
Вывод на экран + + + +  
Условие отбора         Орехов Виктор Павлович
или          
           

Для просмотра результата выполнения запроса выполните в меню Вид команду Таблица.

В процессе выполнения запроса МА соберёт данные в динамический набор.

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

<== предыдущая лекция | следующая лекция ==>
 | Вычисление итоговых значений.


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

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных