Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практика Microsoft Access.doc
Скачиваний:
85
Добавлен:
28.05.2015
Размер:
4.39 Mб
Скачать

Практическое занятие № 2

Тема занятия: Работа с запросами на выборку в базе данных Microsoft Access

Цели занятия:

  1. научиться создавать простые запросы на выборку и запросы с параметром;

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

Формулировка задания

  1. Создать простые запросына выборку:Запрос1Запрос8.

  2. Создать запросы с параметром: Запрос9Запрос11.

  3. Создать запросы с вычисляемыми полями: Запрос12Запрос13.

Технология выполнения задания

  1. В окне Кадры: база данных откройте панель Запросы.

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

Имя запроса

Включаемые в запрос поля

Какую задачу решает запрос

Запрос1

КодСотрудника

Фамилия

Имя

Отчество

Должность

Оклад

Выбирает из таблицы СОТРУДНИКИ информацию о сотрудниках, работающих в должности «менеджер». Выполняет сортировку записей по полюФамилия по возрастанию.

  • Для создания запроса Запрос1 дважды щелкните на значке Создание запроса в режиме Конструктора — откроется бланк запроса по образцу. Одновременно с ним откроется диалоговое окно Добавление таблицы.

  • В окне Добавление таблицы выберите таблицу СОТРУДНИКИ и щелкните на кнопке Добавить. Закройте окно Добавление таблицы.

  • В спискеполейтаблицы СОТРУДНИКИ выберите поля, включаемые в результирующую таблицу запроса:КодСотрудника, Фамилия, Имя, Отчество, Должность, Оклад. Выбор производится двойным щелчком на имени поля.

  • Задайте условие отборадля поляДолжность: в строкуУсловие отборадля поляДолжностьвведите текст «менеджер».

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

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

  1. В окне Кадры:база данных двойным щелчком мыши по имени запроса откройте только что созданный запрос, проанализируйте результирующую таблицу. Ее содержание зависит от того, что было введено в таблицу СОТРУДНИКИ при ее заполнении данными.

  2. По аналогии с предыдущим создайте Запрос2.

Имя запроса

Включаемые в запрос поля

Какую задачу решает запрос

Запрос2

КодСотрудника

Фамилия

Имя

Отчество

Должность

Выбирает из таблицы СОТРУДНИКИ информацию о сотрудниках, работающих в должности «бухгалтер», фамилия которых начинается с буквы «И».

  • В поле Должностьзадайте условие отбора «бухгалтер». В полеФамилиязадайте условие отбора «И*» (символ*в условии отбора обозначает любое количество произвольных символов, в нашем случаеИ*означает, что первая буква фамилии равна «И», а остальные буквы могут быть любыми).

  1. Создайте Запроса3 по данным из двух взаимосвязанных таблиц СОТРУДНИКИ и ЛИЧНЫЕ_ДАННЫЕ.

Имя запроса

Включаемые в запрос поля

Какую задачу решает запрос

Запрос3

Фамилия

Имя

Отчество

Адрес

Телефон

ДатаРождения

Выбирает из таблиц СОТРУДНИКИ и ЛИЧНЫЕ_ДАННЫЕ информацию о сотрудниках, дата рождения которых находится в диапазоне от01.01.80до31.12.89 (если в Вашей таблице ЛИЧНЫЕ ДАННЫЕ заданы другие даты рождения, можно указать в условии отбора другой диапазон дат).

  • Дважды щелкните на значке Создание запроса в режиме Конструктора. В окне Добавление таблицы выберите таблицы СОТРУДНИКИ и ЛИЧНЫЕ_ДАННЫЕ.

  • Выберите поля, включаемые в запрос, и задайте условия отбора записей. В строке Условие отбора для поля ДатаРождения введите: Between 01.01.1980 And 31.12.1989. После завершения ввода условие примет вид: Between #01.01.1980# And #31.12.1989#

  1. Закройте бланк запроса по образцу. При закрытии запроса введите его имя - Запрос3.

  2. Выполните запрос (двойной щелчок на имени запроса в окне базы данных).

  3. Создайте и выполните запросы Запрос4:

Имя запроса

Включаемые в запрос поля

Какую задачу решает запрос

Запрос4

КодСотрудника

Фамилия

Имя

Отчество

Должность

Оклад

ДатаНазначения

Выбирает из таблицы СОТРУДНИКИ информацию о сотрудниках, работающих в должности «бухгалтер» или «менеджер», имеющих оклад больше 5000 рублей, дата назначения которых на должность находится в диапазонеот 01.01.2005 до 31.12.2005

  • в строкеУсловие отборадля поляДолжностьвведите условиебухгалтер OR менеджер;

  • в строкеУсловие отборадля поляОкладвведите условие>5000;

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

  • Закройте бланк запроса по образцу. При закрытии запроса введите его имя – Запрос4.

  • Выполните запрос.

  1. Создайте и выполните запросы Запрос5:

Запрос5

Фамилия

Имя

Отчество

Должность

Адрес

Телефон

ДатаРождения

Выбирает из таблиц СОТРУДНИКИ и ЛИЧНЫЕ_ДАННЫЕ информацию о сотрудниках, номера телефонов которых начинаются с цифры «2», родившихсядо 01.01.80

  • в строкеУсловие отборадля поляТелефонвведите условие2*, что означает«первый символ 2, остальные символы могут быть любыми».

  • в строкеУсловие отборадля поляДатаРождениявведите условие<01.01.80

  • Закройте бланк запроса по образцу. При закрытии запроса введите его имя – Запрос5.

  • Выполните запрос.

  1. Создайте и выполните запрос Запрос6:

Запрос6

КодСотрудника

Фамилия

Имя

Отчество

Должность

ДатаНазначения

Выбирает из таблицы СОТРУДНИКИ информацию о сотрудниках, либо работающих в должности «менеджер», либо принятых на работу до 01.01.90, либо подпадающих под оба эти условия

  • в строкеУсловие отборадля поляДолжностьвведите условиеменеджер;

  • в строкеИлидля поляДатаНазначениявведите условие<01.01.90. Условия, введенные на разных строках приводят к тому, что из таблицы СОТРУДНИКИ будут выбраны строки, которые удовлетворяютхотя бы одному их двух условий.

  • Закройте бланк запроса по образцу. При закрытии запроса введите его имя – Запрос6.

  • Выполните запрос.

  1. Создайте и выполните запрос Запрос7:

    Запрос7

    Фамилия

    Имя

    Отчество

    Должность

    Город

    ДатаОтъезда

    ДатаПриезда

    Выбирает из таблиц СОТРУДНИКИ и КОМАНДИРОВКИ информацию о сотрудниках, работающих в должности «инженер» и выезжавших в командировку вгород Москва

  2. Создайте и выполните запрос Запрос8 (запрос с параметром):

Имя запроса

Включаемые в запрос поля

Какую задачу решает запрос

Запрос8

КодСотрудника

Фамилия

Имя

Отчество

Должность

ДатаНазначения

Выбирает из таблицы СОТРУДНИКИ информацию о сотрудниках, работающих в некоторой должности, которые были приняты на работув 2004 году. При этом конкретное значениедолжностивводится при выполнении запроса.

  • Дважды щелкните на значке Создание запроса в режиме Конструктора. В окне Добавление таблицы выберите таблицу СОТРУДНИКИ.

  • Выберите поля, включаемые в запрос, и задайте условия отбора записей. В строке Условие отбора для поля ДатаНазначения введите условие: Between 01.01.2004 And 31.12.2004. Для поля Должность введите условие на ввод параметра так, как показано на рисунке:

  • Закройте бланк запроса по образцу. При закрытии запроса введите его имя - Запрос8.

  • Выполните запрос. При выполнении откроется диалоговое окно для ввода значения параметра. Введите одно из названий должностей, которые есть в Вашей таблице СОТРУДНИКИ. Введенное значение будет использовано как критерий отбора записей из таблицы наряду с условием, введенным для поля ДатаНазначения.

Из таблицы СОТРУДНИКИ будут выбраны только те строки, в которых ДатаНазначения попадает в заданный диапазон значений иДолжностьсовпадает с той, которую Вы ввели в диалоговом окне.

  1. Создайте и выполните запрос Запрос9 (запрос с параметром – диапазоном):

Имя запроса

Включаемые в запрос поля

Какую задачу решает запрос

Запрос9

Фамилия

Имя

Отчество

ДатаРождения

Выбирает из таблиц СОТРУДНИКИ и ЛИЧНЫЕ_ДАННЫЕ информацию о сотрудниках, родившихся в некоторый период времени.Нижняя и верхняя границы периода времени вводятся при выполнении запроса.

  • Дважды щелкните на значке Создание запроса в режиме Конструктора. В окне Добавление таблицы выберите таблицы СОТРУДНИКИ и ЛИЧНЫЕ_ДАННЫЕ.

  • Выберите поля, включаемые в запрос, и задайте условия отбора записей. В строке Условие отбора для поля ДатаРождения введите условие: Between [Нижняя граница] And [Верхняя граница]

  • Выполните запрос. Привыполнениизапроса сначала появится диалоговое окно для ввода нижней границы диапазона значений поляДатаРождения, затем — для ввода верхней границы. Эти значения будут использованы для определения кодов сотрудников в таблице ЛИЧНЫЕ_ДАННЫЕ, даты рождения которых попадают в заданный диапазон. По этим кодам будут отбираться данные из таблицы СОТРУДНИКИ.

  1. Создайте и выполните запросы Запрос10, Запрос11.

Имя запроса

Включаемые в запрос поля

Какую задачу решает запрос

Запрос10

КодСотрудника

Фамилия

Имя

Отчество

Город

ДатаОтъезда

ДатаПриезда

Выбирает из таблиц СОТРУДНИКИ и КОМАНДИРОВКИ информацию о сотрудниках, которые были в командировке в некотором городе в 2004 году.Название города вводится при выполнении запроса.

Запрос11

КодСотрудника

Фамилия

Имя

Отчество

Должность

Оклад

Выбирает из таблицы СОТРУДНИКИ информацию о сотрудниках, работающих в должности «менеджер» и имеющихОклад в пределах некоторого диапазона. При этом конкретные значение границ диапазонавводятся при выполнении запроса.

  1. Создайте и выполните запрос Запрос12:

Имя запроса

Включаемые в запрос поля

Какую задачу решает запрос

Запрос12

КодСотрудника

Фамилия

Имя

Отчество

Оклад

Налог

СуммаКвыдаче

Вычисляет для каждого сотрудника НалогиСуммуКвыдачепо формулам:

Налог:[Оклад]*0,1

СуммаКвыдаче: [Оклад]—[Налог]

  • Для создания Запроса12 (запрос с вычисляемыми полями) дважды щелкните на значке Создание запроса в режиме Конструктора. В окне Добавление таблицы выберите таблицу СОТРУДНИКИ.

  • Выберите поля, включаемые в запрос.

  • В новом поле бланка запроса в строке Поле введите формулу Налог:[Оклад]*0,1.

  • В следующем поле введите формулу СуммаКвыдаче: [Оклад]-[Налог]

  1. Сохраните и выполните запрос.

  2. Создайте и выполните запросы Запрос13 (запрос с вычисляемыми полями):

    Имя запроса

    Включаемые в запрос поля

    Какую задачу решает запрос

    Запрос13

    КодСотрудника

    Фамилия

    Имя

    Отчество

    Должность

    Оклад

    Премия

    Вычисляет для сотрудников, работающих в должности «менеджер», размер премии по формуле:

    Премия: [Оклад]*0,5

  3. Предъявите результат работы преподавателю.

Итоги занятия

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