1 Реляционные БД 1970-е гг. Э. Кодд, англ. relation – отношение. Реляционная база данных – это набор простых таблиц, между которыми установлены связи (отношения) с помощью числовых кодов. Продавцы Код Название Адрес Телефон Сайт Изготовители Код Название Страна Сайт Модели Код Название Код изготовителя Товары Код Название Прайс-лист Код записи Код продавца Код изготовителя Код товара Код модели Цена
2 Реляционные БД нет дублирования информации; при изменении адреса фирмы достаточно изменить его только в таблице Продавцы; защита от неправильного ввода: можно выбрать только фирму, которая есть в таблице Продавцы; механизм транзакций: любые изменения вносятся в базу только тогда, когда они полностью завершены. сложность структуры (не более таблиц); при поиске надо обращаться к нескольким таблицам; нужно поддерживать целостность: при удалении фирмы- продавца надо удалять все связанные записи (автоматически, каскадное удаление).
3 Связи между таблицами Один к одному («1-1») – одной записи в первой таблице соответствует ровно одна запись во второй. Применение: выделение часто используемых данных. КодФамилияИмя 1ИвановКузьма 2ПетровВасилий … КодГод рожд.Адрес 11992Суворовский, д.20, кв Кирочная, д. 30, кв 18 … 1 1 Один ко многим («1- ») – одной записи в первой таблице соответствует сколько угодно записей во второй. КодНазвание 1Монитор 2Винчестер … КодКод товараЦена … 1 товары прайс-лист
4 Связи между таблицами Многие ко многим (« - ») – одной записи в первой таблице соответствует сколько угодно записей во второй, и наоборот. КодФамилия 1Иванов 2Петров … КодНазвание 1История 2География 3Биология … Реализация – через третью таблицу и две связи «1- ». КодФамилия 1Иванов 2Петров … КодНазвание 1История 2География 3Биология … Код Код учителя Код предмета Класс 1119-А 2128-Б 3237-В … расписание учителя предметы 1 1
5 Нормализация базы данных Нормализация – это разработка такой структуры БД, в которой нет избыточных данных и связей. Любое поле должно быть неделимым. Фамилия и имя Иванов Петр Петров Иван … ФамилияИмя ИвановПетр ПетровИван …… Не должно быть полей, которые обозначают различные виды одного и того же, например, товаров. ГодБананыКиви … Год Код товара Кол-во … КодТовар 1Бананы 2Киви … 1
Откройте БД telefon. Выполните задания: 1) создайте таблицы Звонки и Продолжительность:
2) Создайте связи таблиц: 1) 2) Добавьте таблицы Звонки и Продолжительность в окно Добавление таблицы
3) Установите связи между указанными полями: