Отображение или скрытие поля в результатах запроса



Занятие 4

MS Access 2010

Отбор данных из базы данных с помощью запросов

 

 

По окончании данного занятия вы сможете:

ü Создавать запрос на выборку.

ü Сортировать записи в запросе.

ü Задавать условия отбора записей в запросе.

ü Изменять запрос.

ü Создавать запрос с параметром.

 


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

· В окне базы данных выбрать вкладку Создание.

· Выполнить команду Конструктор запросов.

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

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

· Выбрать кнопку Добавить.

Список полей выбранной таблицы появится в окне запроса.

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

· Выбрать кнопку Закрыть.

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

Окно запроса имеет следующий вид:

· Добавить поля в запрос. Для этого необходимо:

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

Для выделения группы полей, используется клавиша Shift, для выделения полей, расположенных не подряд клавиша Ctrl Для выделения всех полей таблицы достаточно выделить знак *.

o перенести имя поля или группу полей при помощи мыши в свободную ячейку строки Поле бланка запроса.

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

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

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

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

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

Для обратного переключения в режим конструктора запроса нужно выбрать на вкладке Главная в группе Режимы команду Конструктор запросов.

 

 

: Задание 1.

Откройте базу данных База.Ваша фамилия, созданную ранее.

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

Выполнение задания.

1. В окне базы данных выберите группу Запросы.

2. Выберите в окне базы вкладку Создание.

3. В группе Запросы выберите Конструктор запросов.

4. Выделите в диалоговом окне Добавление таблицы на вкладке Таблицы таблицу Клиенты.

5. Щелкните кнопку Добавить.

6. Аналогичным образом добавьте в запрос таблицы Сотрудники  и Договоры.

7. Щелкните кнопку Закрыть.

8. Выделите в списке полей таблицы Клиенты поле Название:

9. Перенесите имя поля при помощи мыши в крайнюю левую ячейку строки Поле бланка запроса.

10. Добавьте в бланк запроса поле Сотрудник из таблицы Сотрудники:

11. Переключитесь в режим таблицы, щелкнув кнопку Режим , и выберите Режим Таблицы.

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

12.  Переключитесь обратно в режим конструктора запросов, щелкнув кнопку Режим и выбрав Конструктор.

Сортировка записей в запросе

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

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

· Переключиться в режим конструктора запроса.

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

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

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

· Повторять два предыдущие действия для всех полей, по которым требуется отсортировать записи.

: Задание 2.

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

Выполнение задания.

1. В строке Сортировка для поля Сотрудник в раскрывающемся списке выбрать направление сортировки По возрастанию.

 

2. Переключитесь в режим таблицы.

3. Переключитесь обратно в режим конструктора запросов.

Определение условий отбора записей

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

Примеры условий отбора:

Условие Возможные виды выражения
Записи, содержащие значение Россия Россия =Россия "Россия" ="Россия"
Записи, содержащие значения, начинающиеся с буквы М М* "M*" Like "M*"
Записи, содержащие значение 100 100 =100
Записи, содержащие значение, большее 100 и меньшее 200 >100 And <200
Записи, содержащие дату 1 декабря 1997 года или более раннюю <=1 декабря 1996 <=1-дек-1996 <=1.12.96 <=01/12/96 <=#01/12/96#

Для того чтобы определить условие отбора записей для запроса, нужно:

· Переключиться в режим конструктора запроса.

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

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

· Повторять два предыдущие действия для всех полей, для которых требуется задать условия. Условия, находящиеся на одной строке рассматриваются как объединенные оператором And (и).

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

: Задание 3.

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

Выполнение задания.

1. В бланке запроса перейдите в ячейку строки Условие отбора поля Сотрудник.

2. Введите условие Like *Серебряков*

3. Для поля Дата заключения введите условие >1.01.2018

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

5. Переключитесь обратно в режим конструктора запроса.

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

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

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

· Ввести имя запроса в поле Имя запроса.

· Выбрать кнопку ОК. Имя сохраненного запроса появится в окне базы данных на вкладке Запросы.

: Задание 4.

Сохраните запрос под именем Запрос по договорам.

Выполнение задания.

1. Щелкнуть по кнопке Сохранить.

2. Введите в поле Имя запроса имя запроса - Запрос по договорам.

3. Щелкните кнопку ОК.

Закрытие запроса

Для того чтобы закрыть запрос нужно:

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

· Выбрать нужную кнопку:

Да, если необходимо сохранить;

Нет, если запрос сохранять не нужно.

: Задание 5.

Самостоятельно закройте запрос Запрос по договорам.

: Задание 6.

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

2. Перейдите в режим конструктора.

Изменение запроса

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

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

Добавление и удаление таблиц

Для того чтобы добавить таблицу в запрос, нужно:

· Переключиться в режим конструктора запроса.

· Выбрать в группе Работа с запросами группу Настройка запроса и выполнить команду Отобразить таблицу. Появится диалоговое окно Добавление таблицы.

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

· Щелкнуть дважды мышью или выбрать кнопку Добавить.

· Повторять два последние действия для всех таблиц, которые необходимо добавить в запрос.

· Выбрать кнопку Закрыть.

: Задание 7.

Добавьте в запрос таблицы Договоры и Сотрудники.

Выполнение задания.

1. В группе Настройка запроса выполните команду Отобразить таблицу.

Появится диалоговое окно Добавление таблицы.

2. Откройте вкладку Таблицы, если открыта другая.

3. Щелкните дважды мышью по имени таблицы Договоры, затем по таблице Сотрудники.

4. Выберите кнопку Закрыть.

Для удаления таблицы из запроса нужно:

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

· Нажать клавишу Del.

: Задание 8.

Самостоятельно удалите из запроса таблицу Сотрудники.

Добавление полей в запрос

Для того чтобы добавить в запрос поле, нужно:

· Переключиться в режим конструктора запроса.

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

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

: Задание 9.

Добавьте в запрос поля Номер договора из таблицы Договоры и поле Обращаться к из таблицы Клиенты, разместив их соответственно в первом и втором столбцах бланка запроса.

Выполнение задания.

1. Выделите в списке полей таблицы Договоры имя поля Номер договора.

2. Перенесите выделенное имя поля при помощи мыши в первый столбец бланка запроса.

3. Самостоятельно разместите во втором столбце бланка запроса поле Обращаться к из таблицы Клиенты.

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

5. Переключитесь в режим конструктора.

Удаление полей из запроса

Для того чтобы удалить поле из запроса, нужно:

· Переключиться в режим конструктора запроса.

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

· Нажать клавишу Del.

: Задание 10.

Самостоятельно удалите из запроса поле Обращаться к.

Отображение или скрытие поля в результатах запроса

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

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

После закрытия запроса все скрытые поля автоматически перемещаются в правые столбцы бланка.

: Задание 11.

Самостоятельно отмените в запросе вывод на экран поля Город.


Дата добавления: 2018-11-24; просмотров: 621; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!