SlideShare a Scribd company logo
1 of 33
11 клас
1. Що таке база даних?

На цьому уроці ви
дізнаєтесь:

2. Які є моделі баз даних?

3. Особливості роботи з

реляційними базами даних.
БАЗИ ДАНИХ.
ІНФОРМАЦІЙНІ
СИСТЕМИ
1. Інформаційні системи
Означення
База даних (БД) – це сховище даних про деяку предметну
область, організоване у вигляді спеціальної структури.
Важливо:
 дані про деяку область (не про все)
 Впорядковані
Приклади, баз даних:
1.
2.
3.
4.
5.

Книжного фонду бібліотеки,
Кадрового складу підприємства,
Телефонною служби 109
Законодавчі акти,
Фільмів, що вийшли в 2012-2013 роках.
Означення
Система керування базою даних (СКБД) – це програмне
забезпечення для роботи з БД.
Функції:
 пошук інформації в БД
 виконання нескладних розрахунків
 виведення звітів на друк
 редагування БД

Існують такі СКБД: Access, FoxPro, Paradox, Oracle,
Sybase, Informix.

Інформаційна система – це БД + СКБД.
Інформаційна система – це БД + СКБД.
Типи інформаційних систем
• локальні ІС
БД і СКБД знаходяться на одному комп'ютері.
• файл-серверні
БД знаходиться на сервері мережі
(файловому сервері), а СКБД на комп'ютері
користувача.
• клієнт-серверні
БД і основна СКБД знаходяться на сервері,
СКБД на робочій станції посилає запит
і виводить на екран результат.
Локальні ІС
БД
СКБД

автономність (незалежність)
1) з БД працює тільки одна людина
2) складно обновляти при великій кількості
користувачів
3) практично неможливо “стикувати” зміни, які
вносять різні користувачі
Файл-серверні ІС
СКБД

БД

СКБД

СКБД

СКБД

декілька людей працюють з одною базою
1) основну роботу виконують робочі станції (РС),
вони повинні бути потужними
2) для пошуку рядка на РС копіюється вся БД –
навантаження на мережу
3) слабкий захист від злому (тільки на РС)
4) проблеми при одночасній зміні з різних РС
Клієнт-серверні ІС
СКБД-клієнт

БД

запит
на SQL

СКБД-сервер:
• MS SQL Server
• Oracle
• MySQL

• Interbase
• SyBase

СКБД-клієнт
відповідь
СКБД-клієнт

SQL (Structured Query Language) – мова структурних запитів
1)
2)
3)
4)
5)

основну роботу виконує сервер, робочі станції можуть бути малопотужними
легше модернізується (тільки сервер)
по мережі ідуть тільки потрібні дані
захист і права доступу встановлюються на сервері (складніше пошкодити)
розділення доступу (черга завдань)

1) складність налаштування
2) висока вартість ПЗ (тисячі $)
БАЗИ ДАНИХ.
ІНФОРМАЦІЙНІ
СИСТЕМИ
2. Бази даних
Типи або моделі баз даних
• табличні БД
дані у вигляді однієї таблиці
• мережеві БД
набір вузлів, в яких кожен може бути
зв'язаний з кожним.
• ієрархічні БД
у вигляді багаторівневої структури
• реляційні БД (99,9%)
набір взаємопов'язаних таблиць
Історія систем баз даних
об’єктно-орієнтовані БД
стандарт об’єктноорієнтованої
моделі

реляційні
БД
реляційна модель даних

дедуктивні БД

мережеві БД

БД для Інтернету

ієрархічні БД

1960

1970

паралельні БД

1980

1990

2000
Ієрархічна БД
Ієрархічна БД – це набір даних у вигляді багаторівневої
структури.
Прайс-лист:
Іван
Іван

Продавець (рівень 1)

Монітори
Монітори

Sony
Sony

Виробник (рівень 3)

Модель (рівень 4)

S93
S93

X93B
X93B

Ціна (рівень 5)

$306
$306

$312
$312

Принтери
Принтери

Phillips
Phillips

Товар (рівень 2)

Samsung
Samsung
Ієрархічна БД
Перетворення в табличну форму:
Продавець

Товар

Виробник

Модель

Ціна

Іван

Монітор

Sony

S93

$306

Іван

Монітор

Sony

X93B

$312

Іванн

Монітор

Phillips

190 B5 CG

$318

Іван

Монітор

Samsung

SyncMaster 193P $452

…

1) дублювання даних
2) при зміні адреси фірми потрібно міняти її в усіх
рядках
3) немає захисту від помилок введених оператором
(Іван – Іванн), краще було б вибрати із списку
Мережеві БД
Мережева БД – це набір вузлів, в яких кожен може бути
зв'язаний з кожним.

А
Г

Б
В

найповніше відображає структуру деяких задач (наприклад,
мережеве планування в економіці)

1) складно зберігати і шукати інформацію в усіх зв'язках
2) заплутаність структури

!!

Можна зберігати у вигляді таблиці, але з
Можна зберігати у вигляді таблиці, але з
дублюванням даних!
дублюванням даних!
Табличні БД
Модель – картотека
Петров Вася
Шевченка пл., б. 32, кв. 11
275-75-75

Приклади:
• записна книжка
• каталог в бібліотеці

поля
записи

Прізвище

Ім'я

Адреса

Петров

Вася

Іванов

Телефон

Шевченка пл., б. 32, кв. 11

275-75-75

Петро Франка вул., б. 25, кв.12

276-76-76

1) найпростіша структура
2) всі інші типи БД використовують таблиці
в багатьох випадках – дублювання даних:
Т.Г. Шевченко

Кобзар

540 ст.

Т.Г. Шевченко

Гайдамаки

45 ст.
Табличні БД
1. Кількість полів визначається розробником і не може змінюватися
користувачем.
2. Будь-які поля повинні мати унікальне ім'я.
3. Поля можуть мати різний тип:
• рядок символів (довжиною до 255 символів)
• дійсне число (з дробовою частиною)
• ціле число
• грошова сума
• дата, час, дата і час
• логічне поле (істина або хибність, так або ні)
• багатосторінковий текст (МЕМО)
• малюнок, звук або інший об'єкт (об'єкт OLE)
4. Поля можуть бути обов'язковими для заповнення або ні.
5. Таблиці можуть містити скільки завгодно записів (ця кількість
обмежується тільки об'ємом диску); записи можна добавляти, вилучати,
редагувати, сортувати, шукати.
Ключове поле (ключ таблиці)
Ключове поле (ключ) – це поле (або комбінація полів),
які однозначно визначають запис.
В таблиці не може бути двох записів з однаковими
значеннями ключа.
Чи можуть дані поля бути ключем?
• прізвище
• ім'я
• номер паспорта
• номер будинку
• реєстраційний номер автомобіля
• пункт проживання
• дата виконаних робіт
• марка пральної машини

?
Вірю - не вірю

?

В
мережевій
системі
існує
сувора
підпорядкованість елементів: один головний,
інші підлеглі.
Прикладом ієрархічної структури є система
каталогів на диску.
Впорядкованість є найголовнішою рисою в
БД.
Ключовим полем може бути дата народження,
IMEN телефону.
БАЗИ ДАНИХ.
ІНФОРМАЦІЙНІ
СИСТЕМИ
3. Реляційні бази даних
Реляційні БД
1970-і рр. Е. Кодд, англ. relation – відношення.
Реляційна база даних – це набір простих таблиць, між якими
встановлені зв'язки (відношення) з допомогою числових кодів.
Виробник

Продавці
Код

Код

Прайс-лист
Код запису

Назва
Адреса
Телефон
Сайт

Назва

Код продавця

Країна

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

Сайт

Код товару
Код моделі
Ціна
Моделі

Товари
Код

Код

Назва

Назва
Код виробника
Реляційні БД
1) немає дублювання інформації;
2) при зміні адреси фірми, достатньо змінити її тільки в
таблиці Продавці;
3) захист від неправильного введення: можна вибирати
тільки фірму, яка заздалегідь введена в таблицю
Продавці;
4) механізм транзакції: будь-які зміни вносяться в базу
тільки тоді, коли вони повністю завершені.
1) складність структури (не більше 40-50 таблиць);
2) при пошуку потрібно звертатися до декількох таблиць;
3) потрібно підтримувати цілісність: при вилученні
фірми продавця потрібно вилучати всі зв'язані записи
з всіх таблиць (в СКБД – автоматично, каскадні
вилучення).
Зв'язки між таблицями
Один до одного («1-1») – одному запису в першій таблиці відповідає
тільки один запис в другій таблиці.
Примітка: виділення часто використовуваних даних.
1

1

Код

Прізвище

Ім'я

Код

Рік народження

Адреса

1

Іванов

Кузьма

1

1992

Шевченка, б.20, кв. 6

2

Петров

Василь

2

1993

Франка вул., б. 30, кв. 18

…

…

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

∞

1
Код

Назва

Код

Код товару

Ціна

1

Монітор

123

1

2 999

2

Вінчестер

345

1

2 499

…

…

прайспрайслист
лист
Зв’язок між таблицями
Багато до багатьох («∞ - ∞ ») – одному запису в першій таблиці
відповідає декілька записів в другій, і навпаки.
вчителі
вчителі
Код

Прізвище

∞

∞

Код

Назва

2

Петров

…

Історія

2

Іванов

1

Географія

3

1

предмети
предмети

Біологія

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

розклад
розклад
Код

Прізвище

1

Іванов

2

Петров

…

∞

∞

1

1

Код
вчителя

Код
предмету

Клас

1

1

1

9-А

2

1

2

8-Б

3

2

3

7-В

Код

…

Код

Назва

1

Історія

2

Географія

3

Біологія

…
Нормалізація бази даних
Нормалізація – це розробка такої структури БД, в які немає
надлишкових даних і зв'язків.
Основні принципи:
 Будь-яке поле повинно бути неподільним.
Прізвище

Прізвище і ім'я

Ім'я

Іванов Петро

Іванов

Петро

Петров Іван

Петров

Іван
…

…

 Не повинно бути полів, в яких позначені різні види одного і того ж,
наприклад, товарів.

∞
Рік

Банани

Ківі

2006

3200

1200

2007

5600

1500

…

1

Рік

Код
товару

Кількість

2006

1

1200

2007

2

1500

…

Код

Назва

1

Банани

2

Ківі

…
Нормалізація бази даних
Основні принципи:
 Будь-яке поле повинно залежати тільки від ключа (ключ – це
поле або комбінація полів, однозначно визначає запис).
залежить не тільки
залежить не тільки
від назви товару!
від назви товару!

товари
товари

Код

Назва

Ціна

1

Монітор

1800 грн.

2

Вінчестер

2200 грн.

прайс-лист
прайс-лист

…

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

Код

Товар

Ціна за
тонну

Кількість,
тонн

Вартість

1

Банани

240

10

2400

2

Киви

300

20

6000

…
Пошук в базі даних
Лінійний пошук – це перебір всі записів до тих пір, поки
не буде знайдений потрібний.
Код

Прізвище

1

Сидоров

2

Іванов?
Іванов?

Вєтров

…
1024

1024 порівняння!
Помаранський

дані не потрібно попередньо підготовлювати
низька швидкість пошуку
Двійковий пошук

1. Розділити область пошуку на
1. Розділити область пошуку на
дві рівні частини.
дві рівні частини.
2. Визначити, в якій половині
2. Визначити, в якій половині
знаходиться потрібний об'єкт.
знаходиться потрібний об'єкт.
3. Перейти до кроку 1 для цієї
3. Перейти до кроку 1 для цієї
половини.
половини.
4. Повторювати кроки 1-3 поки
4. Повторювати кроки 1-3 поки
об'єкт не буде “зловлений”.
об'єкт не буде “зловлений”.
Пошук в базі даних
Двійковий пошук в БД – потребує попереднього
сортування.
Іванов?
Іванов?

1

Андрєєв

1

2

Борсуков

…

…
512

255
Коваль

…
1023 Юр'єв
1024 Яшин

?
?

Андрєєв

255
Жаров
Коваль

…
1024 Яшин

Скільки порівнянь?
Скільки порівнянь?

Жаров

…
383

…
512

…

Ігорів

…
512

Коваль

…

11 порівнянь!

швидкий пошук
1) записи потрібно відсортувати по відповідному полю;
2) можна використовувати тільки для одного поля.
Пошук по індексах
Індекс – це допоміжна таблиця, яка призначена для
швидкого пошуку в основній таблиці по обраному
стовпчику.
Таблиця
Номер

Дата

Товар

Кількість

1

02.02.2006 Ківі

6

2

01.11.2006 Банани

3

3

12.04.2006 Апельсини

10

Індекси:
по даті

по товару

по кількості
Номер

Количество

Апельсини

2

3

2

Банани

1

6

1

Ківі

3

10

Номер

Дата

Номер

1

02.02.2006

3

3

12.04.2006

2

01.11.2006

Товар
Пошук по індексах
Алгоритм пошуку:
1) двійковий пошук по індексу – знайти номер
потрібних записів;
2) вибрати ці записи по номерам із основної таблиці.

двійковий пошук по всім стовпчикам, для яких
побудовані індекси

1) індекси займають місце на диску;
2) при зміні таблиці потрібно перебудовувати всі
індекси (в СКБД – автоматично).
бд початок

More Related Content

What's hot

11 клас 17 урок. Поняття моделі даних. Бази даних. СУБД.
11 клас 17 урок. Поняття моделі даних. Бази даних. СУБД.11 клас 17 урок. Поняття моделі даних. Бази даних. СУБД.
11 клас 17 урок. Поняття моделі даних. Бази даних. СУБД.StAlKeRoV
 
електронний помічник
електронний помічникелектронний помічник
електронний помічникSergiy Shydlovskyy
 
завдання і етапу всеукраїнської учнівської олімпіади
завдання і етапу всеукраїнської учнівської олімпіадизавдання і етапу всеукраїнської учнівської олімпіади
завдання і етапу всеукраїнської учнівської олімпіадиdzekodno1
 
9 клас. Урок 23. Системи опрацювання текстів.Текстовий редактор Word.
9 клас. Урок 23. Системи опрацювання текстів.Текстовий редактор Word.9 клас. Урок 23. Системи опрацювання текстів.Текстовий редактор Word.
9 клас. Урок 23. Системи опрацювання текстів.Текстовий редактор Word.StAlKeRoV
 
завдання іі етапу всеукраїнської учнівської олімпіади 2012 2013
завдання іі етапу всеукраїнської учнівської олімпіади 2012 2013завдання іі етапу всеукраїнської учнівської олімпіади 2012 2013
завдання іі етапу всеукраїнської учнівської олімпіади 2012 2013Ирина Слуцкая
 
урок 12 поняття про файл і каталог (папку), їх імена. перегляд списків імен ф...
урок 12 поняття про файл і каталог (папку), їх імена. перегляд списків імен ф...урок 12 поняття про файл і каталог (папку), їх імена. перегляд списків імен ф...
урок 12 поняття про файл і каталог (папку), їх імена. перегляд списків імен ф...Сокальська ЗШ І-ІІІ ступенів №2
 
урок 3 звязок бази даних
урок 3 звязок бази данихурок 3 звязок бази даних
урок 3 звязок бази данихHelen Pata
 
Урок 14 Стиснення та архівування даних
Урок 14 Стиснення та архівування данихУрок 14 Стиснення та архівування даних
Урок 14 Стиснення та архівування данихStAlKeRoV
 
Урок 7 Операційна ситема її складові та функції
Урок 7 Операційна ситема її складові та функціїУрок 7 Операційна ситема її складові та функції
Урок 7 Операційна ситема її складові та функціїStAlKeRoV
 
Лабораторні роботи з інформатики
Лабораторні роботи з інформатикиЛабораторні роботи з інформатики
Лабораторні роботи з інформатикиStAlKeRoV
 
урок № 9 6 клас
урок № 9   6 класурок № 9   6 клас
урок № 9 6 класdmu04041975
 
Урок 9. Операції над об'єктами файлової системи
Урок 9. Операції над об'єктами файлової системиУрок 9. Операції над об'єктами файлової системи
Урок 9. Операції над об'єктами файлової системиStAlKeRoV
 
Електронні таблиці. Табличний процесор. Запуск табличного процесора, відкритт...
Електронні таблиці. Табличний процесор. Запуск табличного процесора, відкритт...Електронні таблиці. Табличний процесор. Запуск табличного процесора, відкритт...
Електронні таблиці. Табличний процесор. Запуск табличного процесора, відкритт...Оксана Миколаївна Хоровець
 

What's hot (19)

11 клас 17 урок. Поняття моделі даних. Бази даних. СУБД.
11 клас 17 урок. Поняття моделі даних. Бази даних. СУБД.11 клас 17 урок. Поняття моделі даних. Бази даних. СУБД.
11 клас 17 урок. Поняття моделі даних. Бази даних. СУБД.
 
електронний помічник
електронний помічникелектронний помічник
електронний помічник
 
урок 8
урок 8урок 8
урок 8
 
2012 2-bazi danih
2012 2-bazi danih2012 2-bazi danih
2012 2-bazi danih
 
завдання і етапу всеукраїнської учнівської олімпіади
завдання і етапу всеукраїнської учнівської олімпіадизавдання і етапу всеукраїнської учнівської олімпіади
завдання і етапу всеукраїнської учнівської олімпіади
 
K11urok46
K11urok46K11urok46
K11urok46
 
4 клас. урок 2
4 клас. урок 24 клас. урок 2
4 клас. урок 2
 
9 клас. Урок 23. Системи опрацювання текстів.Текстовий редактор Word.
9 клас. Урок 23. Системи опрацювання текстів.Текстовий редактор Word.9 клас. Урок 23. Системи опрацювання текстів.Текстовий редактор Word.
9 клас. Урок 23. Системи опрацювання текстів.Текстовий редактор Word.
 
завдання іі етапу всеукраїнської учнівської олімпіади 2012 2013
завдання іі етапу всеукраїнської учнівської олімпіади 2012 2013завдання іі етапу всеукраїнської учнівської олімпіади 2012 2013
завдання іі етапу всеукраїнської учнівської олімпіади 2012 2013
 
урок 12 поняття про файл і каталог (папку), їх імена. перегляд списків імен ф...
урок 12 поняття про файл і каталог (папку), їх імена. перегляд списків імен ф...урок 12 поняття про файл і каталог (папку), їх імена. перегляд списків імен ф...
урок 12 поняття про файл і каталог (папку), їх імена. перегляд списків імен ф...
 
урок 3 звязок бази даних
урок 3 звязок бази данихурок 3 звязок бази даних
урок 3 звязок бази даних
 
Урок 14 Стиснення та архівування даних
Урок 14 Стиснення та архівування данихУрок 14 Стиснення та архівування даних
Урок 14 Стиснення та архівування даних
 
Урок 7 Операційна ситема її складові та функції
Урок 7 Операційна ситема її складові та функціїУрок 7 Операційна ситема її складові та функції
Урок 7 Операційна ситема її складові та функції
 
файли папки
файли папкифайли папки
файли папки
 
Лабораторні роботи з інформатики
Лабораторні роботи з інформатикиЛабораторні роботи з інформатики
Лабораторні роботи з інформатики
 
урок № 9 6 клас
урок № 9   6 класурок № 9   6 клас
урок № 9 6 клас
 
Урок 9. Операції над об'єктами файлової системи
Урок 9. Операції над об'єктами файлової системиУрок 9. Операції над об'єктами файлової системи
Урок 9. Операції над об'єктами файлової системи
 
Електронні таблиці. Табличний процесор. Запуск табличного процесора, відкритт...
Електронні таблиці. Табличний процесор. Запуск табличного процесора, відкритт...Електронні таблиці. Табличний процесор. Запуск табличного процесора, відкритт...
Електронні таблиці. Табличний процесор. Запуск табличного процесора, відкритт...
 
9 Class
9 Class9 Class
9 Class
 

Similar to бд початок

ієрархічна, мережева, реляційна модель бази даних
ієрархічна, мережева, реляційна модель бази данихієрархічна, мережева, реляційна модель бази даних
ієрархічна, мережева, реляційна модель бази данихИрина Валериевна
 
Презентация .pptx
Презентация .pptxПрезентация .pptx
Презентация .pptxssuser5a6560
 
Bazi danih
Bazi danihBazi danih
Bazi danih1cana1
 
бази даних
бази данихбази даних
бази данихEscuela
 
бази даних 1
бази даних 1бази даних 1
бази даних 1anja_79
 
Поняття моделі подання даних, основні моделі подання-1(2).pptx
Поняття моделі подання даних, основні моделі подання-1(2).pptxПоняття моделі подання даних, основні моделі подання-1(2).pptx
Поняття моделі подання даних, основні моделі подання-1(2).pptxRexterMaster
 
база даних
база данихбаза даних
база данихMaria Gulko
 
Бази данних
Бази даннихБази данних
Бази даннихAhmad Dzhuma
 
база даних
база данихбаза даних
база данихMaria Gulko
 
Lesson23 relational databases, their objects. instructing with bc
Lesson23 relational databases, their objects. instructing with bcLesson23 relational databases, their objects. instructing with bc
Lesson23 relational databases, their objects. instructing with bcNikolay Shaygorodskiy
 
Відображення моделі «сутність-зв’язок» на базу даних.ppt
Відображення моделі «сутність-зв’язок» на базу даних.pptВідображення моделі «сутність-зв’язок» на базу даних.ppt
Відображення моделі «сутність-зв’язок» на базу даних.pptssuser7d6cd0
 
8 klas informatika_kazanceva_2016
8 klas informatika_kazanceva_20168 klas informatika_kazanceva_2016
8 klas informatika_kazanceva_2016UA7009
 
8 klas informatika_kazanceva_2016
8 klas informatika_kazanceva_20168 klas informatika_kazanceva_2016
8 klas informatika_kazanceva_2016NEW8
 
8 i k_2016
8 i k_20168 i k_2016
8 i k_20164book
 

Similar to бд початок (20)

ієрархічна, мережева, реляційна модель бази даних
ієрархічна, мережева, реляційна модель бази данихієрархічна, мережева, реляційна модель бази даних
ієрархічна, мережева, реляційна модель бази даних
 
Бази даних
Бази данихБази даних
Бази даних
 
Презентация .pptx
Презентация .pptxПрезентация .pptx
Презентация .pptx
 
Bazi danih
Bazi danihBazi danih
Bazi danih
 
бази даних
бази данихбази даних
бази даних
 
бази даних 1
бази даних 1бази даних 1
бази даних 1
 
Поняття моделі подання даних, основні моделі подання-1(2).pptx
Поняття моделі подання даних, основні моделі подання-1(2).pptxПоняття моделі подання даних, основні моделі подання-1(2).pptx
Поняття моделі подання даних, основні моделі подання-1(2).pptx
 
Access
AccessAccess
Access
 
база даних
база данихбаза даних
база даних
 
Бази данних
Бази даннихБази данних
Бази данних
 
база даних
база данихбаза даних
база даних
 
11 клас 17 урок бд
11 клас 17 урок бд11 клас 17 урок бд
11 клас 17 урок бд
 
Lesson23 relational databases, their objects. instructing with bc
Lesson23 relational databases, their objects. instructing with bcLesson23 relational databases, their objects. instructing with bc
Lesson23 relational databases, their objects. instructing with bc
 
Lectionbase
LectionbaseLectionbase
Lectionbase
 
Sql db
Sql dbSql db
Sql db
 
Відображення моделі «сутність-зв’язок» на базу даних.ppt
Відображення моделі «сутність-зв’язок» на базу даних.pptВідображення моделі «сутність-зв’язок» на базу даних.ppt
Відображення моделі «сутність-зв’язок» на базу даних.ppt
 
8 klas informatika_kazanceva_2016
8 klas informatika_kazanceva_20168 klas informatika_kazanceva_2016
8 klas informatika_kazanceva_2016
 
8 klas informatika_kazanceva_2016
8 klas informatika_kazanceva_20168 klas informatika_kazanceva_2016
8 klas informatika_kazanceva_2016
 
8 i k_2016
8 i k_20168 i k_2016
8 i k_2016
 
8 i k_2016
8 i k_20168 i k_2016
8 i k_2016
 

More from Ирина Слуцкая

програма семінара директорів
програма семінара директорівпрограма семінара директорів
програма семінара директорівИрина Слуцкая
 
методичні рекомендації з інформатики
методичні рекомендації з інформатикиметодичні рекомендації з інформатики
методичні рекомендації з інформатикиИрина Слуцкая
 
методичні рекомендації 2015 2016 інф
методичні рекомендації 2015 2016 інфметодичні рекомендації 2015 2016 інф
методичні рекомендації 2015 2016 інфИрина Слуцкая
 

More from Ирина Слуцкая (20)

аналіз 2 3 етап
аналіз 2 3 етапаналіз 2 3 етап
аналіз 2 3 етап
 
я атестуюсь Слуцька
я атестуюсь Слуцькая атестуюсь Слуцька
я атестуюсь Слуцька
 
гра 20162017
гра 20162017гра 20162017
гра 20162017
 
програма семінара директорів
програма семінара директорівпрограма семінара директорів
програма семінара директорів
 
міксіке20 10 15
міксіке20 10 15міксіке20 10 15
міксіке20 10 15
 
урок 4 9кл
урок 4 9клурок 4 9кл
урок 4 9кл
 
дпаNmo 940
дпаNmo 940дпаNmo 940
дпаNmo 940
 
дн 1 9-438
дн 1 9-438дн 1 9-438
дн 1 9-438
 
методичні рекомендації з інформатики
методичні рекомендації з інформатикиметодичні рекомендації з інформатики
методичні рекомендації з інформатики
 
лист
листлист
лист
 
методичні рекомендації 2015 2016 інф
методичні рекомендації 2015 2016 інфметодичні рекомендації 2015 2016 інф
методичні рекомендації 2015 2016 інф
 
лист МОН
лист МОНлист МОН
лист МОН
 
урок 28
урок 28урок 28
урок 28
 
міксіке матем
міксіке матемміксіке матем
міксіке матем
 
10кл формули та функції
10кл формули та функції10кл формули та функції
10кл формули та функції
 
Chat
ChatChat
Chat
 
наказ 3 олимпиади
наказ 3 олимпиадинаказ 3 олимпиади
наказ 3 олимпиади
 
завдання для II етапу
завдання для II етапузавдання для II етапу
завдання для II етапу
 
Slutska mk bl_fc
Slutska mk bl_fcSlutska mk bl_fc
Slutska mk bl_fc
 
Виступ 121114
Виступ 121114Виступ 121114
Виступ 121114
 

бд початок

  • 2.
  • 3. 1. Що таке база даних? На цьому уроці ви дізнаєтесь: 2. Які є моделі баз даних? 3. Особливості роботи з реляційними базами даних.
  • 5. Означення База даних (БД) – це сховище даних про деяку предметну область, організоване у вигляді спеціальної структури. Важливо:  дані про деяку область (не про все)  Впорядковані Приклади, баз даних: 1. 2. 3. 4. 5. Книжного фонду бібліотеки, Кадрового складу підприємства, Телефонною служби 109 Законодавчі акти, Фільмів, що вийшли в 2012-2013 роках.
  • 6. Означення Система керування базою даних (СКБД) – це програмне забезпечення для роботи з БД. Функції:  пошук інформації в БД  виконання нескладних розрахунків  виведення звітів на друк  редагування БД Існують такі СКБД: Access, FoxPro, Paradox, Oracle, Sybase, Informix. Інформаційна система – це БД + СКБД. Інформаційна система – це БД + СКБД.
  • 7. Типи інформаційних систем • локальні ІС БД і СКБД знаходяться на одному комп'ютері. • файл-серверні БД знаходиться на сервері мережі (файловому сервері), а СКБД на комп'ютері користувача. • клієнт-серверні БД і основна СКБД знаходяться на сервері, СКБД на робочій станції посилає запит і виводить на екран результат.
  • 8. Локальні ІС БД СКБД автономність (незалежність) 1) з БД працює тільки одна людина 2) складно обновляти при великій кількості користувачів 3) практично неможливо “стикувати” зміни, які вносять різні користувачі
  • 9. Файл-серверні ІС СКБД БД СКБД СКБД СКБД декілька людей працюють з одною базою 1) основну роботу виконують робочі станції (РС), вони повинні бути потужними 2) для пошуку рядка на РС копіюється вся БД – навантаження на мережу 3) слабкий захист від злому (тільки на РС) 4) проблеми при одночасній зміні з різних РС
  • 10. Клієнт-серверні ІС СКБД-клієнт БД запит на SQL СКБД-сервер: • MS SQL Server • Oracle • MySQL • Interbase • SyBase СКБД-клієнт відповідь СКБД-клієнт SQL (Structured Query Language) – мова структурних запитів 1) 2) 3) 4) 5) основну роботу виконує сервер, робочі станції можуть бути малопотужними легше модернізується (тільки сервер) по мережі ідуть тільки потрібні дані захист і права доступу встановлюються на сервері (складніше пошкодити) розділення доступу (черга завдань) 1) складність налаштування 2) висока вартість ПЗ (тисячі $)
  • 12. Типи або моделі баз даних • табличні БД дані у вигляді однієї таблиці • мережеві БД набір вузлів, в яких кожен може бути зв'язаний з кожним. • ієрархічні БД у вигляді багаторівневої структури • реляційні БД (99,9%) набір взаємопов'язаних таблиць
  • 13. Історія систем баз даних об’єктно-орієнтовані БД стандарт об’єктноорієнтованої моделі реляційні БД реляційна модель даних дедуктивні БД мережеві БД БД для Інтернету ієрархічні БД 1960 1970 паралельні БД 1980 1990 2000
  • 14. Ієрархічна БД Ієрархічна БД – це набір даних у вигляді багаторівневої структури. Прайс-лист: Іван Іван Продавець (рівень 1) Монітори Монітори Sony Sony Виробник (рівень 3) Модель (рівень 4) S93 S93 X93B X93B Ціна (рівень 5) $306 $306 $312 $312 Принтери Принтери Phillips Phillips Товар (рівень 2) Samsung Samsung
  • 15. Ієрархічна БД Перетворення в табличну форму: Продавець Товар Виробник Модель Ціна Іван Монітор Sony S93 $306 Іван Монітор Sony X93B $312 Іванн Монітор Phillips 190 B5 CG $318 Іван Монітор Samsung SyncMaster 193P $452 … 1) дублювання даних 2) при зміні адреси фірми потрібно міняти її в усіх рядках 3) немає захисту від помилок введених оператором (Іван – Іванн), краще було б вибрати із списку
  • 16. Мережеві БД Мережева БД – це набір вузлів, в яких кожен може бути зв'язаний з кожним. А Г Б В найповніше відображає структуру деяких задач (наприклад, мережеве планування в економіці) 1) складно зберігати і шукати інформацію в усіх зв'язках 2) заплутаність структури !! Можна зберігати у вигляді таблиці, але з Можна зберігати у вигляді таблиці, але з дублюванням даних! дублюванням даних!
  • 17. Табличні БД Модель – картотека Петров Вася Шевченка пл., б. 32, кв. 11 275-75-75 Приклади: • записна книжка • каталог в бібліотеці поля записи Прізвище Ім'я Адреса Петров Вася Іванов Телефон Шевченка пл., б. 32, кв. 11 275-75-75 Петро Франка вул., б. 25, кв.12 276-76-76 1) найпростіша структура 2) всі інші типи БД використовують таблиці в багатьох випадках – дублювання даних: Т.Г. Шевченко Кобзар 540 ст. Т.Г. Шевченко Гайдамаки 45 ст.
  • 18. Табличні БД 1. Кількість полів визначається розробником і не може змінюватися користувачем. 2. Будь-які поля повинні мати унікальне ім'я. 3. Поля можуть мати різний тип: • рядок символів (довжиною до 255 символів) • дійсне число (з дробовою частиною) • ціле число • грошова сума • дата, час, дата і час • логічне поле (істина або хибність, так або ні) • багатосторінковий текст (МЕМО) • малюнок, звук або інший об'єкт (об'єкт OLE) 4. Поля можуть бути обов'язковими для заповнення або ні. 5. Таблиці можуть містити скільки завгодно записів (ця кількість обмежується тільки об'ємом диску); записи можна добавляти, вилучати, редагувати, сортувати, шукати.
  • 19. Ключове поле (ключ таблиці) Ключове поле (ключ) – це поле (або комбінація полів), які однозначно визначають запис. В таблиці не може бути двох записів з однаковими значеннями ключа. Чи можуть дані поля бути ключем? • прізвище • ім'я • номер паспорта • номер будинку • реєстраційний номер автомобіля • пункт проживання • дата виконаних робіт • марка пральної машини ?
  • 20. Вірю - не вірю ? В мережевій системі існує сувора підпорядкованість елементів: один головний, інші підлеглі. Прикладом ієрархічної структури є система каталогів на диску. Впорядкованість є найголовнішою рисою в БД. Ключовим полем може бути дата народження, IMEN телефону.
  • 22. Реляційні БД 1970-і рр. Е. Кодд, англ. relation – відношення. Реляційна база даних – це набір простих таблиць, між якими встановлені зв'язки (відношення) з допомогою числових кодів. Виробник Продавці Код Код Прайс-лист Код запису Назва Адреса Телефон Сайт Назва Код продавця Країна Код виробника Сайт Код товару Код моделі Ціна Моделі Товари Код Код Назва Назва Код виробника
  • 23. Реляційні БД 1) немає дублювання інформації; 2) при зміні адреси фірми, достатньо змінити її тільки в таблиці Продавці; 3) захист від неправильного введення: можна вибирати тільки фірму, яка заздалегідь введена в таблицю Продавці; 4) механізм транзакції: будь-які зміни вносяться в базу тільки тоді, коли вони повністю завершені. 1) складність структури (не більше 40-50 таблиць); 2) при пошуку потрібно звертатися до декількох таблиць; 3) потрібно підтримувати цілісність: при вилученні фірми продавця потрібно вилучати всі зв'язані записи з всіх таблиць (в СКБД – автоматично, каскадні вилучення).
  • 24. Зв'язки між таблицями Один до одного («1-1») – одному запису в першій таблиці відповідає тільки один запис в другій таблиці. Примітка: виділення часто використовуваних даних. 1 1 Код Прізвище Ім'я Код Рік народження Адреса 1 Іванов Кузьма 1 1992 Шевченка, б.20, кв. 6 2 Петров Василь 2 1993 Франка вул., б. 30, кв. 18 … … Один до багатьох («1- ∞ ») – одному запису в першій таблиці відповідає декілька записів в другій. товари товари ∞ 1 Код Назва Код Код товару Ціна 1 Монітор 123 1 2 999 2 Вінчестер 345 1 2 499 … … прайспрайслист лист
  • 25. Зв’язок між таблицями Багато до багатьох («∞ - ∞ ») – одному запису в першій таблиці відповідає декілька записів в другій, і навпаки. вчителі вчителі Код Прізвище ∞ ∞ Код Назва 2 Петров … Історія 2 Іванов 1 Географія 3 1 предмети предмети Біологія … Реалізація – через третю таблицю і два зв'язки «1-∞». розклад розклад Код Прізвище 1 Іванов 2 Петров … ∞ ∞ 1 1 Код вчителя Код предмету Клас 1 1 1 9-А 2 1 2 8-Б 3 2 3 7-В Код … Код Назва 1 Історія 2 Географія 3 Біологія …
  • 26. Нормалізація бази даних Нормалізація – це розробка такої структури БД, в які немає надлишкових даних і зв'язків. Основні принципи:  Будь-яке поле повинно бути неподільним. Прізвище Прізвище і ім'я Ім'я Іванов Петро Іванов Петро Петров Іван Петров Іван … …  Не повинно бути полів, в яких позначені різні види одного і того ж, наприклад, товарів. ∞ Рік Банани Ківі 2006 3200 1200 2007 5600 1500 … 1 Рік Код товару Кількість 2006 1 1200 2007 2 1500 … Код Назва 1 Банани 2 Ківі …
  • 27. Нормалізація бази даних Основні принципи:  Будь-яке поле повинно залежати тільки від ключа (ключ – це поле або комбінація полів, однозначно визначає запис). залежить не тільки залежить не тільки від назви товару! від назви товару! товари товари Код Назва Ціна 1 Монітор 1800 грн. 2 Вінчестер 2200 грн. прайс-лист прайс-лист …  Не повинно бути полів, які можуть бути знайдені з допомогою інших. Код Товар Ціна за тонну Кількість, тонн Вартість 1 Банани 240 10 2400 2 Киви 300 20 6000 …
  • 28. Пошук в базі даних Лінійний пошук – це перебір всі записів до тих пір, поки не буде знайдений потрібний. Код Прізвище 1 Сидоров 2 Іванов? Іванов? Вєтров … 1024 1024 порівняння! Помаранський дані не потрібно попередньо підготовлювати низька швидкість пошуку
  • 29. Двійковий пошук 1. Розділити область пошуку на 1. Розділити область пошуку на дві рівні частини. дві рівні частини. 2. Визначити, в якій половині 2. Визначити, в якій половині знаходиться потрібний об'єкт. знаходиться потрібний об'єкт. 3. Перейти до кроку 1 для цієї 3. Перейти до кроку 1 для цієї половини. половини. 4. Повторювати кроки 1-3 поки 4. Повторювати кроки 1-3 поки об'єкт не буде “зловлений”. об'єкт не буде “зловлений”.
  • 30. Пошук в базі даних Двійковий пошук в БД – потребує попереднього сортування. Іванов? Іванов? 1 Андрєєв 1 2 Борсуков … … 512 255 Коваль … 1023 Юр'єв 1024 Яшин ? ? Андрєєв 255 Жаров Коваль … 1024 Яшин Скільки порівнянь? Скільки порівнянь? Жаров … 383 … 512 … Ігорів … 512 Коваль … 11 порівнянь! швидкий пошук 1) записи потрібно відсортувати по відповідному полю; 2) можна використовувати тільки для одного поля.
  • 31. Пошук по індексах Індекс – це допоміжна таблиця, яка призначена для швидкого пошуку в основній таблиці по обраному стовпчику. Таблиця Номер Дата Товар Кількість 1 02.02.2006 Ківі 6 2 01.11.2006 Банани 3 3 12.04.2006 Апельсини 10 Індекси: по даті по товару по кількості Номер Количество Апельсини 2 3 2 Банани 1 6 1 Ківі 3 10 Номер Дата Номер 1 02.02.2006 3 3 12.04.2006 2 01.11.2006 Товар
  • 32. Пошук по індексах Алгоритм пошуку: 1) двійковий пошук по індексу – знайти номер потрібних записів; 2) вибрати ці записи по номерам із основної таблиці. двійковий пошук по всім стовпчикам, для яких побудовані індекси 1) індекси займають місце на диску; 2) при зміні таблиці потрібно перебудовувати всі індекси (в СКБД – автоматично).