- •Оглавление
- •Предисловие
- •Основные понятия
- •1.1. База данных
- •Классификация баз данных
- •1.1.2. Структурные элементы базы данных
- •1.2. Виды моделей данных
- •1.2.1. Иерархическая модель данных
- •111Петрова и.Т. 112Никулин с.Л.
- •1.2.2. Сетевая модель данных
- •1.2.3. Реляционная модель данных
- •Студент
- •СессияНомерРезультат
- •Функциональные возможности субд
- •2.1. Общие сведения
- •Производительность субд
- •Обеспечение целостности данных на уровне базы данных
- •2.4. Обеспечение безопасности
- •Работа в многопользовательских средах
- •2.6. Импорт-экспорт
- •Доступ к данным посредством языка sql
- •2.7. Возможности запросов и инструментальные средства разработки прикладных программ
- •3. Основы технологии работы в субд
- •3.1. Команды для выполнения типовых операций
- •3.1.1. Типовая структура интерфейса
- •3.1.2. Команды для работы с файлами
- •3.1.3. Команды редактирования
- •3.1.4. Команды форматирования
- •3.1.5. Команды для работы с окнами
- •3.1.6. Система получения справочной информации
- •3.2. Обобщенная технология работы
- •3.2.1. Общее представление об этапах технологии
- •Создание структуры таблиц базы данных
- •Ввод и редактирование данных
- •Обработка данных, содержащихся в таблицах
- •3.2.5. Вывод информации из базы данных
- •Разработка инфологической модели и создание структуры реляционной базы данных
- •4.1. Организация данных
- •Целостность данных
- •Проектирование реляционной базы данных с использованием нормализации
- •Создание информационно-логической и логической моделей базы данных
- •Примеры решения задач средствами субд access
- •5.1. Проектирование и создание новой базы данных. Создание таблиц. Ввод записей и работа с данными таблицы. Создание межтабличных связей
- •5.2. Создание и открытие запросов
- •5.3. Создание форм и отчетов
- •5.4. Создание макросов. Обмен данными
- •6. Требования, предьявляемые к курсовой работе
- •6.1. Общие сведения
- •6.2. Содержание пояснительной записки к курсовой работе
- •6.3. Требования к оформлению пояснительной записки
- •7. Пример создания программы для курсовой работы
- •7.1. Постановка задачи
- •7.2. Создание er-модели
- •Арендатор
- •7.4. Описание технологии создания запросов
- •7.5. Создание форм
- •7.6. Создание отчетов
- •7.7. Создание кнопочной формы
- •Список рекомендуемой литературы
- •Варианты заданий
7.4. Описание технологии создания запросов
В Access существует 4 типа запросов.
1. Запросы на выборку отбирают нужные поля данных из записей, удовлетворяющих заданному условию из одной или нескольких таблиц и/или других запросов БД.
2. Перекрестные запросы формируют данные из таблиц и запросов в виде электронной таблицы (матрицы). В такой таблице заголовки строк образуются из уникальных значений одного поля, заголовки столбцов - из уникальных значений другого поля, а на их пересечении вычисляются какие-либо суммарные значения для отобранного множества записей.
3. Запросы на изменение делятся на 4 вида:
на создание новой таблицы;
на добавление новых записей в таблицу;
на удаление отобранных записей из таблицы;
на изменение значений каких-либо полей в отобранных записях таблицы.
4. Запросы с параметрами ─ это такие запросы, в которых критерии отбора задаются пользователем при каждом запуске запроса. То есть запрос с параметрами можно получить из любого из трех предыдущих типов запросов, введя в него параметры для отбора записей. При запуске такого запроса на экран выводится окно, в которое следует ввести значение параметра выборки для каждого из параметров.
Процесс проектирования запроса можно открыть несколькими способами:
в окне БД на вкладке Запросы нажать кнопку Создать или выбрать одну из строк: Создание запроса в режиме конструктора или Создание запроса с помощью мастера;
в окне БД на вкладке Таблицы выбрать инструмент Новый объект/Запрос;
выбрать в главном меню пункт Вставка/Запрос.
В большинстве случаев процесс конструирования запроса начинается с открытия диалогового окна выбора способа конструирования. Здесь можно выбрать один из специальных типов запросов, создаваемых с помощью мастера: Перекрестный, Простой, Повторяющиеся записи, Записи без подчиненных ─ либо открыть обычный режим ручного конструирования запроса на выборку.
Для создания запроса «Вся база данных» нужно:
открыть вкладку Запросы;
щёлкнуть по кнопке «Создать»;
появившемся окне выбрать «Простой запрос» и щёлкнуть по кнопке «ОК»;
в появившемся окне в строке Таблицы и Запросы выбрать из списка таблицы Арендатор и Аренда;
перенести все поля из окна «Доступные поля» в окно «Выбранные поля», щёлкнув по кнопке >>;
щёлкнуть по кнопке «Далее». Выводить надо все поля, поэтому еще раз щёлкнуть по кнопке «Далее»;
в появившемся окне ввести имя запроса Вся база;
щёлкнуть по кнопке «Готово». На экране появится таблица с данными запроса;
перейти в режим конструктора, щёлкнув правой кнопкой мыши по этому запросу. Выбрать вкладку «Конструктор»;
в свободном поле щёлкнуть правой кнопкой мыши и выбрать вкладку Построить. В окне Построитель выражений ввести функцию:
Оплата: IIf((Аренда![Дата окончания]-Аренда![Дата начала аренды])>12;Арендатор![Площадь офиса]*([Дата окончания]-[Дата начала аренды])*500;IIf((Аренда![Дата окончания]-Аренда![Дата начала аренды])<=12 And (Аренда![Дата окончания]-Аренда![Дата начала аренды])>3;Арендатор![Площадь офиса]*([Дата окончания]-[Дата начала аренды])*800;IIf((Аренда![Дата окончания]-Аренда![Дата начала аренды])<=3 And (Аренда![Дата окончания]-Аренда![Дата начала аренды])>0;Арендатор![Площадь офиса]*([Дата окончания]-[Дата начала аренды])*1000)))
Далее нажать «ОК»;
в этом поле удалить «Выражение 1» и заменить его на «Оплата»;
выполнить запрос, щёлкнув по кнопке «!» на панели инструментов, или выполнить команду Запрос, Запуск; на экране появится вся БД с выводом начисленной зарплаты;
сохранить запрос и закрыть таблицу запроса.
На рис. 7.8 представлен вид окна для создания запроса в режиме Конструктора. Окно с результатами запроса представлено на рис. 7.9.
Рис. 7.8. Вид окна для создания запроса в режиме Конструктора
Рис. 7.9. Окно с результатами запроса
Редактирование запроса. Если возникнет необходимость внести в проект запроса изменения, его следует маркировать в окне БД и щелкнуть на кнопке
Конструктор. Откроется окно проектирования запроса, в котором пользователь может внести необходимые изменения в определение запроса.
Если одно из полей запроса желательно перенести в другую позицию, то следует выполнить щелчок в селекторной строке над подлежащим переносу полем. Маркированную колонку можно перетащить на новое место с помощью мыши. Для вставки дополнительного поля в запрос перетащите его из списка полей таблицы в ту колонку спецификации, в которую хотите вставить. Если в этой колонке уже находится какое-либо поле, то оно, как и все последующие поля, будет сдвинуто вправо, чтобы освободить место для нового поля. Для удаления поля маркируйте его и нажмите клавишу [Del].