- •Рязанский государственный радиотехнический университет
- •Учебно-методический комплекс по дисциплине сд.Р.06 «инфорационные сети, базы данных»
- •653700 «Приборостроение»
- •200106 – «Информационно-измерительная техника и технологии»
- •Работа № 1 работа с базами данных и таблицами.
- •2.1 Разработка таблицы "Персональные мероприятия"
- •2.2 Разбиение информации но полям.
- •2.3 Создание таблицы "Персональные мероприятия"
- •2.4 Определение значения по умолчанию для поля.
- •3.1. Отношения между таблицами.
- •4.1 Выбор ключа таблицы
- •4.2 Индексирование таблицы.
- •5.3 Изменение свойств полей и связей между таблицами.
- •5.4 Изменение связей между таблицами
- •Лабораторная работа №2. Добавление, изменение и проверка корректности данных в таблицах.
- •Цель работы
- •Домашнее задание.
- •Лабораторная работа № 3 Сортировка, поиск и фильтрация данных в таблицах
- •Сортировка таблицы по значению одного поля.
- •Сортировка таблицы по значению нескольких полей
- •Поиск записей по значению поля.
- •Отбор данных при помощи фильтров
- •Фильтр по выделенному фрагменту.
- •Обычный фильтр.
- •Расширенный фильтр и расширенная сортировка
- •Добавление сортировки по нескольким столбцам и составного критерия отбора
- •Сохранение и загрузка фильтра в качестве запроса
- •1. Создание простого запроса
- •2. Добавление полей в запрос.
- •3. Задание условия отбора и порядка сортировки результатов запроса
- •4. Создание более сложных запросов
- •5. Изменение полей таблицы при помощи запроса
- •6. Изменение заголовков полей в запросе
- •7. Сохранение запросов
- •Создание запросов других видов
- •8. Использование простых запросов на создание таблиц
- •9. Добавление параметра к запросу
- •10. Преобразование запросов по образцу в запросы на языке sql
- •Лабораторная работа № 5 запросы по нескольким таблицам и перекрёстные запросы
- •1. Соединение таблиц для создания многотабличного запроса
- •1.1 Создание внутреннего соединения по одному полю
- •1.2. Определение порядка сортировки результатов запроса
- •1.3. Создание запросов на выборку данных из таблиц с косвенными связями
- •1.4. Создание внутреннего соединения по нескольким полям
- •2. Использование полей подстановок
- •2.1 Добавление списка, задающего значение внешнего ключа, при помощи Мастера подстановок
- •2.2 Добавление списка постоянных значений к полю таблицы
- •Введите строку 03-94, чтобы вывести данные для марта 1995 года (рис. 10.51).
- •Нажмите кнопку ок для вывода результирующего множества запроса(рис.52).
1.4. Создание внутреннего соединения по нескольким полям
Между двумя таблицами может быть задано несколько соединений. Например, допустим, что требуется вывести имена клиентов, у которых совпадают официальный адрес и адрес доставки. Адрес клиента хранится в поле "Адрес" таблицы "Клиенты", а адрес доставки — в поле "АдресПолучателя" таблицы "Заказы". Таким образом, необходимо сопоставить поля "КодКлиента" в обеих таблицах, а также поля "Адрес" и "АдресПолучателя". Для этого требуется использовать внутреннее соединение по нескольким полям.
Для вывода имен клиентов, официальный адрес и адрес доставки которых совпадают:
Создайте новый запрос, раскрыв вкладку "Запросы" (Queries) окна "База данных" и нажав кнопку "Создать" (New). В появившемся диалоговом окне "Новый запрос" выделите элемент "Конструктор" (New Query) и нажмите кнопку ОК.
Добавьте в запрос таблицы "Клиенты" и "Заказы", выбрав каждую из них в диалоговом окне "Добавление таблицы" и нажав кнопку "Добавить". Нажмите кнопку "Закрыть".
Выберите в списке полей таблицы "Клиенты" поле "Адрес" и перетащите его на поле "АдресПолучателя" таблицы "Заказы". Это приводит к созданию соединения полей Адрес и АдресПолучателя (рис. 10). Линия, обозначающая связь, имеет с двух сторон точки, которые указывают на то, что соединение выполнено между полями, связь которых в схеме данных не задана, их имена не совпадают и они не являются первичными ключами.
Перетащите поля "Название" и "Адрес" таблицы "Клиенты", а затем поле "АдресПолучателя" таблицы "Заказы" на бланк запроса.
Задайте сортировку по возрастанию в столбце "Название".
Нажмите на панели инструментов кнопку "Запуск". На рис. 11 показано результирующее множество запроса.
Чтобы подавить вывод одинаковых строк, необходимо изменить значение свойства "Уникальные значения" (Unique Values) в бланке свойств запроса. Для отображения бланка свойств нажмите кнопку "Конструктор", а затем кнопку "Свойства" (Properties) на панели инструментов, либо дважды щелкните по пустой области верхней части окна запроса (рис. 12). Если заголовком бланка является строка "Свойства списка полей" (Field List) или "Свойства поля" (Field Pro-
perties), щелкните по пустому месту, чтобы вывести свойства запроса. Кроме того, можно щелкнуть правой кнопкой мыши по свободной области верхней части окна запроса и выбрать в контекстном меню команду "Свойства" (Properties)
По умолчанию свойство запроса "Уникальные записи" (Unique Values) имеет значение True (Да), а свойство "Уникальные значения" — False (Нет). Поэтому в инструкцию SQL, связанную с запросом, добавляется ключевое слово Access SQL distinctrow (рис. 8). Измените значение свойства "Уникальные значения" на "Да". При этом вместо ключевого слова SQL distinct в инструкции SQL будет участвовать ключевое слово Access distinctrow. Нажмите кнопку "Свойства" для закрытия бланка свойств.
Нажмите на панели инструментов кнопку "Запуск". Результирующее множество не содержит повторяющихся записей (рис. 13).
Выберите команду "Вид, Режим SQL" для вывода инструкции SQL (рис. 14). Обратите внимание на то, что ключевое слово distinct инструкции select исключает записи, которые содержат повторяющиеся значения в отобранных полях.
Нажмите кнопку "Закрыть" для закрытия запроса и не сохраняйте его. В этом случае вы избежите хранения ненужного примера в базе данных. Для большинства заказов адрес клиента и адрес доставки совпадают, поэтому было бы лучше отыскивать заказы, для которых адреса различаются. Однако в Access нельзя создать такой запрос с помощью соединения по нескольким полям, т. к. в операции Access SQL inner join использовать оператор <> не допускается. Подробную информацию о выполнении соединения по неравенству смотрите ниже в разделе "Создание соединения по отношению".
