Реферат з інформатики
Системи управління базами даних (СУБД)
У діловій сфері часто приходиться працювати з даними з різних джерел, кожне з який пов'язане з певним видом діяльності. Для координації всіх цих даних необхідні певні знання й організаційні навички.
Електронною базою даних (БД) називається послідовність даних заданої структури, записана на магнітний диск комп'ютера.
Системи управління базами даних (СУБД) є набором програмних засобів, необхідних для створення, використання і підтримки баз даних.
База даних – це набір даних з наступними властивостями:
· дані логічно пов'язані між собою і несуть відповідну інформацію;
· структура баз даних звичайно відповідає тому специфічному набору даних, які вона містить;
· бази даних відображають тільки окремі аспекти реального світу, що дає змогу визначити їх як "мікросвіт".
Система управління базами даних (СУБД) поєднує відомості з різних джерел в одній реляційній базі даних. Створювані форми, запити і звіти дозволяють швидко й ефективно обновляти дані, отримувати відповіді на питання, здійснювати пошук потрібних даних, аналізувати дані, друкувати звіти, діаграми і поштові наклейки.
Системи управління даними першого покоління
СУБД першого покоління характерні тим, що кожна група користувачів розробляла своє власне програмне забезпечення по управлінню даними. Наслідками такої сепаратизації стало надмірне дублювання програмних кодів і даних.
Системи управління даними другого покоління
Файли взаємопов'язаних даних об'єднуються в бази даних. СУБД створюються для таких досвідчених користувачів, як програмісти.
Системи управління даними третього покоління
Можливості СУБД розширились. Створені розвинуті інтерфейси, що забезпечують інтерактивний доступ звичайним користувачам.
Переваги СУБД :
· Скорочення надлишку даних;
· Без баз даних неможливо уникнути зберігання надлишкових даних;
· При наявності центрального контролю баз даних деякі надлишкові дані можна усунути;
· Надлишкові дані не можуть бути повністю усунені, оскільки велику роль в СУБД відіграють питання часу і достовірності.
У світі існує безліч СУБД. Незважаючи на те, що вони можуть по-різному працювати з різними об'єктами і надають користувачу різні функції й засоби, більшість СУБД спираються на єдиний устояний комплекс основних понять. Це дає нам можливість розглянути одну систему й узагальнити її поняття, прийоми й методи на весь клас СУБД. В якості такого навчального об'єкта розглянемо СУБД Microsoft Access, що входить до пакета Microsoft Office.
Найпоширенішими СУБД є VisualFoxPro та MicrosoftAccess.
СИСТЕМА УПРАВЛІННЯ БАЗАМИ ДАНИХ
VISUAL
FOXPRO
(
VFP
)
Загальна характеристика СУБД
VFP
СУБД VFP — це реляційна база даних. Кожна таблиця зберігається в окремому файлі з розширенням dbf. Усі інші об'єкти — форми (form), запити (query), звіти (report), програми (program), меню (menu), уявлення (view) теж зберігаються в окремих файлах з відповідними типами.
Типи даних.
Дані поділяються на змінні бази даних (поля), змінні пам'яті (використовуються для проміжного зберігання даних) та масиви змінних пам'яті. Ім'я змінної може мати довжину до 10 символів, містити літери від А до Z, всі цифри та знак підкреслювання (—). У таблиці 1 перелічені типи даних, які можуть
приймати змінні.
Таблиця
1
Тип даних | Характеристика |
Character | Може містити всі символи клавіатури, максимальна довжина — 254 |
Currency | Грошовий тип, може приймати значення від -900Е8 до +900Е8, містить 4 дробові розряди • |
Float | Може містити цифри, десяткову крапку. Максимальна довжина поля — 20 символів |
Numeric | Може містити цифри, десяткову крапку. Максимальна довжина поля — 20 символів (ціла частина + дробова частина + 1, якщо є десяткова крапка) |
Date | Містить дату в такому вигляді: місяць/число/рік, наприклад, 10/31/01 |
Date Time | Містить дату та час, наприклад, 10/31/01 11:59 РМ |
Double | Може містити числові дані, але обчислення виконуються з більшою точністю, ніж з даними типу Numeric |
Logical | Логічний тип даних. Може приймати два значення Т (True) та F (False) |
Memo | Дозволяє зберігати текст необмеженого розміру. Дані у цьому випадку зберігаються в іншому файлі |
General | Може містити OLE-об'єкти, компоненти Windows, об'єкти, що створені в інших додатках |
Character (binary) | Може містити будь-які 8-бітні значення та символ null (0) |
Memo (binary) | Дозволяє зберігати відскановані зображення, оцифровану музику тощо. |
СИСТЕМА УПРАВЛШНЯ БАЗАМИ ДАНИХ MICROSOFT ACCESS
Система управління базами даних Microsoft Access входить до складу пакета Microsoft Office. Вона дозволяє розв’язувати широке коло завдань користувачів без програмування і доступна для широкого кола непрофесійних користувачів персональних комп’ютерів.
Система управління базами даних (СУБД) Access розроблена для експлуатації у комп’ютерних мережах у середовищі Windows.
Одна з основних переваг СУБД Ассеss полягає у тому, що вона має прості та зручні засоби обробки кількох таблиць у одній базі даних. Таблиця є основним об’єктом бази даних. У одній базі даних зберігається кілька таблиць та засоби зв’язування таблиць.
У системі Acсess є різні способи управління даними, а саме:
- система меню;
- панелі інструментів;
- контекстивне меню;
- укажчик миші;
- комбінації клавіш.
СУБД Access має значну кількість спеціальних програм – “майстрів”. Є майстер таблиць, майстер кнопок, майстер форм та ін. Майстри здійснюють діалог з користувачем, у процесі якого визначаються дані, необхідні для розв’язування відповідної задачі. Для зручності роботи кожен майстер має певні етапи (кроки). Будь-який етап можна пропустити або звернутись до попередніх.
Формою видачі даних на екран користувач може управляти. Важливо правильно конструювати форми, оскільки саме з ними працює користувач при введенні і редагуванні записів бази даних. Крім того, форми можна використовувати для збирання та виведення інформації.
Етапи створення бази даних у середовищі MicrosoftAccess:
· визначення мети створення бази даних;
· визначення таблиць, які повинна містити база даних;
· визначення структури таблиць (полів та їх типів);
· призначення ключів таблиць та створення потрібних індексів;
· визначення зв'язків між таблицями;
· завантаження даних;
· створення інших об'єктів бази даних: запитів, форм, звітів, макросів та модулів;
· аналіз ефективності бази даних за допомогою майстра таблиць (меню СЕРВИС>АНАЛИЗ>ТАБЛИЦА) та аналізатора швидкодії (меню СЕРВИС>АНАЛИЗ>БЬІСТРОДЕЙСТВИЕ).
Розглянемо призначення об'єктів Access.
Таблиця
призначена для збереження даних у вигляді записів (рядків) і полів (стовпців). Таблиці складають основу бази даних. Саме в них зберігається інформація, організована певним чином.
Запит -
дозволяє отримати потрібні дані з однієї чи декількох таблиць, розрахувати значення деяких даних за формулами.
Форма
-
об'єкт, призначений, як для введення, так і для ви-ведення даних у зручному для користувача вигляді. У формі можна розмістити елементи керування, які застосовуються для введення, зображення і зміни даних у полях таблиць.
Звіт
- об'єкт, призначений для друку даних.
Макроси
-
засоби для автоматизації роботи з формами, звітами та ін.
Модулі
-
програмні модулі мовою Visual Basic.
Створення бази даних завжди починається з розробки структури її таблиць. Структура повинна бути такою, щоб при роботі з базою в неї було потрібно вводити якнайменше даних. Якщо введення якихось даних доводиться повторювати неодноразово, базу роблять з декількох зв'язаних таблиць. Структуру кожної таблиці розробляють окремо. Для того щоб зв'язки між таблицями працювали надійно, і за записом з однієї таблиці можна було однозначно знайти запис в іншій таблиці, треба передбачити в таблиці унікальні поля. Унікальне поле
- це поле, значення в якому не можуть повторюватися. Якщо дані в полі повторюються і необхідно видавати повідомлення про це, то для таких даних використовують ключове поле.
Проектування бази даних
Перед тим як створювати таблиці, форми та інші об'єкти, потрібно задати структуру бази даних. Добра структура бази даних є основою для створення адекватної вимогам, ефективної бази даних. Сам процес проектування бази даних являє собою складний процес проектування відображення опису предметної області у схему внутрішньої моделі даних. Перебіг цього процесу є послідовністю більш простих процесів проектування менш складних відображень. Ця послідовність у процесі проектування весь час уточнюється, вдосконалюється таким чином, щоб були визначені об'єкти, їх властивості та зв'язки, які будуть потрібні майбутнім користувачам системи.
Пропонуємо майбутнім користувачам систем управління базами даних два підходи, два варіанти проектування баз даних. Перший варіант широко відомий, бо він запропонований фірмою Microsoft. Другий варіант відображає практичний досвід проектування, і за основу взято варіант, надрукований у «ComputerWorld — Moscow» за 1996 рік.
Варіант 1. Етапи проектування бази даних
Нижче наведені основні етапи проектування бази да
1.Визначення мети створення бази даних.
2.Визначення таблиць, що їх повинна містити база даних.
3.Визначення необхідних у таблиці полів.
4.Завдання індивідуального значення кожному полю.
5.Визначення зв'язків між таблицями.
6.Відновлення структури бази даних.
7.Додавання даних і створення запитів, форм, звітів та інших об'єктів бази даних.
8.Використання засобів аналізу в СУБД.
Розглянемо ці етапи дещо детальніше.
1. Визначення мети створення бази даних.
На першому етапі проектування бази даних необхідно визначити мету створення бази даних, основні її функції та інформацію, яку вона повинна містити. Тобто потрібно визначити основні теми таблиць бази даних та інформацію, що міститимуть поля таблиць.
База даних має відповідати вимогам тих, хто безпосередньо з нею працюватиме. Для цього потрібно визначити теми, які повинна покривати база даних, звіти, які вона має видавати, проаналізувати форми, що у даний момент використовуються для запису даних, порівняти створювану базу даних із добре спроектованою, подібною їй базою.
2.
Визначення таблиць, які повинні містити база даних.
Одним із найскладніших етапів у процесі проектування бази даних є розробка таблиць, тому що результати, які повинна видавати база даних (звіти, вихідні форми тощо), не завжди дають повне уявлення про структуру таблиці. У разі проектування таблиць зовсім не обов'язково використовувати СУБД. Спочатку краще розробити структуру на папері. Отже, у разі проектування таблиць слід керуватися такими основними принципами:
—інформація в таблиці не повинна дублюватися. Не повинно бути повторень і між таблицями. Коли певна інформація зберігається лише в одній таблиці, то і змінювати її доведеться лише в одному місці. Це робить роботу ефективнішою, а також виключає можливість розбіжності інформації в різних таблицях. Наприклад, в одній таблиці мають міститися адреси й телефони клієнтів;
кожна таблиця повинна містити інформацію лише на однутему. Дані на кожну тему опрацьовуються набагато легше, якщо вони утримуються в незалежних одна від іншої таблицях. Наприклад, адреси та замовлення клієнтів зберігаються в різних таблицях, щоб у разі вилучення замовлення інформація про клієнта залишилася в базі даних.
3. Визначення необхідних у таблиці полів.
Кожна таблиця містить інформацію на окрему тему, а кожне поле в таблиці містить окремі дані по темі таблиці. Наприклад, у таблиці з даними про клієнта можуть бути поля з назвою компанії, адресою, містом, країною і номером телефону. Під час розробки полів для кожної таблиці необхідно пам'ятати:
—кожне поле має бути пов'язане з темою таблиці;
—не рекомендується включати до таблиці дані, що є
результатом виразу;
—у таблиці має бути вся необхідна інформація;
—інформацію варто розбивати на найменші логічні одиниці (наприклад, поля «Ім'я» і «Прізвище», а не загальне поле «Ім'я»).
4. Задання індивідуального значення кожному полю.
З тим, щоб СУБД могла зв'язати дані з різних таблиць, наприклад дані про клієнта і його замовлення, кожна таблиця повинна містити поле чи набір полів, що задаватимуть індивідуальне значення кожного запису в таблиці. Таке поле чи набір полів називають
основним ключем.
5. Визначення зв'язків між таблицями.
Після розподілу даних по таблицях і визначення ключових полів необхідно вибрати схему для зв'язку даних у різних таблицях. Для цього потрібно визначити зв'язки між таблицями. Бажано вивчати зв'язки між таблицями в уже існуючій базі даних. Для перегляду зв'язків у вибраній базі даних відкриваємо її і вибираємо відповідні команди.
6. Відновлення структури бази даних.
Після проектування таблиць, полів і зв'язків необхідно ще раз переглянути структуру бази даних і виявити можливі недоліки. Бажано це зробити на даному етапі, поки таблиці не заповнені даними. Для перевірки необхідно створити кілька таблиць, визначити зв'язки між ними та ввести кілька записів у кожну таблицю, потім подивитися, чи відповідає база даних поставленим вимогам. Рекомендується також створити чернеткові вихідні форми та звіти й перевірити, чи видають вони необхідну інформацію. Крім того, необхідно виключити з таблиць усі можливі повторення даних.
7. Додавання даних і створення інших об'єктів бази даних.
Якщо структури таблиць відповідають поставленим вимогам, то можна вводити всі дані. Потім можна створювати будь-які запити, форми, звіти, макроси та модулі.
8. Використання засобів аналізу в СУБД.
Наприклад, у СУБД MicrosoftAccessє два інструменти для вдосконалення структури баз даних. Майстер аналізу таблиць
досліджує таблицю, в разі потреби пропонує нову її структуру та зв'язки, а також переробляє її. Аналізатор швидкодії
досліджує всю базу даних, дає рекомендації з її поліпшення, а також реалізує їх.
Варіант 2. Розробка проекту бази даних
1. Розробка логічної моделі даних.
Логічні моделі використовуються розробниками баз даних для формального представлення інформаційних потреб виробництва, економіки, бізнесу тощо. Найрозповсюдженішою формою відображення цієї моделі слугують ER-діаграми. Основними поняттями ER-моделі є
сутність, зв'язок та атрибут. Кожна з частин такої діаграми повідомляє дещо про структуру даних або про те, як ці дані співвідносяться з іншими.
Як правило, розробка логічної моделі являє собою ітераційний процес, що складається з фаз аналізу, проектування та оцінювання. При цьому на кожній ітерації додаються нові правила. Добрі засоби проектування баз даних мають бути гнучкими, а організація роботи з ними — ефективною. ER-діаграми повинні доповнюватися детальнішою інформацією про бізнес, правила та обмеження посилання на цілісність, а також давати змогу керувати наочним поданням деталей моделі.
Під час створення логічної моделі потрібно насамперед провести важливу роботу з замовником. Найбільший обсяг робіт з базами даних пов'язаний із запитами. Тож потрібно якнайдокладніше дізнатися від замовника про можливі запити до бази даних. Досвід проектування свідчить про те, що замовники часто не уявляють, які можливості даватиме їм база даних, до вирішення яких нових задач вони зможуть долучитися. Через це під час проектування потрібно якнайраніше показати замовникам їхні можливі горизонти, щоб так само якнайраніше довелося б вносити зміни до логічної моделі.
2.
Підготовка звіту про логічну модель.
Для відстежування процесу проектування логічної моделі використовуються звіти.
3. Вони корисні також для узгодження вимог із замовниками. У звітах, як правило, перераховуються сутності, їх атрибути, правила та обмеження, що вміщують до бази даних. Добрі засоби підготовки звітів містять різні види інформації про логічну модель, сприяють гнучкому розміщенню та форматуванню, а також поданню звіту у файл або його експорту в інші додатки. При узгодженні вимог із замовниками варто результат оформляти окремим протоколом.
3.
Перетворення логічної моделі у фізичну.
У процесі розробки фізичної моделі сутності, атрибути та зв'язки складають фізичну модель, відображаються у таблиці та стовпчиках. До раніш заданих властивостей стовпчиків (типів даних, протяжностей і невизначених значень) додаються нові — первинні та зовнішні ключі, індекси, перевірочні обмеження та правила підтримки посилкової цілісності. Щоб правильно і добре виконати цей етап проектування, засоби моделювання даних повинні працювати з кількома популярними СУБД SQL-типу, графічно відображати фізичні характеристики, дозволяти призначати та модифікувати триггери1
за замовчування, створювати власні триггери, денормалізувати фізичну модель, не торкаючись при цьому логічної.
4.
Підготовка звіту про фізичну модель.
Як правило, для того, щоб переглянути якусь таблицю або всі таблиці одночасно, разом з деталями (стовпчики, їх характеристики, індекси, зовнішні ключі та триггери) застосовують звіт про фізичну модель. Добрі засоби підготовки таких звітів прості в користуванні, мають гнучкий інтерфейс для задання елементів, що включаються до звіту, організації звіту та його формування. Вони повинні надавати детальну інформацію про реалізацію обмежень, правил посилкової цілісності, включаючи призначення та зміст триг-герів.
Генерація схеми бази даних.
Схема описує реалізацію бази даних з урахуванням специфіки конкретної СУБД. Схема може створюватися або мовою визначення даних (файли DDL), або при прямому зверненні до СУБД. Програмні продукти, які добре підтримують генерацію схеми, дають засоби контролю за генеруючими елементами схеми, що дає змогу зробити цей процес ітеративним. Варто шукати інструменти, які підключаються до нашої цільової СУБД і дають можливість переключатися між різними СУБД, мінімізуючи при цьому ручне редагування.
6.
Супроводження розроблюваної моделі даних.
Більшість баз даних протягом свого життєвого циклу еволюціонує. Для того, щоб спростити цей процес, рекомендується синхронно змінювати модель та базу даних. Варто звертати увагу на засоби синхронізації, утиліти керування версіями та захисту. За допомогою найзручніших у роботі інструментів можна переносити зміни в обидва боки: з моделі в схему, і навпаки. Якщо раніше замовник після здачі СУБД в експлуатацію відмовлявся від супроводження, то тепер, як правило, проектувальники супроводжують експлуатацію СУБД. Це накладає на них додаткову відповідальність за якість проектування, бо всі негаразди доводиться ліквідовувати їм самим.
7.
Звернене проектування, що виходить з існуючої бази даних.
Відтворення схеми існуючої бази даних служить кільком цілям. Воно дає змогу побудувати модель цієї бази даних, перенести існуючу базу даних з однієї СУБД на іншу, а також досить просто модифікувати схему бази даних, що функціонує. Ключо вими параметрами для виконання такого завдання є точність та гнучкість. Ми повинні мати можливість задати елементи схеми, з якими працюватиме програма, й очікується, що внаслідок генерації схеми бази даних за відновленою моделлю має з'явитися тотожна копія початкової схеми.
Як бачимо, другий варіант окреслює загальніший підхід до проектування баз даних та враховує відносини з замовником проекту.