
- •Технологии разработки программного обеспечения
- •Реляционное представление данных
- •Типы субд
- •Место и роль субд Microsoft Access®
- •Объекты
- •Особенности интерфейса
- •Режимы работы с бд
- •Порядок выполнения работы
- •Контрольные вопросы
- •Свойства полей. Обзор
- •Регистронезависимость Access
- •Свойства полей Тип данных и Размер поля
- •Приоритеты при разработке субд
- •Проектировочный режим: средства создания объектов
- •Эксплуатационный режим таблиц
- •Порядок выполнения работы
- •Варианты заданий
- •Контрольные вопросы
- •Реализация разделения данных. Ключевые поля
- •Вид связи один-к-одному
- •Вид связи один-ко-многим
- •Вид связи многие-ко-многим
- •Механизм создания ключей
- •Механизм подтаблиц
- •Порядок выполнения работы
- •Варианты заданий
- •Контрольные вопросы
- •Фильтры по выделенному
- •Запросы
- •Классификация запросов
- •Запросы на выборку
- •Отличия фильтров от запросов на выборку
- •Понятие предиката
- •Константы и переменные в запросах
- •Операторы в запросах
- •Бланк запроса в Access
- •Запросы с параметрами
- •Порядок выполнения работы
- •Вариант 4
- •Вариант 5
- •Вариант 6
- •Вариант 7
- •Вариант 8
- •Вариант 9
- •Вариант 10
- •Контрольные вопросы
- •Групповые операции
- •Запрос на обновление
- •Встроенные функции
- •Язык sql
- •Порядок выполнения работы
- •Вариант 10
- •Контрольные вопросы
- •Компилируемые и интерпретируемые языки программирования
- •Написание программы на языке Perl
- •Синтаксис языка Perl
- •Функции Perl
- •Порядок выполнения работы
- •Регулярные выражения
- •Операция поиска в строке
- •Оператор замены в строке
- •Обратные ссылки
- •Предопределённые переменные
- •Замена в текстовом файле
- •Функции работы со строками
- •Порядок выполнения работы
- •Подчинённая таблица «Корреспонденция»
- •Вариант 2 Главная таблица «Партнёры»
- •Подчинённая таблица «Сделки»
- •Вариант 3 Главная таблица «Сотрудники»
- •Подчинённая таблица «Поручения»
- •Вариант 4 Главная таблица «Товары»
- •Подчинённая таблица «Сертификаты»
- •Вариант 5 Главная таблица «Заказы»
- •Подчинённая таблица «Заказчики»
- •Вариант 6 Главная таблица «Поставки»
- •Подчинённая таблица «Посредники»
- •Вариант 7 Главная таблица «Терминалы»
- •Подчинённая таблица «Покупки»
- •Вариант 8 Главная таблица «Плательщики»
- •Подчинённая таблица «Счета»
- •Вариант 9 Главная таблица «Проекты»
- •Подчинённая таблица «Исполнители»
- •Вариант 10 Главная таблица «Мероприятия»
- •Подчинённая таблица «Персонал»
Бланк запроса в Access
Рассмотрим создание запросов на выборку в Access с помощью бланка запроса (БЗ). С его помощью можно сформировать запрос простыми приёмами.
Первый шаг заключается в выборе тех таблиц и уже имеющихся запросов, на которых будет основан запрос. Выбор осуществляется в диалоговом окне Добавление таблицы. Выбранные объекты заносят в БЗ командой Добавить.
Бланк запроса разделён на две части. Вверху расположены объекты, на которых основывается запрос, вместе со своими связями. По умолчанию связи, определённые ранее в окне Схема данных, переносятся в запрос автоматически при добавлении связанных таблиц. Однако при необходимости можно модифицировать связи в БЗ, исходя из требуемой целесообразности. Причём, изменение связей в запросе не затронет связи в схеме данных.
Строки внизу определяют структуру запроса, то есть какие поля и записи будут содержаться в результирующем представлении и в каком виде они там будут отображены.
Строку Поле легче всего заполнить перетаскиванием названий полей из объектов в верхней части БЗ. Каждому полю будущей результирующей таблицы соответствует один столбец БЗ. Строка Имя таблицы заполняется автоматически при заполнении предыдущей строки.
Строка Сортировка отвечает за упорядочивание данных в своём столбце. Может принимать следующие значения:
(отсутствует) – данные не будут отсортированы;
по возрастанию – сортировка по возрастанию (от А до Я, от 1 до 100);
по убыванию – сортировка по убыванию (от Я до А, от 100 до 1).
Флажок Вывод на экран по умолчанию почти всегда включён. Отключить его можно в случаях, когда требуется применить сортировку или ввести критерий отбора по соответствующему полю, но само поле на экран выводить не требуется.
Самая интересная строка в БЗ по образцу называется Условие отбора. Именно здесь и записывают тот критерий, по которому выбирают записи для включения в результирующую таблицу (см. таблицу 4). По каждому полю можно создать свое условие отбора.
Условия, записанные в одной строке Условие отбора, но в разных столбцах, связываются логическим И, т.е. должны выполняться одновременно. Для задания условий, связанных логическим ИЛИ, необходимо каждое условие записать на отдельной строке, начиная со строки Условие отбора и ниже – строки Или.
Пример представлен на рисунке 14. Здесь выбираются либо товары среднего качества по цене дешевле 360р., либо товары хорошего качества по ЛЮБОЙ цене. Если бы мы хотели выбрать товары среднего или хорошего качества по цене дешевле 360р. в любом случае, то нам нужно было бы скопировать ограничение по цене на вторую строку условий (строку Или) бланка запроса.
Рисунок 14 – Логические И/ИЛИ в бланке запроса
Выполнение запроса активизируется командами Запуск или Открыть, либо переходом из режима БЗ в режим таблицы (просмотра результатов)
Если изменились только данные в таблицах, запрос можно перезапустить и не переходя в проектировочный режим. Для этого нужно повторно выполнить команду Запуск.
Запросы с параметрами
В описанной выше процедуре критерии отбора запроса могут быть изменены только разработчиком БД, но не её пользователями. Это не всегда удобно. Во многих случаях пользователю надо предоставить возможность выбора того, что он хочет найти в таблицах. Для этого существуют запросы с параметром.
Параметры – это переменные, которые запрашивают данные у пользователя при каждом запуске запроса в специальном диалоговом окне Введите значение параметра. Поэтому имя параметра должно быть понятным не только разработчику, но и пользователям, например, [Периодичность издания], [Минимальная цена] и т.п.
В одном запросе может быть несколько параметров, но все они должны иметь уникальные имена, отличные не только друг от друга, но и от имён полей. Дело в том, что по написанию параметры не отличаются от имён полей. СУБД при чтении каждой переменной в запросе пытается сопоставить её имени поля. Если ей это удаётся, то данные берутся из соответствующего поля, если нет – то она воспринимает такую переменную как параметр и запрашивает данные у пользователя.
Предположим, что в базе данных есть таблица Клиенты, в которой содержатся сведения о клиентах из разных стран. Наша задача: создать запрос, с помощью которого пользователь сможет сам определить, клиентов из какой страны ему надо просмотреть. Для этого в БЗ, в строке Условие отбора поля Страна пишется имя параметра, например, [Страна клиентов]. Механизм работы таких запросов представлен на рисунке 15.
Рисунок 15 – Параметр в запросе