Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lab_raboty_PPP_60_sht.doc
Скачиваний:
10
Добавлен:
01.05.2025
Размер:
22 Мб
Скачать
☆

Лабораторная работа № 33

Наименование: Конструирование и обработка запросов средствами СУБД Access.

1. Цель работы:

1.1. Научиться использовать запросы для работы с данными.

2. Подготовка к работе:

3.1. Изучить предложенную литературу.

3.2. Подготовить бланк отчёта.

3. Литература:

2.1. Фуфаев Э.В., Фуфаев Д.Э. Пакеты прикладных программ: учебник для студ. сред. проф. образования / под ред. Э.В. Фуфаев, Д.Э. Фуфаев. – Москва: Издательский центр «Академия», 2008. – 256 с.

2.2. Кунтаева Г.Х., Строева Л.Р. Конспект лекций по МДК 03.03: «Пакеты прикладных программ».

4. Перечень необходимого оборудования: 4.1. Персональный IBM PC.

5. Задание на работу:

5.1. Вывести товары, которые заказал "Иванов".

5.2. Вывести какие товары и кто заказал 21.10.09.

5.3. Вывести товары и цену, вес которых равен 1000.

5.4. Вывести список выполненных товаров.

5.5. Вывести цену товара, который отправился в Волгоград.

5.6. Вывести ФИО заказчика, у которого есть специальное образование.

5.7. Вывести наименование товара, который отправился в Москву и превышающий цену 20 рублей.

5.8. Вывести ФИО заказчиков, которые заказали чай

5.9. Вывести наименование товара, у которых количество больше 700,но меньше 2200.

5.10. Вывести заказчика под кодом "324" и товар под кодом "92".

6. Порядок проведения лабораторной работы:

6.1. Получить допуск к работе.

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

6.3. Ответить на контрольные вопросы.

6.4. Оформление отчета.

7. Содержание отчета:

7.1. Наименование и цель работы.

7.2. Ответы на контрольные вопросы.

7.3. Выводы о проделанной работе.

8. Контрольные вопросы:

8.1. Какими запросами можно воспользоваться для изменения данных.

8.2. Как можно предварительно просмотреть запрос, не выполняя его.

8.3. На основе какого запроса строятся запросы на обновление, добавление и удаление.

Приложение

Конструктор запросов

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

  1. Выбрать объект Запросы.

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

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

Перейти к объекту Запросы в окне базы данных и вызвать команду СОЗДАНИЕ ЗАПРОСА В РЕЖИМЕ КОНСТРУКТОРА.

Появится диалоговое окно "Добавление таблицы", в котором перечислены все таблицы базы данных.

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

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

Теперь необходимо добавить те поля, с которыми вам предстоит работать.

  1. Щёлкните строку Имя таблицы в первом пустом столбце. Появится стрелка, показывающая наличие спускающегося списка.

  2. В спускающемся списке выберите таблицу

  3. Щёлкните строку Поле прямо над именем таблицы, которую вы выбрали. Появится стрелка спускающегося списка.

  4. В этом списке выделите поле. Его имя появится в строке поле и будет расположено в том столбце, где вы его выделили.

Другой способ добавить поля:

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

  2. Щёлкните имя поля и перетащите его в строку Поле первого пустого столбца.

Добавление условий отбора

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

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

Для формирования условий отбора используются операторы сравнения >, >=, <, <= и <>. Операции сравнения могут связываться логическими операциями And (И) и Or (ИЛИ). Для этих же целей используется оператор диапазона Between <нижнее_значение> and <верхнее_значение>. Например, выбор книг стоимостью от 100 до 200 рублей может быть реализован через ввод в запросе условия в поле Стоимость в виде >=100 and <=200 или Between 100 and 200.

Перечень значений в условии выборки можно задать и оператором In (значение, значение, ...). Например, выбор студентов факультетов МТФ или ФАПУ можно реализовать, указав в поле Факультет запроса условие In ("МТФ", "ФАПУ"). Это же условие можно записать и через операцию ИЛИ: "МТФ" or "ФАПУ". Также можно указать одно название факультета в строке Условие отбора (см. рис. 9.1), а второе - в следующей строке или. Число строк или не ограничено.

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

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

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

В таких запросах ввод условий отбора производится пользователем при каждом запуске запроса. Для организации запроса с параметрами необходимо в строке Условие отбора вместо самого условия в квадратных скобках ввести текст приглашения на его ввод:

[<текст приглашения>].

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

Вычисления в запросах

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

<Название формируемого поля>:<выражение>

В <выражении> можно использовать знаки арифметических операций, круглые скобки и имена полей в []. Например, стоимость партии можно вычислить по выражению:

Стоимость партии:[количество товара]*[стоимость единицы товара].

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

Стоимостьпартии:[количество_товара]*[Товар]![стоимость_единицы_ товара].

В этой формуле [Товар] – имя таблицы.

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

Для просмотра результатов запроса необходимо вызвать команду ЗАПРОС, ЗАПУСК или щёлкнуть на кнопке ЗАПУСК на панели инструментов. Результаты появятся в окне, похожем на таблицу.

Запросы с групповыми операциями

В СУБД Access существует возможность задать запросы с групповыми операциями, что позволяет находить интегральные показатели для групп записей в таблице. Каждая такая группа характеризуется одинаковым значением по какому-то полю, например, одинаковым названием отдела или семейным положением. Для перехода в данный режим запросов необходимо в панели инструментов нажать кнопку ГРУППОВЫЕ ОПЕРАЦИИ , что приведет к появлению в бланке запроса новой второй строки с одноименным названием. В ячейках данной строки указывается или режим группировки по некоторому полю (опция Группировка), или название групповой операции:

  • Sum - сумма значений;

  • Avg - среднее значение по данному полю для всей группы;

  • Count - число записей в данной группе;

  • Max - максимальное значение поля в каждой группе;

  • Min - минимальное значение поля в каждой группе;

  • First - первое значение данного поля в каждой группе;

  • Last - последнее значение данного поля в каждой группе и др.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]