Розробка БД. Системи керування БД InterBase та Firebird
Розробка будь-якої БД розпочинається з створення таблиць. Кількість таблиць та полів в них залежить від задач працівників та кількості товарів обліку. Для створення бази автоматизованої системи обліку необхідно 24 таблиці, кожна з яких містить різну кількість полів. Перед тим, як створювати таблиці, форми та інші об’єкти необхідно визначити структуру БД. Структура БД є основою для створення ефективної бази даних. [24] Основні етапи проектування БД: 1. Визначити ціль створення БД, основні її функції та інформацію, яку вона повинна містити. БД повинна відповідати потребам тих, хто буде безпосередньо з нею працювати. Для цього потрібно визначити теми, які повинна розв’язувати БД, звіти, які вона повинна видавати, проаналізувати форми, які в даний час використовуються для запису даних; 2. Розробити структуру таблиць, яку повинна містити БД. При проектуванні таблиць рекомендується користуватися наступними основними принципами. Інформація в таблиці не повинна дублюватися. Не повинно бути повторень між таблицями. Коли певна інформація зберігається тільки в одній таблиці то і змінювати її доведеться тільки в одному місці. Це робить роботу більш ефективною, а також виключає можливість неспівпадіння інформації в різних таблицях. Кожна таблиця повинна містити інформацію тільки на одну тему. Дані на кожну тему оброблюються набагато легше, якщо воно містяться в незалежних однієї від іншої таблицях. 3. Визначити необхідні в таблиці поля. Кожна таблиця містить інформацію на певну тему, а кожне поле в таблиці містить певні відомості по темі таблиці.
Засобами обміну даними при розробці інформаційної автоматизованої системи обліку було обрано Firebird та вбудовану частину InterBase, для правильної роботи бази даних. Разом з Delphi постачаються дві частини сервера InterBase 6. x: серверна та клієнтська. Не зважаючи на те, що сервер InterBase постачається разом з Delphi, встановлюється він окремо: після встановлення Delphi видається запит на встановлення сервера InterBase. Встановлення виконується в автоматичному режимі, основні файли сервера копіюються в підкаталог INTERBASE, який знаходиться в каталозі BORLAND. Серверна частина InterBase є локальною версією сервера InterBase та використовується для налагодження програм, призначених для роботи з віддаленими базами даних (БД), дозволяючи на одному комп’ютері перевірити їх у мережевому варіанті. Після налагодження на локальному комп’ютері програму можна перенести на мережевий комп’ютер без змін, для чого потрібно: ¾ скопіювати БД на сервер; ¾ встановити для програми нові параметри з’єднання з віддаленою БД. Клієнтська частина потрібна для забезпечення доступу програм до віддаленої БД. При розробці БД та програм з використанням локальної версії сервера InterBase треба враховувати, що вона має ряд обмежень і може не підтримувати, наприклад, механізм подій сервера або функції, що визначаються користувачем. В основі роботи з віддаленою БД лежить можливість мови SQL, яка забезпечує відповідні операції. Призначення та можливості мови SQL для віддалених БД в основному співпадають з призначенням та можливостями цієї мови для локальних БД. При описі формату операторів мови SQL використовуються наступні правила: ¾ символи < та > позначають окремі елементи формату операторів, наприклад, імена таблиць і стовпчиків, та при записі операторів SQL не вказуються; ¾ в квадратних дужках розміщуються необов’язкові елементи конструкції мови; ¾ елементи списку, з якого при програмуванні можна вибрати будь-який з цих елементів, розмежовуються знаком |, а сам список розміщується в фігурних дужках. Інформація всієї БД сервера InterBase зберігається в одному файлі, який має розширення GDB. Розмір цього файлу може складати одиниці і навіть десятки гігабайт. Аналогічні розміри БД має система керування базами даних (СКБД) Microsoft SQL Server, в той час як для більш потужних СКБД Oracle та SyBase розмір БД досягає десятків і сотень гігабайт. На відміну від локальної БД, структуру якої складають таблиці (окремі або зв’язані), віддалена БД має більш складну структуру, яка включає в свій склад наступні елементи: ¾ таблиці; ¾ індекси; ¾ обмеження; ¾ домени; ¾ перегляди; ¾ генератори; ¾ тригери; ¾ функції користувача; ¾ процедури, що зберігаються; ¾ виключення; ¾ BLOB-фільтри; ¾ привілеї. Елементи структури віддаленої БД також називають метаданими. Слово "мета" має зміст "над", метадані - дані які описують структуру БД. [26] Для InterBase максимальне число таблиць в БД рівне 65536, а максимальне число стовпчиків в таблиці - 1000. Відмітимо, що таблиці InterBase мають менше число допустимих типів стовпчиків (полів), ніж таблиці локальних БД Paradox. Типи стовпчиків бази InterBase дані в таблиці 2. В таблицях InterBase відсутні наступні типи, логічний та автоінкремент. Логічний тип замінюється типом CHAR (1), а замість автоінкрементого типу для забезпечення унікальних значень використовуються генератори та тригери.
Таблиця 2 Типи даних InterBase
Для запуску сервера використовується програма InterBase Server Manager, яка викликається однойменною командою головного меню Windows або через панель інструментів. Стан серверу виводиться в надписі Status: запущеному стану сервера відповідає надпис Running, зупиненому - Stopped. Сервер InterBase може запускатись автоматично або в ручному режимі, чим керує перемикач групи Start Mode (Режим запуску). Якщо вибраний перемикач Automatic, то сервер буде автоматично викликатися при кожному запуску (перезавантаженні) Windows. Якщо ж вибраний ручний запуск (Manual), то сервер викликається кнопкою Start. Після запуску сервера кнопка Start змінює свою назву на Stop, і її повторне натиснення призводе до зупинки сервера. В Windows NT сервер можна запустити як службу (service). Ввімкнений стан перемикача "Run the InterBase server as a service on Windows NT" вказує, що сервер InterBase запускається як служба Windows NT. Надпис Root Directory показує головний каталог, в якому встановлений сервер InterBase і який можна змінити, натиснувши кнопку Change і вибравши потрібний каталог. Однак на практиці змінювати головний каталог не потрібно. Якщо сервер InterBase завантажений не як служба Windows, то в правому куті панелі задач з’являється спеціальна позначка. Закінчити роботу сервера також можна, натиснувши маніпулятором "миша" на позначці контекстного меню та задавши команду Shutdown.
Рис.4- Компоненти Delphi для роботи з БД При створенні форми ми на неї поміщаємо компоненти для зв’язку з таблицями. Це такі компоненти, як Datasource, IBQuery, IBTransaction, IBDatabase та DBGrid (рис.4). Для здійснення зв’язку з БД використовуються компоненти: ¾ IBDatabase - виконує зв’язок БД з програмою; ¾ IBTransaction - відповідає за здійснення трансакцій; ¾ Datasource - виконує зв’язок між DataSet і компонентами візуалізації та управління; ¾ DBGrid - компонент візуалізації, виводить інформацію, яка міститься в БД у вигляді таблиці; ¾ IBTable - виконує доступ до таблиць БД; ¾ DBNavigator - компонент управління, дозволяє переміщуватися по полях БД, а також додавати та знищувати поля. ¾ Для цих компонентів потрібно встановити наступні параметри: ¾ IBDatabase: ¾ DatabaseName - шлях до файлу БД; ¾ DefaultTransaction - в дане поле потрібно вписати ім’я компонента, який відповідає за трансакцію; ¾ LoginPrompt - якщо поле має значення true, то при здійсненні зв’язку з БД видається запит пароля, якщо false - запит пароля не виконується, а пароль береться із поля Params; ¾ Params - містить логін та пароль для доступу до БД. ¾ IBTransaction: DefaultDatabase - в дане поле потрібно вписати ім’я компонента, який відповідає за зв’язок з БД. ¾ Datasource: TableName - в даному полі потрібно вибрати ім’я компонента, який відповідає за зв’язок із DataSet. ¾ IBTable: DataBase - в дане поле потрібно вписати ім’я компонента, який відповідає за зв’язок з БД; TableName - в даному полі вибирається ім’я таблиці, яка міститься в БД. [25]
|