1 of 17

Тема. Реляційні моделі данних. Модель «сутність – зв’язок»�

2 of 17

Реляціонні БД

Реляційна база даних - це набір простих таблиць, між якими встановлені зв'язки (відносини) з допомогою числових кодів.

Продавці

Код

Назва

Адреса

Телефон

Сайт

Изготовители

Код

Назва

Країна

Сайт

Модели

Код

Назва

Код виробника

Товары

Код

Назва

Прайс-лист

Код запису

Код продавця

Код виготовлення

Код товара

Код моделі

Ціна

3 of 17

Реляційні БД

  • Немає дублювання інформації;
  • при зміні адреси фірмі достатності Изменить Його Тільки в табліці Продавці;
  • захист від неправильного введення: можна вібрато Тільки фірму, Яка є у табліці Продавці;
  • механізм транзакцій: будь-які Зміни вносяться в базу Тільки тоді, коли смороду повністю завершені.
  • складність структури (не Більше 40-50 таблицю);
  • при Поиск треба звертати до декількох таблиць;
  • потрібно підтрімуваті цілісність: при відаленні фірми-продавця вимагає відаляті ВСІ пов'язані записи (автоматично, каскадні відаленн).

4 of 17

Зв’язки між таблицями

Один до одного («1-1») - одного запису в першій таблиці відповідає рівно один запис у другій.? Застосування: виділення часто використовуваних даних.

Код

Призвище

Ім’я

1

Иванов

Кузьма

2

Петров

Василий

Код

Год рожд.

Адрес

1

1992

Суворовский, д.20, кв. 6

2

1993

Кирочная, д. 30, кв 18

Один до багатьох («1 - безкінечнічить») - одного запису в першій таблиці відповідає скільки завгодно записів у другій.

Код

Назва

1

Монітор

2

Вінчестер

Код

Код товара

Ціна

123

1

10 999

345

1

11 999

1

товари

прайс-лист

5 of 17

Звязки між таблицями

Багато до багатьох - одного запису в першій таблиці відповідає скільки завгодно записів в другій, і навпаки.

Код

Призвіще

1

Іванов

2

Петров

Код

Назва

1

Істория

2

Географія

3

Біологія

Реалізація – через третю таблицю и два зв’язки «1-».

Код

Призвіще

1

Іванов

2

Петров

Код

Назваи

1

Істория

2

Географія

3

Біологія

Код

Код вчителя

Код предмета

Клас

1

1

1

9-А

2

1

2

8-Б

3

2

3

7-В

розклад

вчителя

предметы

1

1

6 of 17

Нормалізація бази даних

Нормалізація - це розробка такої структури БД, в якій немає надлишкових даних і зв'язків.

  • Будь-яке поле повинно бути неподільним.

Призвіще та ім’я

Іванов Петр

Петров Іван

Призвіще

Ім’я

Іванов

Петр

Петров

Іван

  • Не повинно бути полів, які позначають різні види одного і того ж, наприклад, товарів

Год

Банани

Ківи

2006

3200

1200

2007

5600

1500

Год

Код товара

Кіл-ть

2006

1

1200

2007

2

1500

Код

Товар

1

Банани

2

Ківі

1

7 of 17

Нормалізація бази даних

  • Будь-яке поле повинно залежати тільки від ключа (ключ - це поле або комбінація полів, однозначно визначає запис).

Код

Назва

Ціна

1

Монитор

9 000 р.

2

Вінчестер

11 000 р.

  • Не повинно бути полів, які можуть бути знайдені за допомогою інших.

Код

Товар

Ціна за тону

Кіл-ть, тон

Коштовність

1

Банани

1200

10

12 000

2

Ківи

1500

20

30 000

товари

залежать не тільки от назви товара!

прайс-лист

8 of 17

Пошук по індексам

Алгоритм:

  двійковий пошук за індексом - знайти? номери потрібних записів;

  вибрати ці записи за номерами з основної? таблиці.

  • індекси займають місце на диску;
  • при зміні таблиці треба перебудовувати всі індекси (в СУБД - автоматично).
  • двійковий пошук по всіх стовпцях, для яких побудовані індекси

9 of 17

Модель �“сутність-зв’язок”

10 of 17

Сутність

  • Множина об’єктів, які мають однаковий набір параметрів

Класи Школи

11 of 17

Зв’язок

  • Учень вчиться у класі
  • Учитель викладає у класі

12 of 17

Модель “сутність-зв’язок”

  • Призначено для графічного зображення сутностей певної предметної області, їх параметрів та зв’язків між ними

13 of 17

Різновиди зв’язків

  • Один-до-багатьох
  • Багато-до-багатьох
  • Один-до-одного

14 of 17

Ключовий атрибут

  • Атрибут, значення якого не може повторюватись

15 of 17

Модель “сутність-зв’язок”

16 of 17

Головний принцип семантичного моделювання

  • Модель “сутність-зв’язок” повинна дозволяти зберігання будь-якого факту лише в одному місці

  • Щоб інформація, яка зберігатиметься у спроектованих за цією моделлю БД, мала якомога меншу надлишковість

17 of 17

Дякую за Увагу!