Слайд 1БАЗИ ДАНИХ. ІНФОРМАЦІЙНІ СИСТЕМИ
Тема 1. Інформаційні системи
Слайд 2Означення
База даних (БД) – це сховище даних про деяку предметну
область, організоване у вигляді спеціальної структури.
Важливо:
дані про деяку область
(не про все)
впорядковані
Система керування базою даних (СКБД) – це програмне забезпечення для роботи з БД.
Функції:
пошук інформації в БД
виконання нескладних розрахунків
виведення звітів на друк
редагування БД
Інформаційна система – це БД + СКБД.
Слайд 3Типи інформаційних систем
локальні ІС
БД і СКБД знаходяться
на одному комп'ютері.
файл-серверні
БД знаходиться на сервері мережі
(файловому сервері), а СКБД на комп'ютері
користувача.
клієнт-серверні
БД і основна СКБД знаходяться на сервері,
СКБД на робочій станції посилає запит
і виводить на екран результат.
Слайд 4Локальні ІС
автономність (незалежність)
з БД працює тільки одна людина
складно обновляти при
великій кількості користувачів
практично неможливо “стикувати” зміни, які вносять різні користувачі
Слайд 5Файл-серверні ІС
декілька людей працюють з одною базою
основну роботу виконують робочі
станції (РС), вони повинні бути потужними
для пошуку рядка на РС
копіюється вся БД – навантаження на мережу
слабкий захист від злому (тільки на РС)
проблеми при одночасній зміні з різних РС
Слайд 6Клієнт-серверні ІС
СКБД-клієнт
СКБД-клієнт
СКБД-клієнт
основну роботу виконує сервер, робочі станції можуть бути малопотужними
легше
модернізується (тільки сервер)
по мережі ідуть тільки потрібні дані
захист і права
доступу встановлюються на сервері (складніше пошкодити)
розділення доступу (черга завдань)
запит
на SQL
відповідь
SQL (Structured Query Language) – мова структурних запитів
складність налаштування
висока вартість ПЗ (тисячі $)
Слайд 7БАЗИ ДАНИХ. ІНФОРМАЦІЙНІ СИСТЕМИ
Тема 2. Бази даних
Слайд 8Типи баз даних
табличні БД
дані у вигляді однієї
таблиці
мережеві БД
набір вузлів, в яких кожен може
бути
зв'язаний з кожним.
ієрархічні БД
у вигляді багаторівневої структури
реляційні БД (99,9%)
набір взаємопов'язаних таблиць
Слайд 9Табличні БД
Модель – картотека
Приклади:
записна книжка
каталог в бібліотеці
найпростіша структура
всі інші типи
БД використовують таблиці
в багатьох випадках – дублювання даних:
Слайд 10Табличні БД
Кількість полів визначається розробником і не може змінюватися користувачем.
Будь-які
поля повинні мати унікальне ім'я.
Поля можуть мати різний тип:
рядок
символів (довжиною до 255 символів)
дійсне число (з дробовою частиною)
ціле число
грошова сума
дата, час, дата і час
логічне поле (істина або хибність, так або ні)
багатосторінковий текст (МЕМО)
малюнок, звук або інший об'єкт (об'єкт OLE)
Поля можуть бути обов'язковими для заповнення або ні.
Таблиці можуть містити скільки завгодно записів (ця кількість обмежується тільки об'ємом диску); записи можна добавляти, вилучати, редагувати, сортувати, шукати.
Слайд 11Ключове поле (ключ таблиці)
Ключове поле (ключ) – це поле (або
комбінація полів), які однозначно визначають запис.
В таблиці не
може бути двох записів з однаковими значеннями ключа.
Чи можуть дані поля бути ключем?
прізвище
ім'я
номер паспорта
номер будинку
реєстраційний номер автомобіля
пункт проживання
дата виконаних робіт
марка пральної машини
?
Слайд 12Мережеві БД
Мережева БД – це набір вузлів, в яких кожен
може бути зв'язаний з кожним.
найповніше відображає структуру деяких задач (наприклад,
мережеве планування в економіці)
складно зберігати і шукати інформацію в усіх зв'язках
заплутаність структури
Слайд 13Ієрархічна БД
Ієрархічна БД – це набір даних у вигляді багаторівневої
структури.
Прайс-лист:
Продавець (рівень 1)
Товар (рівень 2)
Модель (рівень 4)
Ціна (рівень 5)
Виробник (рівень
3)
$306
$312
S93
X93B
Sony
Phillips
Samsung
Монітори
Принтери
Іван
Слайд 14Ієрархічна БД
Перетворення в табличну форму:
дублювання даних
при зміні адреси фірми потрібно
міняти її в усіх рядках
немає захисту від помилок введених оператором
(Іван – Іванн), краще було б вибрати із списку
Слайд 15БАЗИ ДАНИХ. ІНФОРМАЦІЙНІ СИСТЕМИ
Тема 3. Реляційні бази даних
Слайд 16Реляційні БД
1970-і рр. Е. Кодд, англ. relation – відношення.
Реляційна база
даних – це набір простих таблиць, між якими встановлені зв'язки
(відношення) з допомогою числових кодів.
Слайд 17Реляційні БД
немає дублювання інформації;
при зміні адреси фірми, достатньо змінити
її тільки в таблиці Продавці;
захист від неправильного введення: можна вибирати
тільки фірму, яка заздалегідь введена в таблицю Продавці;
механізм транзакції: будь-які зміни вносяться в базу тільки тоді, коли вони повністю завершені.
складність структури (не більше 40-50 таблиць);
при пошуку потрібно звертатися до декількох таблиць;
потрібно підтримувати цілісність: при вилученні фірми продавця потрібно вилучати всі зв'язані записи з всіх таблиць (в СКБД – автоматично, каскадні вилучення).
Слайд 18Зв'язки між таблицями
Один до одного («1-1») – одному запису в
першій таблиці відповідає тільки один запис в другій таблиці.
Примітка: виділення
часто використовуваних даних.
1
1
Один до багатьох («1- ») – одному запису в першій таблиці відповідає декілька записів в другій.
1
товари
прайс-лист
Слайд 19Зв’язок між таблицями
Багато до багатьох (« - ») – одному
запису в першій таблиці відповідає декілька записів в другій, і
навпаки.
Реалізація – через третю таблицю і два зв'язки «1-».
розклад
вчителі
предмети
1
1
Слайд 20Нормалізація бази даних
Нормалізація – це розробка такої структури БД, в
які немає надлишкових даних і зв'язків.
Основні принципи:
Будь-яке поле повинно бути
неподільним.
Не повинно бути полів, в яких позначені різні види одного і того ж, наприклад, товарів.
1
Слайд 21Нормалізація бази даних
Основні принципи:
Будь-яке поле повинно залежати тільки від ключа
(ключ – це поле або комбінація полів, однозначно визначає запис).
Не повинно бути полів, які можуть бути знайдені з допомогою інших.
товари
залежить не тільки від назви товару!
прайс-лист
Слайд 22Пошук в базі даних
Лінійний пошук – це перебір всі записів
до тих пір, поки не буде знайдений потрібний.
Іванов?
1024 порівняння!
дані не
потрібно попередньо підготовлювати
низька швидкість пошуку
Слайд 23Двійковий пошук
Розділити область пошуку на дві рівні частини.
Визначити, в якій
половині знаходиться потрібний об'єкт.
Перейти до кроку 1 для цієї
половини.
Повторювати кроки 1-3 поки об'єкт не буде “зловлений”.
Слайд 24Пошук в базі даних
Двійковий пошук в БД – потребує попереднього
сортування.
Іванов?
записи потрібно відсортувати по відповідному полю;
можна використовувати тільки для одного
поля.
швидкий пошук
11 порівнянь!
Слайд 25Пошук по індексах
Індекс – це допоміжна таблиця, яка призначена для
швидкого пошуку в основній таблиці по обраному стовпчику.
Таблиця
Індекси:
по даті
по товару
по кількості
Слайд 26Пошук по індексах
Алгоритм пошуку:
двійковий пошук по індексу – знайти номер
потрібних записів;
вибрати ці записи по номерам із основної таблиці.
індекси займають
місце на диску;
при зміні таблиці потрібно перебудовувати всі індекси (в СКБД – автоматично).
двійковий пошук по всім стовпчикам, для яких побудовані індекси
Слайд 27БАЗИ ДАНИХ. ІНФОРМАЦІЙНІ СИСТЕМИ
Тема 4. Бази даних Access.
Робота з таблицями
Слайд 28Бази даних Access (Microsoft Office)
Розширення: *.mdb, один файл
Склад:
таблиці;
форми – діалогові
вікна для введення і редагування даних;
запити – звернення до бази
даних для вибору потрібної інформації або зміни бази;
звіти – документи для виведення на друк;
макроси – засоби автоматизації роботи;
модулі – додаткові процедури на мові Visual Basic.
Слайд 29Початок роботи
Пуск – Програми – Microsoft Office – Microsoft Access
2003
Слайд 30Сервіс – Схема даних
таблиця
ключове поле
зв'язок «1-»
Усунути зв'язок: ЛКМ + Delete.
Створити зв'язок: перетягнути потрібне поле на відповідне поле іншої таблиці.
Слайд 31Робота з таблицями
Таблиці – Замовлення –
або два рази клікаємо ЛКМ
Слайд 32Робота з таблицями
поля
записи
поточний запис
область виділення
новий запис
на 1-й запис
попередній запис
номер поточного
запису
наступний запис
останній запис
перейти на новий запис
всього записів
поточне поле
Слайд 33Сортування і пошук
Сортування по поточному полю (стовпчику):
по зростанню (в алфавітному
порядку)
по спаданню (в зворотному алфавітному порядку)
Пошук і заміна:
поточне поле або
всі поля
повністю, з будь-якою частиною, з початку
всі, вверх, вниз
Слайд 34Фільтрація
Фільтрація – це відбір записів, які задовольняють деяку умову (фільтр).
Решта
записів тимчасово скриваються, поки фільт не буде знятий.
Фільтр по виділеному
Клікнути
в потрібній комірці або виділити частину тексту.
Клікнути по кнопці .
Зняти фільтр .
Слайд 35Фільтрація
Складені умови
Одночасно
(операція І)
Починається з ‘С’
нова умова, зв'язана через АБО
Записи –
Фільтр – Змінити фільтр
Повний варіант:
Записи – Фільтр
– Розширений фільтр
можна переставляти стовпчики
можна виводити не всі стовпчики
можна встановлювати порядок сортування
Точне співпадання
Слайд 36Службові операції
Сервіс – Службові програми:
Перетворити базу даних
в формат Access-97
в формат
Access-2000
Стиснути і відновити базу даних
(фізично вилучити зайві записи)
Резервна
копія бази даних
Встановлення пароля:
Сервіс – Захист – Задати пароль бази даних
Слайд 37БАЗИ ДАНИХ. ІНФОРМАЦІЙНІ СИСТЕМИ
Тема 5. Проектування таблиць
Слайд 38Створення таблиць
введення даних і назв полів (режим таблиця);
конструктор – ручне
налаштування;
майстер таблиць – створення таблиць стандартних типів (Товари, Клієнти, Співробітники,
…);
імпорт таблиць – завантаження даних із інших джерел (БД інших форматів, Excel, текстові файли, …).
Слайд 39Створення таблиць
Введення даних
Майстер
Імпорт
з інших БД Access
з БД інших форматів (*.db,
*.dbf)
з таблиць Excel
и документів XML
з текстових БД (CSV – comma
separated values)
Слайд 40Конструктор таблиць
перейти в
конструктор
перейти в
режим таблиці
Слайд 41Конструктор таблиць
тип поля (вибір з списку)
властивості поточного поля
ключ
поточне поле
Слайд 42Властивості полів
Розмір поля: байт, ціле, дійсне, …
Формат поля: як виводити
на екран.
Маска введення: шаблон (введення телефону).
Підпис: як називається стовпчик при
виведенні на екран (можна використовувати лапки, знаки і т.д. «Населення, млн. чол.»)
Значення по замовчуванню (вписується автоматично).
Умови на значення: захист від помилок введення («>18»).
Повідомлення про помилку («Вік повинен бути більше 18 років!»)
Обов'язкові поля (так/ні)
Індексовані поля (так/ні)
Слайд 43Операції з полями
зробити поле ключовим (скасувати…)
добавити поле
вище поточного
вилучити поточне поле
(або всі виділені)
індекси
поле таблиці
(вибір з списку)
Primary Key:
ключ таблиці
назва індексу
Слайд 44Підстановки
Мета: створити захист від помилок введення.
Розв'язання: вибір з списку =
поле підстановки
Варіанти:
заданий список («так» або «ні», «Ч» або «Ж»)
з
другої таблиці (наприклад, вибір назви фірми)
Як зробити:
Слайд 46БАЗИ ДАНИХ. ІНФОРМАЦІЙНІ СИСТЕМИ
Тема 6. Форми
Слайд 47Форми
Форма – це діалогове вікно для:
перегляду і редагування даних
введення нових
записів
керування процесом роботи (кнопки)
виведення додаткової інформації
Створення форм:
джерело даних
Слайд 48Створення форм
Конструктор – повністю вручну.
Майстер форм – режим «запитання –
відповідь».
Автоформа в стовпчик:
Автоформа стрічкова:
Автоформа таблична:
Діаграма:
Слайд 49Конструктор форм
перейти в
конструктор
перейти в
режим форми
область виділення
кнопки переходу
Слайд 50Конструктор форм
вибраний елемент
заголовок форми
область даних
примітки форми
Слайд 51Властивості форми
Вікно властивостей
Правка – Виділити форму
область виділення
Макет
кнопки переходу
Дані
Джерело – таблиця
або запит
Фільтр – умова відбору записів
Сортування
Події (призначення макросів)
натискання на клавішу,
дії мишкою, …
відкриття, закриття, зміна запису, …
Слайд 52Зв'язані елементи
надпис (текст можна міняти)
поле (назва поля таблиці)
маркери (зміна розмірів)
незалежне
переміщення
клікнути всередині, щоб змінити текст
клікнути на рамці, щоб виділити елемент
Слайд 53Властивості елементів
Панель форматування
вибраний елемент
назва шрифту
розмір шрифту
жирний, курсив, підкреслений
вирівнювання
колір фону
колір тексту
колір
рамки
товщина рамки
стиль
Стиль оформлення:
нормальний, припіднятий, втоплений, вдавлений,
с тінню, рельєфний
Виділення елементів:
ЛКМ
на рамці елемента
+ Shift = виділення декількох елементів
Слайд 54Властивості елементів
Вікно властивостей
Макет:
розміри
оформлення
Дані:
Дані – назва поля
Маска введення – шаблон (для
телефону)
Значення по замовчуванню
Умова по значенню
Повідомлення про помилку
Події
дії користувача (клавіатура, миша)
зміна
даних
ПКМ – Властивості
Слайд 55Добавлення нових елементів
Вивести (приховати) панель елементів
вибір об'єктів
майстри
надпис
поле (інформація з бази
даних
малюнок
незалежний об'єкт (наприклад, діаграма Excel)
елементи інтерфейсу
зв'язаний об'єкт (який зберігається
в БД)
розрив сторінки
підлегла форма
інші елементи
Слайд 56БАЗИ ДАНИХ. ІНФОРМАЦІЙНІ СИСТЕМИ
Тема 7. Макроси
Слайд 57Макроси
Макрос – це набір макрокоманд.
Макрокоманда описує дії, які потрібно
виконати:
відкриття і закриття таблиць, звітів, форм
виконання запитів
встановлення значень полів
пошук даних
керування
виведенням на екран
друк даних
повідомлення користувачу
запуск інших програм
Події (для запуску макросу)
дії користувача (клавіатура, миша)
внутрішні події (відкриття і закриття форми, зміна запису і т.д.)
Слайд 59Макроси
Відлагодження макросу
перейти в конструктор
Запуск – По крокам
запустити на виконання
Використання макросів
AutoExec
– виконується автоматично при відкриванні бази
призначення подій
вибрати ім'я макросу
з списку
Слайд 60Макроси
Групи макросів
Вигляд – Імена макросів
Запуск
Макрос1: QQQ
Макрос1: MMM
Макрос1
тільки перша група
Умови виконання
Вигляд – Умова
або
Слайд 61БАЗИ ДАНИХ. ІНФОРМАЦІЙНІ СИСТЕМИ
Тема 8. Запити
Слайд 62Запити
«Ну і запити у вас!» - сказала база даних и
«зависла».
(Фольклор)
Запит – це звернення до СКБД для виконання яких-небудь операцій
з даними.
Типи запитів:
вибірка
створення таблиці
обновлення (зміна даних)
добавлення записів
вилучення записів
…
Слайд 63Запит і фільтрування
В запиті можна:
відбирати інформацію з декількох зв'язаних таблиць
використовувати
складні умови відбору
користувач може сам ввести параметри (суму грошей)
добавити обчислювані
поля
виконати підсумкові розрахунки
Слайд 67Конструктор
перейти в
конструктор
перейти в
режим таблиці
Слайд 68Конструктор
таблиця
(ПКМ – Добавити таблицю)
перетягнути ЛКМ
всі поля
по зростанню
по спаданню
відсутнє
фільтр
Слайд 69Робота з стовпчиками
виділити (ЛКМ)
ПКМ:
вирізати
копіювати
вставити
властивості
перетягнути(ЛКМ)
Слайд 70Умови відбору
Співпадання
Нерівність
Шаблон
* будь-яка кількість, будь-яких символів
? один будь-який символ #
будь-яка цифра
Слайд 71Побудова виразів
Forms – форми
Reports – звіти
Функції: 1) вбудовані; 2) функції
користувача (VB)
Константи: порожня стрічка, Істина, Хибність
Оператори: + - *
/ < > <= >= = <> Not And Or Xor
Загальні вирази – час, дата, нумерація сторінок
ПКМ
Слайд 72Обчислювані поля
ввести Ціна*Кількість
Вираз1: [Ціна]*[Кількість]
замінити Вираз1 на Сума
ввести
Year(Дата)
Вираз1: Year([Дата])
замінити Вираз1 на Рік
або ПКМ - Побудувати
Слайд 73Запити з параметрами
Задача: вводити числові дані для фільтра не в
конструкторі, а при виконанні запиту.
Приклад: «Якою сумою Ви розраховуєте?»
Будь-який незалежний рядок викликає запит
Слайд 74Підсумковий запит
Конструктор
Таблиця
Підсумковий запит
Групові операції
Групування
Групування
Sum – сума
Слайд 76Перехресний запит
Таблиці
Перехресний запит
Слайд 77Перехресний запит
Конструктор: Запит – Перехресний
Заголовок рядка
Заголовок стовпця
Значення
Майстер – не
дозволяє вибирати інформацію з декількох таблиць (тільки через додатковий запит).
Слайд 78Запит на оновлення (зміну)
Задача: в усіх записах, які відносяться до
2007 року, замінити дату в полі Дата на сьогоднішнє число.
Розв'язання:
запит,
який відбирає всі потрібні записи
резервна копія таблиці (Копіювати – Вставити)
меню Запит – Оновлення
в рядку Оновлення ввести нове значення поля:
виконати запит
Оновлення
Слайд 79Інші види запитів
Вилучення:
запит на вибірку потрібних записів
резервна копія таблиці
Запит
– Вилучення
виконати запит
Створення таблиці:
Запит – Створення таблиці
Добавлення даних в
підсумкову таблицю:
Запит – Добавлення
Повторні записи:
Запит – Створити – Повторний запис
Записи без підлеглих:
Запит – Створити – Записи без підлеглих
Слайд 80БАЗИ ДАНИХ. ІНФОРМАЦІЙНІ СИСТЕМИ
Тема 9. Звіти
Слайд 81Створення звітів
Звіт – це документ, який містить інформацію з бази
даних і призначений для виведення на друк.
Джерело: таблиця або запит
Слайд 82Автозвіти
Автозвіт в стовпчик
Автозвіт стрічковий
Слайд 84Режим перегляду звіту
– перейти в конструктор
– друк
– масштаб (переключення режиму)
–
одна сторінка
– дві сторінки
– декілька сторінок
– масштаб у відсотках
– закрити
вікно перегляду
– налаштування (поля, формат папір)
Слайд 85Конструктор звітів
Заголовок звіту – один раз на початку звіту.
Верхній колонтитул
– на початку кожної сторінки.
Область даних – інформація з БД.
Нижній
колонтитул – в кінці кожної сторінки.
Примітки звіту – один раз в кінці звіту.
=“Сторінка " & [Page] & " з " & [Pages]
=Now()
Слайд 86Редагування звітів
– вивести (приховати) панель елементів
– властивості вибраного елемента
Аналогічно, як
в конструкторі форм:
ЛКМ – виділити елемент
Слайд 87Звіти з групуванням
групування по посадах
загальна зарплата
Слайд 88Звіти з групуванням (крок 1)
Створення запиту, який включає всі дані:
&
- з'єднання символьних рядків
поля таблиць
Слайд 89Звіти з групуванням (крок 2)
Використання майстра звітів:
Підсумкові дані
Слайд 90Звіти з групуванням (конструктор)
Заголовок групи
Примітки групи
Слайд 91Звіти з групуванням (конструктор)
сортування і групування