
- •Призначення та класифікація систем управління базами даних (субд)
- •Основні характеристики субд
- •Можливості субд
- •Основні компоненти середовища субд
- •Проектування баз даних
- •Субд Microsoft Access
- •Створення нової бд
- •Створення таблиць
- •Створення таблиці за допомогою майстра
- •Створення таблиці у вікні конструктора
Створення таблиці у вікні конструктора
Створення таблиць у вікні конструктора надає ширші можливості за визначенням параметрів створюваної таблиці. Можна перейти в конструктор таблиць з майстра по створенню таблиці або ж безпосередньо з вікна діалогу «Новая таблица» вибрати із списку варіантів значення Конструктор, і натиснути кнопку ОК.
Рисунок 14
В результаті виконання цих дій відкриється вікно конструктора таблиці.
Рисунок 15
У верхній частині вікна діалогу знаходиться таблиця, яка містить наступні атрибути створюваної таблиці: найменування поля, тип даних і опис. Окрім цих основних атрибутів, кожне поле таблиці володіє додатковими властивостями, що відображуються в нижній частині конструктора і визначають умови введення даних. Найменування кожного з полів таблиці, як правило, вибирається довільно, але так, щоб відобразити характер інформації, яка зберігатиметься в даному полі. Тип поля визначається типом даних, що зберігаються в цьому полі. У кожного поля є визначення.
Найменування поля
Найменування поля вводиться в поле введення стовпця ім'я поля. При завданні найменувань полів потрібно слідувати наступним правилам:
Найменування поля може містити до 64 символів, але не слід зловживати цією можливістю, задаючи дуже довгі імена;
Найменування поля може містити букви, цифри, пропуски і спеціальні символи, за винятком крапки (.), знаку (!) оклику, прямих дужок ([]) і деяких символів, що управляють (з кодами ASCII 0-31);
Найменування поля не може починатися з пропуску;
Два поля в одній таблиці не можуть мати однакових найменувань;
Як найменування поля не рекомендується використовувати абревіатури або короткі назви.
Недотримання цих правил відстежується засобами СУБД MS Access, але в деяких випадках це може привести до важко визначуваних помилок, тому рекомендується самостійно контролювати дотримання вищепереліченим правилам в практичній роботі.
Бажано прагнути використовувати імена, що відрізняються стислістю, для полегшення їх ідентифікації при перегляді таблиць.
Типи даних
Найменування поля використовується для заслання на дані таблиці. Для визначення типа даних, що зберігаються, використовується тип даних. Тип даних поля вводиться в поле введення стовпця Тип даних. У MS Access допустимими є дані наступних типів:
Текстовий - Символьні, текстові дані, об'єм яких неповинен, перевищувати 255 символів, за умовчанням 50.
Числовий – символьні дані, за умовчуванням 50
Грошовий - Різновид типа даних для зберігання, грошових еквівалентів, розміром 15 розрядів до коми, і чотири розряди після.
Лічильник - Є різновидом числового типа, може мати лише ціле значення, автоматично збільшується на заданий крок, за умовчанням +1, значення не можуть повторюватися.
Дата/час - Відображає дані Дати або часу
Логічний - Призначений для зберігання логічних значень, для команд і операцій: лож\істінна, да\нет, true\false, 1\0.
Поле MEMO - Текстовий тип даних, обмеження до 64000 символів, поля цього типа не індексуються.
Поле об'єкту OLE - Призначений для зберігання об'єктів (файлів), які створені в інших додатках. Поле не індексується.
Майстер підстановок - Дозволяє підставляти значення полів, у вигляді простого або комбінованого списку.
Для зміни ширини поля потрібно в рядку Розмір поля розділу “Властивості поля” задати число, що визначає ширину поля (від 1 до 255).
Кожен з типів даних наділений власними властивостями, які відображуються в розділі “Властивості поля” вікна конструктора.
Рисунок 16
Числові поля
В текстових полях допустимі символи, цей тип поля може містити цифри. Як основні аргументи по використанню числових полів приведу наступні міркування:
При введенні даних числового типа автоматично виробляється перевірка даних. Якщо дані містять текстові або спеціальні символи, MS Access видасть запобігання і помилкові дані не будуть введені.
Лише над числовими полями можливе виконання математичних операцій. Перш, ніж встановити розмір поля, потрібно поміркувати, які значення зберігатимуться в ньому.
Вибравши оптимальне значення, заощаджується місце для зберігання даних. Для вказівки кількості десяткових знаків використовується властивість поля Число десяткових знаків. Воно може набувати значення від 0 до 15. Атрибут Авто даної властивості служить для автоматичної установки кількості знаків після коми. Використовуючи значення властивості Розмір поля, можна встановити наступний формат для полів числового типа.
Поля типа Лічильник
Поля типа Лічильник призначені для зберігання даних, значення яких не редагуються, а встановлюються автоматично при додаванні кожної нової; записи в таблицю.
Їх значення є унікальними, послідовно зростаючими на 1 при додаванні кожному новому запису або можуть бути будь-якими випадковими числами.
Такі поля дозволяють проводити автоматичну пере нумерацію даних незалежно від того, в яке місце таблиці вставляються дані, що буває дуже зручно при веденні різних кодифікаторів, ключів і впорядкованих масивів даних, оскільки створює умови для вживання алгоритмів швидкого сортування і пошуку даних.
Поля дати/часу
Використання для зберігання дат і часу полів, в яких дані представлені в спеціальному форматі, надає ряд додаткових переваг:
MS Access дозволяє вводити і відображувати дати в декількох форматах. Конкретний варіант відображення дати/часу встановлюється у властивості Формат поля вікна конструктора таблиць. При зберіганні даних ці формати автоматично перетворяться у внутрішнє представлення даних.
При введенні дат MS Access здійснює перевірку формату даних і допускає введення лише правильних дат.
У полі даного типа може міститися будь-яка дата і будь-який час: від 1 січня 100 р. до 31 грудня 9999 р. Дані цього типа займають 8 байт.
Логічні поля
Логічні поля використовуються для зберігання даних, які можуть приймати одне з двох можливих значень. Властивість Формат поля логічного поля дозволяє використовувати спеціальні формати або один з трьох вбудованих: Істина/Брехня, Да/Нет або Вкл/викл. При цьому значення Істина, Та і Вкл еквівалентні логічному значенню True, а значення Брехня, Немає і Викл еквівалентні логічному значенню False.
Якщо вибрати вбудований формат, а потім вводити еквівалентне логічне значення, то введене значення відображуватиметься у вибраному форматі. Наприклад, якщо значення True або Вкл вводиться в елемент управління типа Поле, для якого у властивості Формат поля вказано Да/Нет, то введене значення тут же перетвориться в Так.
При створенні спеціального формату треба видалити поточне значення з властивості Формат і введіть свій власний формат.
Текстові поля довільної довжини
Текстові поля довільної довжини (поля MEMO) можуть містити тих же типів даних, що і прості текстові поля. Відмінність між цими полями полягає в тому, що довжина полів типа MEMO може бути дуже велика в порівнянні з розміром текстових полів. Може містити довгий текст або комбінацію тексту і чисел.
Поля об’єкта OLE
MS Access дозволяє зберігати в таблицях зображення і інші двійкові дані (наприклад, електронну таблицю MS Excel, документ MS Word, малюнок звукозапис), зв'язаний або упроваджений в таблицю Microsoft Access. Для цих цілей служить тип даних Поле об'єкту OLE. Фактичний об'єм даних, який можна ввести в поле даного типа, визначається об'ємом жорсткого диска комп'ютера (до 1 Гігабайта).
Тип даних майстер підстановок
Вибір цього типа даних запускає майстер підстановок, який створює поле, в якому пропонується вибір значень із списку, що розкривається, містить набір постійних значень або значень з іншої таблиці. Вибір цього параметра в списку у вічку запускає майстра підстановок, який визначає типа поля.
Розмір даного поля збігається з розміром ключового поля, використовуваного як підстановка (зазвичай, 4 байти).
Створення структури таблиці
Після розгляду типів даних в Access і окремих властивостях полів таблиці, можна приступити до створення структури таблиці.
Після введення імені поля потрібно натиснути клавішу Tab або Enter, щоб перейти в стовпець Типа даних. При цьому звернути увагу, що в нижній частині вікна діалогу з'являється інформація в розділі “Властивості поля”.
У стовпці Тип даних з'явилося значення Текстовий. Потрібно натиснути кнопку розкриття списку в правій частині прямокутника, і побачити список, що містить всі типи даних. З цього списку за допомогою миші або клавішами вгору і вниз вибирається значення Лічильник і натискується на клавішу Tab для переходу в стовпець Опис. Стовпець Опис це пояснення, яке дається своїм полям. Якщо в майбутньому працювати з даною таблицею, цей опис з'являтиметься в нижній частині екрану MS Access всякий раз, коли виявитеся в полі, і нагадає призначення даного поля.
Необхідно ввести пояснюючий текст в стовпець Опис і натиснути клавішу Tab або Enter, щоб перейти до введення інформації про наступне поле. Аналогічним чином можна ввести опис всіх полів таблиці.
Панель властивостей містить ряд додаткових властивостей поля.
Приведемо деякі з них:
Розмір поля (Field Size) — для текстового поля визначає максимальне число символів, яке може бути введене в (не більше 255). Для числових полів вибирається довге ціле (Long Integer), ціле (Integer ) і тому подібне Чим ширше поле, тим важче користуватися таблицею, оскільки вона може не поміщатися на екрані. Проте поле, що має дуже маленький розмір, може не вміщати необхідну інформацію. Біля деяких типів полів: Дата/время (Date/Time) , Грошовий (Currency), Мемо (MEMO), Поле об'єкту OLE (OLE Object) цього властивість відсутня.
Формат поля (Format) — дозволяє змінити відображення даних на екрані або при друці, наприклад, довгий формат дати (Long Date) відображує: Вівторок, 18 грудня 2001 р. короткий (Short Date) — 18.12.2001. Формат вибирається із списку, що розкривається. За умовчанням він визначається регіональними налаштуваннями, зробленими у вікні Панель управління операційної системи. Біля полів типа Поле об'єкту OLE (OLE Object) ця властивість відсутня.
Нові значення (New Value) — визначає спосіб обчислення нового значення для запису, що додається в таблицю. Ця властивість є лише біля полів Лічильник (AutoNumber) . Із списку, що розкривається, вибирається значення або Випадкові (Random). При виборі значення Послідовні (Increment) нове значення поля збільшується на 1.
Маска введення (Input Mask) — визначає, як вводитимуться і редагуватимуться дані. З її допомогою можна задати, який тип символів (буква або цифра) вводитиметься в поле. Маску введення можна створити за допомогою майстра, що запускається натисненням кнопки з трьома точками «», яка відображується в кінці рядка після установки в ній покажчика миші. Майстер пропонує список масок, використовуваних при введенні часу, номера телефону, індексів і тому подібне
Число десятинних знаків (Decimal'Places) — використовується для числових полів. Можна вибрати із списку, що розкривається, значення Авто або певне значення. Число десяткових знаків можна ввести уручну.
Підпис (Caption) — дозволяє в режимі таблиці виводити як заголовок напис, приведений в даному рядку. Підпис може містити будь-які символи
Значення за умовчанням (Default Value) — передбачає автоматичне введення певного значення, наприклад, якщо майже всі представлені в таблиці комп'ютери мають процесор Pentium, то в стовпці Процесор можна передбачити введення за умовчанням цієї назви.
Умова на значення (Validation Rule) — передбачає введення умови, яка перевірятиметься кожного разу після зміни значення поля.
Повідомлення про помилку (Validation Text ) — з'являється в рядку стану при введенні в таблицю значення не відповідного умові перевірки.
Обов'язкове поле (Required) — після введення значення Так (Yes) для цієї властивості, всі записи таблиці у вказаному полі мають бути заповненими. Якщо вказане поле не буде заповнено, Access відображуватиме на екрані відповідне попередження.
Порожні рядки (Allow Zero Length) — поле повинне містити хоч би один символ, якщо для нього встановлено значення Так (Yes) . Ця властивість передбачена лише для тестових, MEMO полів і гіперпосилань.
Індексоване поле (Indexed) — визначає індекс, що створюється по одному полю, що прискорює пошук значень в цьому полі. Якщо в цьому полі часто виконуватиметься пошук значень, то в списку значень властивості, що розкривається, вибирається Так (Збіги допускаються) (Yes (Duplicates OK)). Якщо два записи не можуть мати однакового значення для даного поля, то встановлюється значення Так (Збіги не допускаються) (Yes (No Duplicates)) . Значення Немає (No) видаляє значення індексу, окрім єдиного ключового поля. Не можна індексувати таблиці по наступних полях: Мемо (MEMO), Поле об'єкту OLE (OLE Object) і Гіперпосилання (Hyperlink).
На вкладці Підстановка (Lookup) властивості поля може вибиратися Тип елементу управління (Display Control) який впливає на відображення даних при введенні. Наприклад, якщо у вас тип даних: Текстовий (Text) то ви можете відображувати його як Поле (Text Box), Список (List Box) або Поле із списком (Combo Box).
Властивості таблиці дозволяють більш повно описати таблицю, але їх можна не вводити. Аби задати властивості таблиці, відображуватимете її в режимі конструктора і натискуйте на панелі інструментів кнопку Властивості (Properties) або натискуйте клавіші Alt+Enter.
Короткий опис властивостей таблиці даний нижче:
Опис (Description) — використовується для пояснень, що стосуються призначення таблиці;
Умова на значення (Validation Rule) — дозволяє задати умову для перевірки правильності що вводяться в таблицю даних. Умова відноситься до таблиці в цілому, а не до конкретного поля;
Рисунок 17
Повідомлення про помилку (Validation Text) — служить для введення повідомлення, яке відображуватиметься на екрані при введенні даних, не відповідних умові на значення;
Фільтр (Filter) — містить фільтри, що накладаються на таблицю після її відкриття. Фільтри можуть обмежувати кількість записів згідно з критеріями, заданим користувачем;
Порядок сортування (Order by) — задає порядок сортування таблиці після її відкриття;
Ім'я підтаблиці (Subdatasheets Name) — визначає, чи треба відображувати в підтаблицях дані в зв'язаних записах і як їх відображувати. За умовчанням встановлено значення Авто (Auto) що дозволяє автоматично додавати вкладені таблиці для зв'язаних записів. Значення Немає (None) відключає підтаблиці;
Підлеглі поля (Link Child Fields) — визначає ім'я зв'язаного поля підлеглої таблиці, якщо задана властивість Ім'я підтаблиці. Можна не вказувати 'значення цієї властивості, якщо встановлено значення Авто для властивості Ім'я підтаблиці;
Основні поля (Master Fields) — визначає для таблиці, що стоїть по ієрархії тієї, що вище розглядається, ім'я єднального поля, якщо задано значення Ім'я підтаблиці;
Висота підтаблиці (Subdatasheet Height) — обмежує максимальну висоту вкладеної таблиці, якщо задано значення для властивості Ім'я підтаблиці;
Розгорнута підтаблиця (Subdatasheet Expanded) — задає початкове відображення вкладеної таблиці, якщо задано значення для властивості Ім'я підтаблиці. Після установки значення Так (Yes) таблиця відкриватиметься зі всіма відкритими вкладеними таблицями;
Орієнтація (Orientation) — можливо Зліва направо (Left-to-Right) або Справа наліво (Right-to-left) .
Завершивши введення структури таблиці, необхідно зберегти її, виконавши команду Файл/Зберегти.
Створення таблиці в режимі таблиці
Необхідно перейти на вкладку «Таблиці вікна бази даних» і натиснути кнопку Створити. У вікні діалогу «Новая таблица» вибрати із списку варіантів значення Режим таблиці і натиснути кнопку ОК.
Рисунок 18
В результаті виконання цих дій відкриється вікно діалогу “Таблиця”, що містить створену за умовчанням таблицю. Ця таблиця містить 20 стовпців і 30 рядків, і цього цілком достатньо спершу. Після збереження цієї таблиці, звичайно, можна додати стільки рядків і стовпців, скільки знадобиться.
Найменування полів таблиці визначені за умовчанням, але навряд чи вони задовольняють вимогам. MS Access дозволяє дуже просто привласнити полям нові імена.
Для цього натиснути двічі кнопкою миші на область вибору першого поля (заголовок якого містить Поле 1). Ім'я поля виділяється і з'являється миготливий курсор.
Рисунок 19
Вводиться ім'я першого поля і натискується клавіша Tab. Аналогічно вводяться останні імена полів таблиці в наступних стовпцях. Тепер можна заповнити декілька рядків таблиці, вводячи інформацію в тому вигляді, в якому вона вводитиметься і в майбутньому. Краще записувати все в одному стилі (наприклад, якщо першу дату записано 10/09/09, то не пишеться наступну у вигляді Листопад 3, 1996). Якщо MS Access встановить неправильний тип даних, змінити його складно, тому краще вводити все правильно відразу.
Потрібно зберегти таблицю, виконавши команду Файл/Сохранить макет або натиснути кнопку «Сохранить» на панелі інструментів. У вікні діалогу, що відкрилося, «Сохранение» потрібно привласнити таблиці ім'я і натиснути кнопку ОК.
На запит про необхідність створення для таблиці первинного ключа треба натиснути кнопку Так, і MS Access створить таблицю, видаливши зайві рядки і стовпці.
Тепер потрібно переконатися, що Access вибрав для кожного поля правильний тип даних. Для цього необхідно перейти у вікно конструктора таблиці, виконавши команду «Вид/Конструктор таблиць». Якщо щось не влаштовує в структурі таблиці, внести необхідні зміни.
Рисунок 20
Зв’язування таблиць. Створення зв’язків
Процес зв’язування таблиць може розпочатись на етапі визначення підстановок. Завершує цей процес робота з визначенням схеми даних. Зв’язки між таблицями можна редагувати, видаляти. Ця робота починається з натискання на значок «Схема данных», що розташований на панелі інструментів.
В результаті цього відкривається діалогове вікно «Схема данных», де необхідно додати таблиці.
Рисунок 21
Для того, щоб додати таблиці необхідно клацнути правою клавішею миші на вільному місці та вибрати команду «Добавление таблицы». Після виконання цієї команди відкриється діалогове вікно «Добавление таблицы» де необхідно виділити необхідні таблиці та додати їх до схеми даних.
Рисунок 22
Після того, як таблиці додались у схему даних можна почати зв’язування таблиць. Цей процес починається шляхом перетягування ключового поля однієї таблиці до підлеглого поля іншої.
Рисунок 23
Після перетягування ключових полів відкривається вікно «Изменения связей», де пропонується «обеспечение целостности данных», «каскадное обновление связанных полей» та «каскадное удаление связанных полей».
Рисунок 24
Забезпечення цілісності даних БД означає виконання низки обмежень, додержання яких необхідне для підтримки несуперчності даних, що зберігаються.
Якщо у діалозі «Изменение связей» в поле «обеспечение целосности данных» встановити прапорець, а в полях «каскадное обновление связанных полей» та «каскадное удаления связанных полей» ні, то програма не дозволить змінити або вилучити цільову сутність за умови наявності зв’язаних з нею записів в іншій таблиці, а якщо встановити прапорець «каскадное обновление связанных полей» то програма буде автоматично змінювати дані в усіх зв’язаних записах під час зміни значення цільової сутності;
Рисунок 25
Якщо встановити прапорець «каскадное удаление связанных полей» то програма автоматично буде вилучати зв’язані записи в процесі цільової сутності.
В результаті зв’язування всіх таблиць отримано таку схему даних:
Рисунок 26