Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка по ИТ -ЗО.doc
Скачиваний:
6
Добавлен:
16.11.2019
Размер:
308.22 Кб
Скачать

2.2 Вторая часть задания

1. Построить инфологическую модель данных согласно вашей предметной области.

2. Построить компьютероориентированную (датологическую) модель данных в СУБД Access.

Предметная область для базы выбирается согласно таблице 2, вариант соответствует последней цифре шифра студента.

Таблица 2

Вариант

Предметная область базы

0

Отдел кадров

1

Туристическое агентство

2

Магазин бытовой техники

3

Автосалон

4

Авиакасса

5

Библиотека

6

Телепрограмма

7

Ассортимент продуктового магазина

8

Железнодорожная касса

9

Книжный магазин

2.1.Перечень таблиц базы и содержащиеся в них поля выбираются самостоятельно. Итоговый набор таблиц инфологической модели должен удовлетворять требованиям третьей нормальной формы. (Итоговая схема БД должна содержать не менее 3 отношений.)

2.2 При заполнении таблиц данными использовать выпадающие списки выбора для полей, множество возможных значений которых известно заранее (например домен поля «День недели»- {Пн,Вт,Ср,Чт, Пт, Сб, Вскр}) или списки выбора значений из других таблиц.

2.3. Задайте связи между таблицами на схеме данных, обеспечьте целостность данных, каскадное удаление связанных записей, каскадное обновление связанных полей;

2.4. Заполните таблицы произвольными данными;

2.5. Проведите сортировку данных по значениям какого- либо поля;

2.6. Проведите фильтрацию данных по какому-либо параметру;

2.7.Создайте формы для всех таблиц, кроме того создайте одну сложную форму, отражающие данные из главной и подчиненной ей формы;

2.8. Создайте запрос на выборку с параметром для какой-либо таблицы. В качестве параметра вводится конкретное значение какого-либо поля;

2.9. Создайте запрос на изменение данных (например повысить оклады на 10 % тех сотрудников, которые получали менее 5000р.)

2.10. Создайте запрос на удаление по какому- либо параметру;

2.11. Создайте итоговый отчет, отражающий наиболее значимые сведения из всех таблиц;

2.12. Создайте кнопочную форму базы, поместите в нее кнопки вызова форм, запросов, отчета.

Пример разработки инфологической модели и создание структуры реляционной базы данных

Инфологическая модель предметной области представляет эту область в виде набора информационных объектов и их структурных связей.

Предметная область нашей будущей базы: деятельность автосалона. В базе должны храниться сведения о том, кто и когда приобрел автомобиль, кто занимался работой с клиентами, информация о поставках машин на склад. На схемах 1 и 2 изображены примерные данные, которые должны отражаться в системе.

Информационный объект- это модель некоторого реального объекта, процесса или явления, представленная в виде совокупности логически связанных реквизитов. В реляционной модели данных каждый информационный объект описывается отдельной таблицей. Т.о. информация в базе хранится в виде набора взаимосвязанных таблиц, которые принято называть отношениями.

Свойства реляционной модели:

  1. Каждая таблица состоит из однотипных строк и имеет уникальное имя;

  2. Строки таблицы отличаются друг от друга хотя бы одним значением, что позволит однозначно идентифицировать каждую из них;

  3. Столбцы таблицы имеют уникальное имя, и в каждом из них размещаются однородные значения данных;

  4. Порядок следования столбцов и строк не имеет значения;

  5. На пересечении строки и столбца таблицы всегда имеется строго одно значение (или NULL- пустое значение);

Определим перечень информационных объектов, связи между ними, используя метод нормализации отношений.

Нормализация отношений- это формальный аппарат ограничений, накладываемых на формирование таблиц, который позволяет устранить дублирование информации, уменьшить время на ее ввод и корректировку, отследить противоречивости в данных.

Теория нормализации основана на концепции нормальных форм. В теории реляционных баз данных обычно выделяются: первая нормальная форма (1 Н.Ф.), 2 Н.Ф., 3 Н.Ф., нормальная форма Бойса-Кодда, 4 Н.Ф., 5 Н.Ф. (или нормальная форма проекции-соединения). При этом каждая следующая нормальная форма сохраняет в себе свойства предыдущих и, в некотором смысле, лучше их. На практике третья нормальная форма отношений в большинстве случаев достаточна, и привидением к ней процесс проектирования базы обычно заканчивается.

Ограничения первой нормальной формы: значения всех атрибутов отношения атомарны (неделимы). Данное требование является базовым в классической реляционной модели, поэтому любая реляционная таблица, по определению, уже находится в 1 Н.Ф. На схемах 1 и 2 это требование не выполняется- на пересечении строк и столбцов встречается более одного значения. На схемах 3 и 4 эта ситуация исправлена, таблицы удовлетворяют всем ограничениям первой нормальной формы.

Обозначим ключевые поля в таблицах.

Ключевое поле (простой ключ)- это поле, каждое значение которого однозначно идентифицирует одну из записей. Все значения ключевого столбца уникальны. Не будем рассматривать тривиальный случай, когда в качестве ключевых значений берутся порядковые номера записей. Если каждая запись таблицы однозначно идентифицируется значениями нескольких полей, то эти поля образуют составной ключ.

Схема 3. Таблица «Продажи». Ни одно из предложенных в ней полей не может рассматриваться в качестве простого ключа- все поля содержат повторяющиеся значения: покупатель может неоднократно совершить покупку; каждый консультант работает с несколькими клиентами; одну и ту же марку машин могут приобрести несколько покупателей; в один и тот же день может быть совершено несколько сделок. Выявим части составного ключа. Ими могут быть, например, поля «Дата продажи» и «ФИО покупателя»- зная два этих значения, мы узнаем и данные о покупателе, и сведения о машине, которую он приобрел, и кто из консультантов работал с данным клиентом (при допущении, что клиент приобретает не более одного авто в день) В таблице ключевые поля выделены двойной рамкой.

Схема 4. Таблица «Поставки». В один день мы можем принять поставку от нескольких поставщиков; один поставщик неоднократно доставляет авто в салон, машины одной марки могут быть приняты от разных поставщиков – обойтись одним простым ключом не получится. Определим составной ключ. Его части составят поля «Дата поставки», «Название поставщика» и «Марка авто». Зная эти данные, однозначно определим значения и всех остальных полей одной из записей (сколько авто этой марки мы получили, по какой цене и пр.)

Отношение находится во второй нормальной форме, если выполняются требования первой нормальной формы и каждый неключевой атрибут находится в полной функциональной зависимости от ключа (зависит от всех его частей).

Что бы перейти от первой нормальной формы ко второй, необходимо:

1. Определить, какие из неключевых атрибутов зависят от всех частей составного ключа и оставить их в таблице;

2. Выявить, от каких частей ключа зависят остальные неключевые атрибуты и вынести их в отдельные таблицы: часть ключа (одно или несколько полей) + поля, находящиеся в зависимости от этой части. Тем самым каждое неключевое поле окажется в полной функциональной зависимости от ключа (состоящего из одной или нескольких частей).

Рассмотрим схему 3. От всех частей ключа (и от значения поля «ФИО покупателя», и от «Даты продажи») зависят поля «Марка авто», «Техн. характеристики», «Рис», «Цвет», «Цена», «ФИО консультанта», «Стаж работы», «Адрес консультанта», «Тел», «Дата рождения», «Дети». Эти поля оставляем в исходной таблице. Поля же «Адрес покупателя» и «Телефон покупателя» зависят только от одной части ключа – от поля «ФИО покупателя». Выносим их в отдельную таблицу «Покупатели». Соединяем обе таблицы линией связи (см. схему 5).

Рассмотрим схему 4. От всех частей ключа (от значения поля «Дата поставки», «Название поставщика» и «Марка авто») зависят только поля «Количество» и «Цена». Поля «Адрес поставщика» и «Телефон поставщика» зависят от части ключа «Название поставщика». Поля «Техн. характеристики авто» и «Рисунок» зависят от части «Марка авто». В итоге таблица разделится на 3 составляющие (см. схему 6). Назовем таблицы «Поставки», «Поставщики» и «Автомобили».

Отношение находится в третьей нормальной форме, если выполняются требования второй нормальной формы и каждый неключевой атрибут нетранзитивно зависит от первичного ключа.

Функциональная зависимость атрибутов Х и Y называется транзитивной, если существует такой атрибут Z, что имеется функциональная зависимость X ->Z и Z->Y.

Что бы перейти от второй нормальной формы к третьей, необходимо:

  1. Выявить поля, от которых зависят другие неключевые поля;

  2. Создать новую таблицу для каждого такого поля и группы зависящих от него полей;

  3. Удалить перемещенные поля их исходной таблицы, оставив лишь те из них, которые станут внешними ключами.

Схема 5. Поля «Техн. характеристика» и «Рисунок» зависят от ключа не на прямую, а через неключевой атрибут «Марка авто». Выносим эти поля в отдельную таблицу «Автомобили». Связываем разделившиеся части по полю «Марка авто».

Поля «Стаж работы», «Адрес консультанта», «Тел», «Дата рождения», «Дети» зависят от неключевого поля «ФИО консультанта». Так же выносим их в отдельную таблицу «Консультанты». Получим набор таблиц со схемы 7.

Схема 6. Здесь не наблюдается ни одной цепочки транзитивных зависимостей, поэтому вторая нормальная форма отношений является одновременно и третьей нормальной формой (схема 8)

Так как мы решили отразить в базе информацию как о поставках товара, так и о его продаже, свяжем обе схемы по таблице «Автомобили» (схема 9). Ведь и поставляем, и продаем мы товар одного ассортимента.

Исходная таблица «Продажи»

Покупатели

Авто

Цвет

Цена

Дата

Консультанты салона

ФИО

Адрес

Тел

Марка

Техн. характ.

Рис

ФИО

Стаж

Адрес

Тел

Дата рожд

Дети

Воронов

Парковый 3

333

Logan

1.5 тонн

синий

10000

10.09.06

Иванов

1 год

Юрша 5

111

21.09.70

да

Laguna

2 тонны

черный

25000

14.10.06

Петров

3 года

Мира 7

222

17.01.75

нет

Смирнов

Ленина 55

444

Megane

1.8 тонн

черный

16000

10.09.06

Иванов

1 год

Юрша 5

111

21.09.70

да

Logan

1.5 тонн

красный

10000

20.10.06

Конев

Свиязева 6

555

Symbol

1.7 тонн

бордо

12000

10.09.06

Петров

3 года

Мира 7

222

17.01.75

Нет

Схема 1

Исходная таблица «Поставки»

Поставщики

Авто

Количество

Цена

Дата

поставки

Название

Адрес

Тел

Марка

Техн. Характ.

Рис

Автотрейд

Россия, …

1234567

Logan

1.5 тонн

4

9000

07.09.06

Symbol

1.7 тонн

2

11000

07.09.06

Logan

1.5 тонн

3

9000

15.09.06

Renault

Франция, …

7654321

Megane

1.8 тонн

2

14000

5.08.06

Megane

1.8 тонн

5

14000

15.09.06

Laguna

2 тонны

2

23000

15.09.06

Схема 2

1 Н.Ф.

Продажи

ФИО

пок-ля

Адрес

пок-ля

Тел

Марка

Авто

Техн. характ.

Рис

Цвет

Цена

Дата

продажи

ФИО

конс.

Стаж

Адрес

конс.

Тел

конс.

Дата рожд

Дети

Воронов

Парковый 3

333

Logan

1.5 тонн

синий

10000

10.09.06

Иванов

1 год

Юрша 5

111

21.09.70

да

Воронов

Парковый 3

333

Laguna

2 тонны

черный

25000

14.10.06

Петров

3 года

Мира 7

222

17.01.75

нет

Смирнов

Ленина 55

444

Megane

1.8 тонн

черный

16000

10.09.06

Иванов

1 год

Юрша 5

111

21.09.70

да

Смирнов

Ленина 55

444

Logan

1.5 тонн

красный

10000

20.10.06

Иванов

1 год

Юрша 5

111

21.09.70

да

Конев

Свиязева 6

555

Symbol

1.7 тонн

бордо

12000

10.09.06

Петров

3 года

Мира 7

222

17.01.75

Нет

Схема 3

1 Н.Ф.

Поставки

Название

пост-ка

Адрес

пост-ка

Тел

пост-ка

Марка

авто

Техн. характ.

Рис

Количество

Цена

Дата поставки

Автотрейд

Россия, …

1234567

Logan

1.5 тонн

4

9000

07.09.06

Автотрейд

Россия, …

1234567

Symbol

1.7 тонн

2

11000

07.09.06

Автотрейд

Россия, …

1234567

Logan

1.5 тонн

3

9000

15.09.06

Renault

Франция, …

7654321

Megane

1.8 тонн

2

14000

5.08.06

Renault

Франция, …

7654321

Megane

1.8 тонн

5

14000

15.09.06

Renault

Франция, …

7654321

Laguna

2 тонны

2

23000

15.09.06

Схема 4

2 Н.Ф.

Продажи

ФИО

п ок-ля

Дата

продажи

Марка

Авто

Техн. характ.

Рис

Цвет

Цена

ФИО

конс.

Стаж

Адрес

конс.

Тел

конс.

Дата рожд

Дети

Воронов

10.09.06

Logan

1.5 тонн

синий

10000

Иванов

1 год

Юрша 5

111

21.09.70

да

Воронов

14.10.06

Laguna

2 тонны

черный

25000

Петров

3 года

Мира 7

222

17.01.75

нет

Смирнов

10.09.06

Megane

1.8 тонн

черный

16000

Иванов

1 год

Юрша 5

111

21.09.70

да

Смирнов

20.10.06

Logan

1.5 тонн

красный

10000

Иванов

1 год

Юрша 5

111

21.09.70

да

Конев

10.09.06

Symbol

1.7 тонн

бордо

12000

Петров

3 года

Мира 7

222

17.01.75

нет

Покупатели

Ф ИО

пок-ля

Адрес

пок-ля

Тел

Воронов

Парковый 3

333

Смирнов

Ленина 55

444

Конев

Свиязева 6

555

Схема 5

2 Н.Ф.

Поставки

Название

п ост-ка

Дата поставки

Марка авто

Количество

Цена

Автотрейд

07.09.06

Logan

4

9000

Автотрейд

07.09.06

Symbol

2

11000

Автотрейд

15.09.06

Logan

3

9000

Renault

5.08.06

Megane

2

14000

Renault

15.09.06

Megane

5

14000

Renault

15.09.06

Laguna

2

23000

Поставщики Автомобили

Н азвание

пост-ка

Адрес

пост-ка

Тел

пост-ка

Марка авто

Техн. характ.

Рис

Автотрейд

Россия, …

1234567

Logan

1.5 тонн

Symbol

1.7 тонн

Renault

Франция, …

7654321

Megane

1.8 тонн

Laguna

2 тонны

Схема 6

3 Н.Ф.

Продажи Автомобили

ФИО

п ок-ля

Дата

продажи

Марка

Авто

Цвет

Цена

ФИО

конс.

Марка

Авто

Техн. характ.

Рис

Воронов

10.09.06

Logan

синий

10000

Иванов

Logan

1.5 тонн

Воронов

14.10.06

Laguna

черный

25000

Петров

Laguna

2 тонны

Смирнов

10.09.06

Megane

черный

16000

Иванов

Megane

1.8 тонн

Смирнов

20.10.06

Logan

красный

10000

Иванов

Symbol

1.7 тонн

Конев

10.09.06

Symbol

бордо

12000

Петров

Покупатели Консультанты

Ф ИО

пок-ля

Адрес

пок-ля

Тел

ФИО

конс.

Стаж

Адрес

Тел

Дата рожд

Дети

Воронов

Парковый 3

333

Иванов

1 год

Юрша 5

111

21.09.70

да

Смирнов

Ленина 55

444

Петров

3 года

Мира 7

222

17.01.75

нет

Конев

Свиязева 6

555

Схема 7

3 Н.Ф.

Поставки

Название

п ост-ка

Дата поставки

Марка авто

Количество

Цена

Автотрейд

07.09.06

Logan

4

9000

Автотрейд

07.09.06

Symbol

2

11000

Автотрейд

15.09.06

Logan

3

9000

Renault

5.08.06

Megane

2

14000

Renault

15.09.06

Megane

5

14000

Renault

15.09.06

Laguna

2

23000

Поставщики Автомобили

Н азвание

пост-ка

Адрес

пост-ка

Тел

пост-ка

Марка авто

Техн. характ.

Рис

Автотрейд

Россия, …

1234567

Logan

1.5 тонн

Symbol

1.7 тонн

Renault

Франция, …

7654321

Megane

1.8 тонн

Laguna

2 тонны

Схема 8

Поставки Поставщики

Название

пост-ка

Дата поставки

Марка авто

Количество

Цена

Название

пост-ка

Адрес

Тел

Автотрейд

07.09.06

Logan

4

9000

Автотрейд

Россия, ..

1234567

Автотрейд

07.09.06

Symbol

2

11000

Автотрейд

15.09.06

Logan

3

9000

Renault

Франция,

7654321

Renault

5.08.06

Megane

2

14000

Renault

15.09.06

Megane

5

14000

Renault

15.09.06

Laguna

2

23000

Покупатели Автомобили

Ф ИО

пок-ля

Адрес

пок-ля

Тел

Марка авто

Техн. характ.

Рис

Воронов

Парковый 3

333

Logan

1.5 тонн

Конев

Свиязева 6

555

Symbol

1.7 тонн

Megane

1.8 тонн

Laguna

2 тонны

Продажи Консультанты

ФИО

пок-ля

Дата

продажи

Марка

Авто

Цвет

Цена

ФИО

конс.

ФИО

конс.

Стаж

Адрес

Тел

Дата рожд

Дети

Воронов

10.09.06

Logan

синий

10000

Иванов

Иванов

1 год

Юрша 5

111

21.09.70

да

Воронов

14.10.06

Laguna

черный

25000

Петров

Петров

3 года

Мира 7

222

17.01.75

нет

Смирнов

10.09.06

Megane

черный

16000

Иванов

Смирнов

20.10.06

Logan

красный

10000

Иванов

Конев

10.09.06

Symbol

бордо

12000

Петров

Схема 9

Мы определили информационные объекты модели: «Консультанты»; «Автомобили»; «Покупатели»; «Поставщики»; «Поставки»; «Продажи».