Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика / Access / БазыДанных_Теория.ppt
Скачиваний:
182
Добавлен:
24.03.2016
Размер:
2 Mб
Скачать

Иерархические БД

12

 

Иерархическая БД – это набор данных в виде многоуровневой структуры (дерева).

Рабочий

стол

Мои

Мой

Сетевое

документы

компьютер

окружение

Моя

Мои

Мои

A: С: D:

Учебники Задания Рисунки

музыка

рисунки

видеозаписи

 

 

07/10/19

Иерархические БД

 

 

 

13

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Прайс-лист:

 

 

 

 

 

 

 

Продавец

 

 

 

Кей

 

 

 

(уровень 1)

 

 

 

 

 

 

 

Товар

 

Мониторы

Принтеры

(уровень 2)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

Sony

Phillips

Samsung

(уровень 3)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Модель S93 X93B

(уровень 4)

Цена

$306

$312

(уровень 5)

07/10/19

Иерархические БД

14

 

 

 

 

 

Приведение к табличной форме:

Продавец

Товар

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

Модель

Цена

Кей

Монитор

Sony

S93

$306

Кей

Монитор

Sony

X93B

$312

Key

Монитор

Phillips

190 B5 CG

$318

Кей

Монитор

Samsung

SyncMaster 193P

$452

 

 

 

 

дублирование данных

при изменении адреса фирмы надо менять его во всех строках

нет защиты от ошибок ввода оператора

(Кей Key), лучше было бы выбирать из списка

07/10/19

Реляционные БД

15

 

1970-е гг. Э. Кодд, англ. relation – отношение.

Реляционная база данных – это между которыми установлены помощью числовых кодов.

набор простых таблиц, связи (отношения) с

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

Продавцы

Прайс-лист

Код

Код записи

Название

Код продавца

Адрес

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

Телефон

Код товара

Сайт

Код модели

Товары

Цена

 

Код

 

Название

 

07/10/19

 

Код

Название

Страна Сайт

Модели

Код Название Код изготовителя

Реляционные БД

16

 

нет дублирования информации;

при изменении адреса фирмы достаточно изменить его только в таблице Продавцы;

защита от неправильного ввода: можно выбрать только фирму, которая есть в таблице Продавцы;

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

сложность структуры (не более 40-50 таблиц);

при поиске надо обращаться к нескольким таблицам;

нужно поддерживать целостность: при удалении

фирмы-продавца надо удалять все связанные записи07/10/19(автоматически, каскадное удаление).

Связи между таблицами

17

 

Один к одному («1-1») – одной записи в первой таблице соответствует ровно одна запись во второй. Применение: выделение часто используемых данных.

1

 

 

1

 

 

Код

Фамилия

Имя

Код

Год рожд.

Адрес

1

Иванов

Кузьма

1

1992

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

2

Петров

Василий

2

1993

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

 

 

 

 

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

товары

1

 

 

 

прайс-

 

Код

Название

Код

Код товара

лист

 

Цена

 

1

Монитор

123

1

10 999

 

2

Винчестер

345

1

11 999

 

07/10/19

 

 

 

 

 

 

 

Связи между таблицами

18

 

Многие ко многим (« - ») – одной записи в первой таблице соответствует сколько угодно записей во

второй, и наоборот.

 

 

 

предметы

учителя

Код

Фамилия

 

Код

Название

1

История

 

 

 

 

 

 

1

Иванов

 

 

2

География

 

 

2

Петров

 

 

 

 

 

 

 

 

3

Биология

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Реализация – через третью таблицу и две связи «1- ».

1

 

 

 

 

 

 

 

 

1

Код

Фамилия

Код

 

Код

Код

Класс

Код

Название

1

Иванов

 

учителя

предмета

 

1

История

1

 

1

1

9-А

2

Петров

 

2

География

2

 

1

2

8-Б

 

 

 

 

 

 

3

Биология

 

 

 

3

 

2

3

7-В

расписани

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

е

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

19

 

Нормализация – это разработка такой структуры БД, в которой нет избыточных данных и связей.

Любое поле должно быть неделимым.

имя

Фамилия

Имя

Иванов

Иванов

Петр

Петров

Петров

Иван

 

Не должно быть полей, которые обозначают

 

 

различные виды одного и того же, например, товаров.

 

 

 

 

 

1

 

Год

Киви

Год

Код

Кол-во

Код

Товар

2006

1200

товара

1

Бананы

 

 

2006

1

1200

2007

1500

2

Киви

2007

2

1500

 

 

 

 

 

 

 

 

 

 

 

 

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

20

 

Любое поле должно зависеть только от ключа (ключ – это поле или комбинация полей, однозначно

определяющая запись).

зависит не только

 

 

товары Код

Название

от названия товара!

1

Монитор

 

прайс-лист

2

Винчестер

 

 

Не должно быть полей, которые могут быть найдены с помощью остальных.

Код

Товар

Цена за тонну

Кол-во, тонн

Стоимость

1

Бананы

1200

10

 

2

Киви

1500

20

 

07/10/19

Поиск в базах данных

21

 

Линейный поиск – это перебор всех записей до тех пор, пока не будет найдена нужная.

Код

Фамилия

 

1

Сидоров

Иванов?

2

Ветров

 

 

1024 сравнения!

1024

Померанцев

 

данные не надо предварительно готовить

низкая скорость поиска

07/10/19

Соседние файлы в папке Access