Наступна сторінка                         Зміст                Електронні посібники ВНТУ

 


 

ЛАБОРАТОРНА РОБОТА № 1
СТВОРЕННЯ ФАЙЛУ БАЗИ ДАНИХ, ЙОГО РЕДАГУВАННЯ ТА КОРИГУВАННЯ

 

 

Мета: навчитись створювати та редагувати файл БД: вивчити структуру об'єкта “таблиця”; навчитися задавати полям різні типи даних, виконувати операції в таблицях; навчитися працювати з фільтрами.

 

1.1  Теоретичні відомості

 

1.1.1 Визначення та класифікація БД

База даних (БД) — впорядкований набір логічно взаємопов'язаних даних, що використовуються спільно та призначені для задоволення інформаційних потреб користувачів. У технічному розумінні включно й система керування БД.

Головне завдання БД — гарантоване збереження значних обсягів інформації (так звані записи даних) та надання доступу до БД користувачеві або ж прикладній програмі. Таким чином, БД складається з двох частин: збереженої інформації та системи керування.

БД можна класифікувати за різними ознаками (табл. 1.1).

 

Таблиця 1.1 — Класифікація БД

Класифікація БД:

за моделлю даних:

  • ієрархічні;
  • мережеві;
  • реляційні;
  • об'єктні;
  • об'єктно-орієнтовані;
  • об'єктно-реляційні;

за технологією фізичного зберігання:

  • БД у вторинній пам'яті (традиційні);
  • БД в оперативній пам'яті (in-memory databases);
  • БД у третинній пам'яті (tertiary databases);

за ступенем розподіленості:

  • централізовані (зосереджені);
  • розподілені;

за застосуванням мови програмування:

  • відкриті (спираються на одну з універсальних мов);
  • замкнуті (використовується власна мова програмування);

за функціями, які виконуються:

  • інформаційні;
  • операційні;

за сферою застосування:

  • універсальні;
  • спеціалізовані;

за «потужністю»:

  • корпоративні;
  • настільні;

за способом доступу:

  • з локальним доступом;
  • з віддаленим (мережевим) доступом.

 

Окреме місце в теорії та практиці займають просторові (англ. spatial), тимчасові, або темпоральні (temporal) і просторово-часові (spatial-temporal) БД.

Системи централізованих БД з віддаленим (мережевим) доступом можуть допускати різні архітектури подібних систем:

  •  „файл-сервер”,
  •  „клієнт-сервер”.

 

1.1.2 Коротка характеристика деяких СУБД

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

MySQL — вільна СУБД. MySQL є власністю компанії Oracle Corporation, що отримала її разом з поглиненою Sun Microsystems, яка здійснює розробку і підтримку додатку. Розповсюджується під GNU General Public License і під власною комерційною ліцензією. Крім цього розробники створюють функціональність на замовлення ліцензійних користувачів, саме завдяки таким замовленням з'явився механізм реплікації.

MySQL із самого початку була дуже схожою на mSQL, проте з часом вона розширювалася і зараз MySQL — одна з найпоширеніших СУБД.

Використовується, у першу чергу, для створення динамічних веб-сторінок, оскільки має підтримку з боку різноманітних мов програмування.

MySQL є рішенням для малих і середніх додатків. Зазвичай MySQL використовується як сервер, до якого звертаються локальні або віддалені клієнти, проте до дистрибутиву входить бібліотека внутрішнього сервера, що дозволяє включати MySQL до автономних програм. Вихідні коди сервера компілюються на багатьох платформах.

Гнучкість СУБД MySQL забезпечується підтримкою великої кількості типів таблиць: користувачі можуть вибрати як таблиці типу MyISAM, що підтримують повнотекстовий пошук, так і таблиці InnoDB, що підтримують транзакції на рівні окремих записів. СУБД MySQL поставляється із спеціальним типом таблиць EXAMPLE, що демонструє принципи створення нових типів таблиць. Завдяки відкритій архітектурі, GPL-ліцензуванню, в СУБД MySQL постійно з'являються нові типи таблиць. MySQL характеризується великою швидкістю, стійкістю і простотою.

PostgreSQL — об'єктно-реляційна СУБД. Є альтернативою як комерційним СУБД (Oracle Database, Microsoft SQL Server, IBM DB2 та інші), так і СУБД з відкритим кодом (MySQL, Firebird, SQLite).

Порівняно з іншими проектами з відкритим кодом, такими як Apache, FreeBSD або MySQL, PostgreSQL дана СУБД не контролюється однією компанією, її розробка можлива завдяки співпраці багатьох людей та компаній, які бажають використовувати дану СУБД та впроваджувати в неї найновіші досягнення.

СУБД Oracle — це найпотужніший програмний комплекс, що дозволяє створювати додатки будь-якої складності. Ядром цього комплексу є БД, що зберігає інформацію, кількість якої за рахунок наданих засобів масштабування практично необмежена. З високою ефективністю працювати з відповідною інформацією одночасно може практично будь-яка кількість користувачів (за наявності достатніх апаратних ресурсів) без тенденції до зниження продуктивності системи при різкому збільшенні їх кількості.

Механізми масштабування в СУБД Oracle останньої версії дозволяють збільшувати потужність і швидкість роботи сервера Oracle, додатків, додаючи нові вузли кластеру. Це не вимагає зупинки працюючих додатків, переписування старих додатків, розроблених для звичайної одномашинної архітектури. Крім того, вихід з ладу окремих вузлів кластера також не призводить до зупинки програми.

Вбудовування до СУБД Oracle JavaVM повномасштабної підтримки серверних технологій (Java Server Pages, Java-сервлети, модулі Enterprise JavaBeans, інтерфейси прикладного програмування CORBA), призвели до того, що Oracle де-факто є стандартом СУБД для Internet.

СУБД Oracle поставляється практично для всіх існуючих операційних систем. Працюючи під Sun Solaris, Linux, Windows або на інший операційній системі з продуктами Oracle не буде виникати проблем у роботі. СУБД Oracle однаково добре працює на будь-якій платформі. Таким чином, компаніям, які розпочинають роботу з продуктами Oracle не доводиться змінювати мережеве оточення. Існує лише невелика кількість відмінностей при роботі з СУБД, обумовлених операційною системою.

Microsoft SQL Server — система управління реляційними БД, розроблена корпорацією Microsoft. Основна мова запитів — Transact-SQL, створена спільно Microsoft та Sybase. Transact-SQL є реалізацією стандарту ANSI/ISO щодо структурованої мови запитів (SQL) із розширеннями. Використовується для роботи з БД розміром від персональних до великих БД масштабу підприємства, конкурує з іншими СУБД у даному сегменті ринку.

При взаємодії з мережею Microsoft SQL Server і Sybase ASE використовують протокол рівня додатків під назвою Tabular Data Stream (TDS, протокол передачі табличних даних). Протокол TDS також був реалізований у проекті FreeTDS з метою забезпечити різні додатки можливістю взаємодії з БД Microsoft SQL Server і Sybase.

Для забезпечення доступу до даних Microsoft SQL Server підтримує Open Database Connectivity (ODBC) — інтерфейс взаємодії додатків з СУБД. SQL Server надає можливість підключення користувачів через веб-сервіси, що використовують протокол SOAP. Це дозволяє клієнтським програмам, не призначеним для Windows, кросплатформно з'єднуватися з SQL Server.

Microsoft Office Access або просто Microsoft Access - реляційна СУБД корпорації Microsoft. Основні компоненти MS Access:

  •  будівник таблиць;
  •  будівник екранних форм;

  •  будівник SQL-запитів (мова SQL в MS Access не відповідає стандарту ANSI);
  •  будівник звітів, що виводяться на друк.

Кожна нова версія Access все тісніше інтегрувалася з іншими програмними продуктами, що входять в Office. Важливим вдосконаленням стало те, що всі продукти Office і Visual Basic використовують спільну мову програмування Visual Basic for Applications (VBA).

Істотно розширює можливості MS Access з написання додатків механізм зв'язку з різними зовнішніми СУБД: "зв'язані таблиці" (зв'язок з таблицею СУБД) і "запити до сервера" (запит на діалекті SQL, який "розуміє" СУБД). Також MS Access дозволяє будувати повноцінні клієнт-серверні додатки на СУБД MS SQL Server; є можливість поєднати інструменти для управління БД і засоби розробки.

Варіанти, які пропонуються для створення нової БД:

  • ➢ створення БД на основі шаблону;
  • ➢ створення БД без використання шаблону;
  • ➢ копіювання даних з іншого джерела до таблиці Access;
  • ➢ імпортування, додавання та зв’язування з даними з іншого джерела;
  • ➢ відкриття наявної бази даних Access;
  • ➢ створення настроюваного пустого шаблону.

 

1.1.3 Структура, способи створення таблиць, типи полів у таблицях

Створення бази починається зі створення першої таблиці.

Таблиці БД – це об'єкти (двомірні таблиці), в яких безпосередньо зберігаються (містяться) дані.

Кожна таблиця складається із записів (рядків) та полів (стовпців).

Поле – стовпець таблиці, призначений для зберігання значень певної властивості (параметра) об'єкта. Значення поля часто називають фактом.

Запис – рядок таблиці. Один запис містить дані про окремий об´єкт, який описують у БД.

Поле, яке містить унікальні значення, що не повторюються в жодному із записів і не є порожнім, називається ключовим.

Існує декілька способів створення нової таблиці, що відрізняються рівнем автоматизації (табл.1.2):

 

Таблиця 1.2 – Способи створення таблиці
Спосіб Опис Рівень атоматизації
Імпорт таблиць імпорт даних з інших файлів “найавтоматичніший” спосіб, полягає в імпорті таблиць з іншої бази (можливо створеної в іншій системі); в залежності від обставин з імпортованої таблиці може надійти структура полів, їх назви, властивості, вміст бази; якщо імпортується некоректно, внести виправлення.
Зв’язок з таблицями встановлення зв’язків з даними, що зберігаються на іншому сервері у випадках, коли мова йде про таблицю, що знаходиться на віддаленому сервері і яку не можна імпортувати повністю
Майстер таблиць дозволяє вибрати поля, що включаються в таблицю, із широкого списку зразків полів різних типів користуються досвідчені розроблювачі, оскільки варто володіти відповідною термінологією: “Мастер таблиц” задає ряд питань і, керуючись отриманими відповідями, створює структуру таблиці автоматично.
Режим таблиці виводить бланк абстрактної таблиці, яка потім може приймати конкретні форму і зміст відкриває заготовку, у якій всі поля мають формальні імена: Поле1, Поле2... і т. д. і один стандартний текстовий тип;  дану таблицю можна відразу заповнювати інформацією.
Конструктор можна безпосередньо вказати параметри елементів таблиці найбільш універсальний, «ручний» метод, можна самостійно задати імена полів, вибрати тип і налаштувати властивості.

Тип даних визначається множиною значень, які може приймати дане поле в різних записах (табл. 1.3).

 

 

Таблиця 1.3 – Типи даних
Тип Опис
Текстовий для введення тексту довжиною до 255 символів (за замовчуванням)
Поле МЕМО для введення заміток або довгих описів
Числовий для введення числових даних
Дата/час для введення часу і дати
Грошовий використовується для роботи з грошовими величинами
Лічильник для введення числа, яке автоматично збільшується на одиницю при додаванні в таблицю нового запису
Логічний для збереження логічного значення Так або Ні

Об'єкти OLE

використовуються для збереження в таблиці OLE-об'єктів (наприклад, малюнків, звуків, документів Word та ін.)

Гіперпосилання

для запису в таблицю гіперпосилань

 

1.1.4 Прийоми роботи з таблицями БД, фільтри

На рис.1.1 подана типова таблиця БД, з якою можна працювати звичайними прийомами керування за допомогою миші.

 

Рисунок 1.1

 

Зверніть увагу на рядок стану в нижній частині вікна. У Ассеss 9х цей рядок називається полем номеру запису. Це поле містить кнопки переходу, за допомогою яких можна ефективно переміщувати по таблиці. А також в цій панелі знаходиться зручний пошук по БД.

Кожний запис має зліва кнопку (маркер запису). Натиснення лівої клавіші миші на цьому маркері виділяє весь запис і готує його до копіювання, переміщення, видалення.

Натиснення правою кнопкою на виділеному записі відкривається контекстне меню для операцій із записом.

Маркер, що знаходиться в лівому верхньому кутку таблиці – це маркер таблиці. Натиснення лівої кнопки миші виділяє всю таблицю, а правої – відкриває контекстне меню для операцій із таблицею в цілому.

Поля БД подані в таблиці стовпцями. Кожний стовпець має заголовок, у якому записане ім'я поля або те значення, яке задане у властивості «Підпис».

Якщо вміст поля не повністю розміщується в комірці таблиці, стовпець можна розширити. При наведенні покажчика миші на границю між стовпцями покажчик змінює форму. Тепер границю можна переміщувати методом перетягування, а подвійне натиснення лівої кнопки миші, виконане у цей момент, автоматично встановлює ширину стовпця рівній довжині найдовшого значення в даному полі.

Натиснення лівої кнопки миші на заголовку стовпця виділяє весь стовпець, а натиснення правою кнопкою на виділеному стовпці відкриває контекстне меню. У ньому є пункти, що дозволяють відсортувати записи по даному полю, вставити новий стовпець, сховати стовпець та інше.

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

Особливості зберігання

Таблиці БД не є самостійними документами. Сама база - це документ. Їй відповідає файл на диску, і ми можемо зробити його копію. Структура таблиць - теж документ. У деяких системах вона має окремий файл, а в деяких (наприклад, в Ассеss 9х) такого файла немає, але структура таблиць входить до складу загального файла БД поряд із запитами, формами, звітами й іншими об'єктами. При зміні структури таблиці система керування БД завжди видає запит на зберігання змін.

Вміст таблиць не можна зберегти примусовою командою або, навпаки, відмовитися від його зберігання. Всі зміни в таблицях зберігаються автоматично в режимі реального часу. Режим реального часу означає, що, поки ми працюємо з таблицею, відбувається її безупинне зберігання. Як тільки завершується введення даних в одне поле і відбувається перехід до наступного поля, дані негайно записуються на жорсткий диск. Тому, експериментуючи з таблицями, треба знати, що всі зміни, що вносяться в їх зміст, мають необоротний характер. Не можна щось змінити, видалити, а потім відмовитися від зберігання і повернутися до вихідного варіанту.

Відсутні та пропущені рядки

В процесі створення БД деякі поля можуть залишитись незаповненими внаслідок невідомого їх значення або за відсутності даних. Якщо залишити поле пустим, наприклад при відсутності даних, тоді йому буде присвоєне значення NULL. Відсутність значення у даного поля називається пустим рядком і позначається введенням двох парних лапок (” ”).

Спеціальний текст, який інформує про наявність поля, в якому міститься величина NULL або пустий рядок вводиться в поле властивостей ”Формат ” поля.

Робота з фільтрами

Фільтри призначені для вибору та відображення даних за певним критерієм. Для роботи в Microsoft Access передбачено кілька готових фільтрів. Вони доступні у вигляді команд меню в режимах таблиці, макета, в представленні форми та звіту. Доступні типи фільтрів:

  •  Звичайні фільтри: використовуються для фільтрації за значенням або діапазону значень.
  •  Фільтрація по виділеному: дозволяє відсортувати всі рядки в таблиці, що містять значення, яке збігається з виділеним значенням в рядку. Використовується в режимі таблиці.
  •  Фільтр по формі: використовується, якщо потрібно відфільтрувати кілька полів у формі або таблиці або знайти певний запис.
  •  Розширений фільтр: дозволяє задавати декілька умов для фільтрації та гнучко їх налаштувати.

 

1.2 Завдання до лабораторної роботи

 

  1. Створіть файл БД database.mdb, в якому містяться дані про кадровий склад підприємства.
  2. Назви полів та їх типи наведені в табл. А.1 (Додаток А).

  3. Введіть дані в БД відповідно до варіанту, користуючись табл. А.2 (Додаток А).
  4. Спробуйте вилучити групу записів (пам’ятайте, що відмінити видалення неможливо, тому у діалоговому вікні, що підтверджує вилучення варто відхилити відповідну дію).
  5. Додайте кілька записів в таблицю.
  6. Сховайте якийсь із столпців таблиці, а потім зробіть його знову видимим.
  7. Відсортуйте записи в таблиці по полям “Прізвище”, “Ставка”, “Дата народження” по зростанню.
  8. Відмініть сортування.
  9. Знайдіть за допомогою функції пошуку записи, у яких значення поля “Професія” дорівнює 18605.
  10. Замініть значення поля “Професія”, що дорівнює 18605 на 17890, використовуючи функції заміни.
  11. За допомогою фільтра отримайте список робітників віком від 20 до 40 років (попередньо введіть відповідні дані в таблицю).

 

1.3 Контрольні запитання

 

  1. Що називається БД?
  2. Поясніть термін СУБД та основні функції СУБД?
  3. Які структури ACCESS ви знаєте?
  4. Для чого служить структура "таблиця"?
  5. Чим поле відрізняється від запису?
  6. Опишіть процес створення нової та редагування структури існуючої таблиці.
  7. Для чого даним задаються різні типи?
  8. Для чого використовуються фільтри? Які типи фільтрів присутні в Microsoft Access?