
- •Введение
- •Системы управления базой данных
- •1.1.Реляционная база данных
- •1.2.Схема данных
- •Объекты базы данных
- •Средства создания объектов баз данных
- •1.3.Средства конструирования объектов
- •1.4.Мастера Access
- •Этапы проектирования базы данных
- •1.5.Определение цели создания базы данных
- •1.6.Определение структуры базы данных
- •1.7.Данные, используемые в поле таблицы
- •Запросы и их применение
- •1.8.Создание запроса с параметрами
- •1.9.Запросы с групповыми операциями.
- •1.10.Определение в базе данных связей между таблицами
- •Отношение «один-ко-многим»
- •Отношение «многие-ко-многим»
- •Отношение «один-к-одному»
- •Определение связей между таблицами
- •Задание на курсовую работу
- •2.Пример выполнения курсовой работы
- •1. Задание
- •2. Алгоритм решения
- •3. Выполнение задачи с использованием субд access.
- •Литература
- •9.Оглавление
Отношение «один-ко-многим»
Связь с отношением «один-ко-многим» является наиболее часто используемым типом связи между таблицами. В такой связи каждой записи в таблице А могут соответствовать несколько записей в таблице В, а запись в таблице В не может иметь более одной соответствующей ей записи в таблице А(рис.9).
Рис.9
Отношение «многие-ко-многим»
При отношении «многие-ко-многим» одной записи в таблице А могут соответствовать несколько записей в таблице В, а одной записи в таблице В несколько записей в таблице А. Такая схема реализуется только с помощью третьей (связующей) таблицы, ключ которой состоит из по крайней мере двух полей, которые являются полями внешнего ключа в таблицах А и В. Например, между таблицами «Заказы» и «Товары» имеется отношение «многие-ко-многим», которое определяется путем создания двух связей с отношением «один-ко-многим» для таблицы «Заказано» (рис.10).
Рис.10
Отношение «один-к-одному»
При отношении «один-к-одному» запись в таблице А может иметь не более одной связанной записи в таблице В и наоборот. Этот тип связи используют не очень часто, поскольку такие данные могут быть помещены в одну таблицу. Связь с отношением «один-к-одному» используют для разделения очень широких таблиц, для отделения части таблицы по соображениям защиты, а также для сохранения сведений, относящихся к подмножеству записей в главной таблице. Например, такой тип связей между таблицами подходит для сохранения сведений об участии сотрудников в спортивных мероприятиях(рис.11).
Рис.11
Определение связей между таблицами
Для того чтобы определить связь между таблицами, следует добавить таблицы в окно Схема данных и перенести с помощью мыши ключевое поле одной таблицы в другую(рис.12).
Рис.12
Тип создаваемой связи зависит от полей, для которых определяется связь:
Отношение «один-ко-многим» создается в том случае, когда только одно из полей является ключевым или имеет уникальный индекс.
Отношение «один-к-одному» создается в том случае, когда оба связываемых поля являются ключевыми или имеют уникальные индексы.
Связь с отношением «многие-ко-многим» фактически является двумя связями с отношением «один-ко-многим» через третью таблицу, ключ которой состоит по крайней мере из двух полей, которые являются полями внешнего ключа в двух других таблицах.
Задание на курсовую работу
Выполнить задачу с использованием СУБД ACCESS:
разработать структуру таблиц;
заполнить таблицы;
сформировать связь таблиц(структуру данных);
сформировать необходимые запросы;
для ввода и вывода данных на основе запросов использовать необходимые формы;
результаты вывести, используя отчет;
при необходимости создать макросы.
Составить алгоритм решения задачи.
Составить отчет по курсовой работе, используя редактор WORD.
Задание 1-6
Дано: Учебная группа: № п/п, фамилия, имя, группа, год рождения, пол, адрес (Брянск, Брянская обл., иногородний). Предметы: № п/п, наименование, кол-во лекций, кол-во практик, (не менее 2-х групп, 2-х семестров). |
1.Найти, вывести: фамилии студентов и наименование предметов, по которым пропущено более 50 % занятий. |
2.Найти, вывести: средний балл заданного студента в заданном семестре. |
|
3.Найти, вывести: средний балл по предмету для заданной группы студентов. |
|
4.Найти, вывести: процент отличников и процент неуспевающих для заданной группы. |
|
5.Найти, вывести: мужчин старше 18 лет для заданной группы. |
|
6.Найти, вывести: процент Брянцев (прожив. в Брянской обл.) и иногородних для заданной группы. |
Задание 7-12
Дано: Автор (фамилия, имя, отчество, гражданство (Россия, зарубежн.)), название книги, жанр (боевик, фантастика, учебная литература), кол-во экземпляров, год издания, издательство (автор издает несколько книг в разных издательствах и в разные годы). Одна книга может переиздаваться в разные годы. |
1.Найти, вывести: Российских авторов (и названия книг), издающих учебную литературу в заданных издательствах. |
2.Найти, вывести: максимальное количество художественной литературы (боев. + фантастика) российских авторов для заданного года издания. |
|
3.Найти, вывести: кол-во учебной литературы для каждого издательства по годам. |
|
4.Найти, вывести: авторов, имеющих максимальный тираж (упорядочить). |
|
5.Найти, вывести: издательства с количеством изданной литературы зарубежными и российскими авторами для заданных жанров. |
|
6.Найти, вывести: наименование издательства, имеющее самый большой объем выпуска литературы |
Задание 13-18
База данных спорт клуба альпинистов: 1.Фамилия, имя, пол, возраст, кол-во восхождений, наименование горы, время восхождения. 2.Наименование горы, высота, сложность, место расположения (кол-во восхождений определяется автоматически). |
1.Фамилия покорившего самую высокую вершину, наименование вершины, высоту. |
2.Наименование вершины, высота, место, на которое чаще всего были восхождения. |
|
3.Упорядочить членов спорт клуба по количеству покоренных вершин за заданный промежуток времени. |
|
4.Упорядочить членов спорт клуба по суммарной сложности восхождений за заданный промежуток времени. |
|
5.Фамилия женщины, имеющей наибольшее число восхождений. |
|
6.Наименование горы, на которое совершил восхождение самый молодой альпинист |
Задание 19-28
База данных кассы аэропорта. 1.Наименование рейса (место отправления Брянск, место назначения – 10 различн. пунктов), протяженность, вид самолета (3 вида), время отправления, время прилета, стоимость (3 класса места), рейс, цена. |
1.Найти кол-во билетов, проданных на заданное время по всем рейсам |
2.Найти кол-во свободных мест на заданное направление. |
|
3.Найти кол-во свободных мест на заданном направлении. |
|
4.Найти кол-во рейсов на заданное время на заданном направлении. |
|
5.Найти прибыль (кол-во денег) от самолетов каждого рейса на заданное число. |
|
6.Найти кол-во пассажиров, перевезенных самолетом каждого рейса. |
|
7.Кол-во пассажиров летящих 1 и бизнес классом в заданном направлении. |
|
8.Кол-во и процент пустых мест на заданный промежуток времени. |
|
9.Кол-во самолетов (процент, отношение) каждого вида и процент их заполнения. |
Задание 29-35
База данных товарного склада: Вид товара (продовольств., не продовольств.), наименование, кол-во единиц, время хранения. Товар: наименование, время изготовления, срок годности, цена единицы товара, фирма изготовитель. |
1.Товары, срок годности которых заканчивается в заданный период (просроченные товары). |
2.Наименование фирмы, имеющей самое большое количество и общую стоимость испорченных товаров на данный день. |
|
3.Количество и цену товаров каждого вида (не испорченных) на данный день. |
|
4.Кол-во товаров и общую цену пришедших на склад с просроченным сроком хранения. |
|
5.Количество годного товара заданного вида |
|
6.Наименование годного товара для заданной фирмы |
|
7.Наименование фирм и общую стоимость годного товара для каждой фирмы |