Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
сборник ЛР по ИТ.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
11.52 Mб
Скачать

Запросы

Запросэто средство выбора данных из одной или несколь­ких таблиц. Результат запроса — это набор строк и столбцов. Выбранные данные могут быть упорядочены и сгруппированы. Запрос может включать какие-либо расчеты.

Рассмотрим создание запроса в «Конструкторе».

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

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

В строке «Имя таблицы» можно выбрать нужную таблицу раскрывающегося списка.

Разберем создание формулы на примере:

Итого:[Товары]![Цена]*[Товары]![Количество].

«Итого» — это имя поля-результата, затем идет двоеточие, имени таблиц и полей записываются в квадратных скобках. Надпись [Товары]![Цена] означает, что поле «Цена» выбирается из таблицы «Товары».

То есть если наш запрос формируется по одной таблице «Товары, то формулу можно записать в сокращенном виде:

Итого:[Цена]*[Количество].

Формула может включать числа, например:

Налог:[Цена]*0,05,

Полей «Итого» и «Налог» физически нет в таблице, они являют­ся вычисляемыми и рассчитываются всякий раз при выполнении за­проса.

Сортировка может быть по возрастанию, по убыванию, отсутство­вать.

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

Условие отбора задает условие отбора по конкретному полю.

Например, отберем записи с «Ценой» больше 30.

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

Например, пусть пользователь сам введет значение цены.

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

данных вами таблиц. Для этого необходимо выполнить следующие действия:

  • войти в Access;

  • открыть вашу базу данных;

  • создать запрос, выводящий информацию о том, сколии» заказано данного товара и какими клиентами;

  • создать запрос для отбора товаров со стоимостью боль" 30 или количеством больше 50;

  • создать запрос для отбора данных о клиентах, которые казали больше 10 единиц какого-либо товара.

Задание 1. Ознакомьтесь с пояснениями к работе

Задание 2.

Вариант 1. Создайте базу данных Склад, содержащую таблицы Товары, Клиенты, Заказы

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

1. Загрузите Access, выполнив соответствующую команду меню Пуск Программы.

2. В окне Microsoft Access выберете «Новая база данных» и нажмите «ОК».

На экране появится окно диалога «Файл новой базы данных», и Access предложит вам имя базы данных dbf1 или dbf2 и т.д. Задайте имя новой базы данных «Склад». Нажмите «Создать».

Появится окно базы данных.

3. Приступим к созданию таблицы «Товары». Перейдите на вкладку «Таблицы» и щёлкните по кнопке «Создать». В окне «Новая таблица» выберите режим создания таблицы «Конструктор», нажмите «ОК».

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

Сделайте поле «Номер товара» ключевым: щёлкните правой кнопкой по полю «Номер товара» и выберите в контекстном меню «Ключевое поле».

4. Сохраните таблицу:

  • в ыберите из меню «ФайлСохранить»;

  • в появившемся меню напишите имя таблицы «Товары»;

  • нажмите «ОК»

В окне базы данных появилась новая таблица «Товары».

5. Аналогично создайте таблицу «Заказы», воспользовавшись режимом «Конструктор».

Н азначьте поле «Номер заказа» ключевым полем. Сохраните таблицу.

6. Создайте таблицу «Клиенты» при помощи режима «Таблица».

На вкладке «Таблицы» щёлкните по кнопке «Создать». В окне «Новая таблица» выберите режим «Таблицы». Перед вами появилась пустая таблица, состоящая из двадцати столбцов с именами Поле1, Поле2 и т.д. Дважды щёлкните на Поле1. Текст в поле будет выделен. Введите слово «Фамилия» и нажмите Enter. В Поле2 введите «Адрес», в Поле3 – «Телефон». Поле «Ключевое поле» «Номер клиента» будет добавлено позже. Отрегулируйте ширину столбцов: подведите мышь к вертикальной черте между названиями полей, зажмите левую кнопку мыши и, не отпуская кнопку, передвиньте мышь. Введите первую запись.

7. Выберите из меню «ФайлСохранить». Задайте имя таблицы «Клиенты», нажмите «ОК».

8. Появится окно диалога, предупреждающее о том, что ключевые поля не определены. Ответьте «Да».

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

9. Занесите данные в таблицы.

Начнём с таблицы «Клиенты». Щёлкните сначала по слову «Клиенты», а затем по кнопке «Открыть». Внесите данные ещё о четырёх клиентах, например:

Закройте таблицу «Клиенты» и сохраните изменения.

Аналогично занесите 8 различных товаров в таблицу «Товары».

Занесите данные в таблицу «Заказы». Обратите внимание: номера товаров должны совпадать с номерами товаров из таблицы «Товары» (возможные значения – от 1 до 8), а номера клиентов – с номерами клиентов из таблицы «Клиенты» (1, 2, 3, 4, 5).

Установите отношение между таблицами.

Щёлкните по инструменту «Схема данных» (СервисСхема данных). На экране появились окна «Схема данных» и «Добавление таблицы». Выберите таблицу «Товары» и щёлкните по кнопке «Добавить». Точно так же добавьте таблицы «Клиенты» и «Заказы». Закройте пустое окно «Добавление таблицы».

Замечание. Если добавить лишние таблицы, удалите их при помощи клавиши Delete.

Установим отношение между таблицами «Товары», «Заказы», поле связи «Номер товары». Для этого установите указатель в поле «Номер товара» (таблицы «Товары») и удерживая левую кнопку, перетащите указатель в поле «Номер товара» (таблица «Заказы»). Отпустите кнопку мыши. Появится окно диалога «Изменение связей».

Установите флажок в «Обеспечение целостности данных», «Каскадном обновлении связанных полей», «Каскадном удалении связанных записей» и щёлкните по кнопке «Создать».

В схеме данных появится отношение «один ко многим». Каскадное удаление и обновление записей означает, что если какой-либо товар будет удалён из таблицы «Товары», произойдёт автоматическое удаление записей из таблицы «Заказы».

Аналогично создадим отношения между таблицами «Клиенты» и «Заказы».

В результате схема данных приобрела вид

Замечание! Если вам не удалось установить отношения между таблицами, проверьте ключевые поля таблиц и занесённые данные.

Вариант 2.

Создайте формы для созданных таблиц (см. пояснения к работе)

Вариант 3.

Создайте запрос для отбора товаров со стоимостью больше 30 или количеством больше 50 (см. пояснения к работе)

Работа в лаборатории

Работа выполняется в Microsoft Access

С одержание отчёта

1. Название лабораторной работы, её порядковый номер.

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

3. Оформить ход выполнения лабораторной работы (по заданиям) по образцу:

Действие

Последовательность команд компьютера

1

Создание базы данных

2

Создание таблицы в режиме конструктор

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

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

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

  1. П еречислите типы полей в Access. Поясните каждый из них.

  2. Какие типы отношений между таблицами может поддерживать Access?

  3. Как должны быть проиндексированы поля связи в отношении «один ко многим»?

  4. Дайте определение формы

  5. Для чего предназначен запрос

Литература:

  1. Глушаков С.В., Ломотько Д.В. Базы данных: Учебный курс. – Харьков:Фолио, 2000, стр. 127-132