Тип даних ole. Вставка об'єктів у поле з типом даних ole

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

Логічний формат

Грошовий формат

Числовий формат

Текстовий формат

Типи даних

Розмір текстового поляможе бути в межах від 1 до 255 символів.

Тип числового поля може набувати значення з наступного списку:

байт- Цілі числа в межах від 0 до 4255;

ціле- Цілі числа від - 32768 до 32767;

довгеціле - цілі числа від - 2147483648 до 2147483647;

з плаваючою точкою (4 байти)- Числа в межах від - 3,402823Е38 до 3,402823Е38;

з плаваючою точкою (8 байт) -числа в межах від мінус 1,79769313486232Е308 до плюс 1,79769313486232Е308.

Формат «Дата/Час»

Для типу даних Дата часіснує набір форматів поля наведений нижче разом із прикладами:

Повний формат (за замовчуванням) 15.04.94 05:30:10 РМ

Короткий формат дати 15.04.94

Довгий час 17:30:10

Середній формат часу 05:30 РМ

Короткий формат часу 17:30

За замовчуванням грошовий формат є числами, записаними з двома знаками після коми, з поділом груп розрядів і позначенням "Р."в кінці. Користувач може записати у рядку Формат поляшаблон для свого формату. Допустимо, необхідно вводити суми в доларах. Тоді треба встановити курсор на слово Грошовийі замінити його шаблоном формату, наприклад, таким: # ###$ .

Формат «лічильник»

Поля типу «лічильник» виконують певну функцію – автоматичну ідентифікацію записів таблиці. Тому властивостей, які можна було б змінити, у такого поля небагато. По-перше, лічильник – це завжди число. По-друге, нарощування його значення відбувається автоматично. Access пропонує два варіанти зміни лічильника: послідовнийі випадковий.Перший варіант зручний тим, що дозволяє нумерувати записи. Другий варіант можна використовувати, якщо необхідно створити систему кодування записів у таблиці, захищену від необережних дій оператора.

Осередок у полі логічного типу може містити лише одне з двох значень: Такабо Ні. Access пропонує ще два варіанти назв логічного типу: Істина/Брехняі Увімкнено/Вимкнено.Незалежно від того, який формат поля ви оберете, у таблиці логічне поле буде представлене у вигляді набору прапорців. Коли ви клацаєте прапорець мишею, це призводить до того, що у квадраті з'являється зображення галочки, що відповідає логічному значенню Так. Скидання прапорця означає присвоєння осередку поля логічного значення Ні.Використання логічних полів може бути різним, наприклад, в анкетах або створення елементів управління.

Поле об'єкту OLE(Object Linking and Embedding) - останній тип поля, що вибирається зі списку. Він має лише дві властивості: підпис та параметр «обов'язкове поле». Поля даного типу не зберігають інформацію, а містять посилання на об'єкти, які можуть бути включені в БД з використанням OLE-протоколу обміну даними. Такими об'єктами може бути, наприклад, графічні файли.



Для того щоб впровадити в комірку поля OLE-об'єкт, треба встановити на неї курсор і натиснувши праву кнопку миші, викликати контекстне меню. У ньому виберіть команду Вставити об'єкт. Програма розкриє діалогове вікно для вибору типу об'єкта. Об'єкт у разі ототожнюється з додатком, у якому може бути створений чи відредагований.

Другий варіант вставки об'єкта – вибір перемикача Створити із файлу у вікні Вставлення об'єкта.УУ цьому випадку мається на увазі, що файл вже існує, і необхідно встановити з ним зв'язок. Access відкриє вікно відкриття документа та після вибору потрібного файлувизначить, яку програму необхідно відкрити для роботи з ним.

Осередок у полі логічного типу може містити лише одне з двох значень: Так або Ні. Access пропонує ще два варіанти назв логічного типу: Істина/Брехня та Увімкнено/Вимкнено. Незалежно від того, який формат поля ви оберете, у таблиці логічне поле буде представлене у вигляді набору прапорців. Коли ви клацаєте прапорець мишею, це призводить до того, що у квадраті з'являється зображення галочки, що відповідає логічному значенню Так

Скидання прапорця означає присвоєння осередку поля логічного значення Ні. Використання логічних полів може бути різним, наприклад, в анкетах або створення елементів управління.

Поле об'єкту OLE

Поле об'єкта OLE (Object Linking and Embedding) – останній тип поля, що вибирається зі списку. Він має лише дві властивості: підпис та параметр «обов'язкове поле». Поля даного типу не зберігають інформацію, а містять посилання на об'єкти, які можуть бути включені в БД з використанням OLE-протоколу обміну даними. Такими об'єктами може бути, наприклад, графічні файли.

Для того щоб впровадити в комірку поля OLE-об'єкт, треба встановити на неї курсор і натиснувши праву кнопку миші, викликати контекстне меню. У ньому виберіть команду Вставити об'єкт. Програма розкриє діалогове вікно для вибору типу об'єкта. Об'єкт у разі ототожнюється з додатком, у якому може бути створений чи відредагований.

Другий варіант вставки об'єкта – вибір перемикача Створити із файла у вікні Вставка об'єкта. У цьому випадку мається на увазі, що файл вже існує, і потрібно встановити зв'язок з ним. Access відкриє вікно відкриття документа і після вибору потрібного файлу визначить, яку програму необхідно відкрити для роботи з ним.

Текст або комбінація тексту та чисел, що використовується як адреса гіперпосилання.

Адреса – це текст, який задає шлях та ім'я файлу для документа, що відкривається. Шлях може бути шлях до файлу, записаного на жорсткому диску, бути адресою у форматі UNC або адресою URL в Інтернеті.

Для вставки адреси в поле можна використовувати команду Гіперпосилання в меню Вставка.

Багатотабличні бази даних. Відносини між таблицями

Реляційні бази даних складаються з декількох таблиць, зв'язок між якими встановлюється за допомогою полів, що збігаються. Кожен запис у таблицях ідентифікує один об'єкт. Відношення між об'єктами визначає відношення таблиці. Існує 4 типи відносин:

1. Відношення "один до одного" означає, що кожен запис в одній таблиці відповідає лише одному запису в іншій таблиці. Одному громадянинові країни відповідає лише один номер паспорта, водночас як один номер паспорта відповідає лише одній людині.

2. Відношення "один до багатьох" означає, що кожен запис в одній таблиці відповідає один або кілька записів в іншій таблиці. Один абітурієнт може вступати до багатьох вузів і водночас до одного вузу може вступати багато абітурієнтів.

3. Відношення «багато хто до багатьох» виникає між двома таблицями у випадках, коли:

Один запис з першої таблиці може бути пов'язана з більш ніж одним записом з другої таблиці;

Один запис з другої таблиці може бути пов'язана з більш ніж одним записом з першої таблиці.

Наприклад, зв'язок між викладачами та групами студентів. Декілька викладачів ведуть заняття у кількох групах, і кілька груп займаються у кількох викладачів.

Найчастіше будь-які дві таблиці пов'язані ставленням «один – до багатьох».

Створення зв'язків між таблицями

Для того щоб розглянути створення зв'язків між таблицями, побудуємо в базі даних «Профконсультант» ще дві таблиці:

1. Таблиця-абітурієнти:

КодАб є ключовим полем.

2. Таблиця перетину тСвязьАБВУЗ:

Перші два поля є ключовими, причому для таблиці зв'язок-Абвузи вони є чужими ключами.

Малюнок 12.6. Схема даних

Щоб визначити зв'язки, необхідно використати команду Сервіс->Схема даних (кнопка

). Якщо зв'язок визначається вперше в базі даних, Access відкриє порожнє вікно Схема даних, а потім виведе на екран вікно діалогу Додавання таблиці. У цьому вікні потрібно виділити потрібні таблиці і натиснути кнопку Додати. У нашому випадку у вікно схеми даних треба додати три таблиці. Кнопка Закрити закриває діалогове вікно Додавання таблиці (дане вікно можна викликати за натисканням кнопки

). Після цього вікно Схеми даних має виглядати приблизно так, як показано на рис. 3 (крім ліній з'єднання). Щоб встановити зв'язок між таблицями твузи та тСвязьАбвуз, треба виділити поле Кодвузу в таблиці твузи (клацнути лівою кнопкою «миші»), перетягнути і опустити його на полі Кодвузу в таблиці тСвязьАбвуз. Аналогічно встановлюється зв'язок між двома іншими таблицями.

Коли ви відпустите кнопку миші, Microsoft Accessвідкриє вікно діалогу зв'язку, представлене на рис. 12.7.

Малюнок 12.7. Налаштування зв'язків між полями таблиць

Після встановлення прапорця Забезпечення цілісності даних, Access робить доступними ще два прапорці: Каскадне оновлення пов'язаних полів та Каскадне видалення пов'язаних записів. У разі встановлення прапорця Каскадне оновлення пов'язаних полів Microsoft Access оновлює всі значення чужих ключів у дочірніх таблицях (тобто в таблицях на стороні відносини «багато» при зв'язку «один до багатьох») при зміні значення первинного ключа в батьківській таблиці, яка знаходиться на стороні відносини "один" при зв'язку "один до багатьох". Якщо ви встановите прапорець Каскадне видалення пов'язаних записів, Microsoft Access видаляє дочірні рядки (пов'язані рядки в дочірніх таблицях) при видаленні батьківського рядка (зв'язаний рядок у батьківській таблиці). Встановіть прапорець Каскадне оновлення пов'язаних полів, щоб при зміні коду вузу Access автоматично оновлював записи в таблиці тСвязьАбвуз.

Після натискання кнопки Створити Access створить зв'язок і намалює лінію між двома таблицями, що вказує на зв'язок між ними. Зверніть увагу: коли ви просите забезпечити цілісність даних, Access зображує на кінці лінії у таблиці, що знаходиться на стороні відносини «один», цифру 1, а на іншому кінці у таблиці з боку відносини «багато» – символ нескінченності. Щоб видалити зв'язок, клацніть на його лінії та натисніть клавішу Del. Якщо ви бажаєте відредагувати або змінити існуючий зв'язок, двічі клацніть на відповідній лінії, щоб знову відкрити вікно діалогу Зв'язку.

Поля об'єкта OLE

MS Access дозволяє зберігати в таблицях зображення та інші двійкові дані (наприклад, електронну таблицю MS Excel, MS Word, малюнок звукозапис). Для цих цілей є тип даних Поле об'єкта OLE.Фактичний обсяг даних, який Ви можете ввести в поле даного типу, визначається обсягом жорсткого дискаВашого комп'ютера (до 1 Гб).

Тип даних майстер підстановок

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

Розмір даного полязбігається з розміром ключового поля, що використовується як підстановка (зазвичай, 4 байти).

Створення структури таблиці

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

У вікні конструктора таблиці у стовпці Ім'я полявведіть КодЗамовлення .

Натисніть клавішу Tab або Enter , щоб перейти в стовпець Тип даних.Зверніть увагу, що в нижній частині вікна діалогу з'являється інформація в розділі "Властивості поля".

У стовпці Тип данихз'явилося значення Текстовий.Натисніть кнопку розкриття списку в правій частині прямокутника, і Ви побачите список, що містить усі типи даних. З цього списку за допомогою миші або клавішами вгору та вниз виберіть значення Лічильникта натисніть на клавішу Tab для переходу в стовпець ОписСтовпець Описє поясненням, яке Ви даєте своїм полям. Коли Ви в майбутньому працюватимете з даною таблицею, цей опис буде з'являтися в нижній частині екрана MS Access щоразу, коли Ви опинитеся в полі КодЗамовлення , та нагадає Вам призначення даного поля.

Введіть пояснювальний текст у стовпець Описта натисніть клавішу Tab або Enter , щоб перейти до введення інформації про наступне поле.

Аналогічно введіть опис усіх полів таблиці.

Завершивши введення структури таблиці, збережіть її, виконавши команду Файл/Зберегти.

Access 2010 має можливість додавати об'єкти в поле з типом даних OLE. У разі, коли тип даних заданий, як OLE (Object Linking and Embedding– зв'язування та використання об'єкта), тоді СУБД Access зберігає зовнішній об'єктв спільному файлібази даних, відводячи його зберігання стільки місця, скільки цей об'єкт займає як окремого файла. Під об'єктамислід розуміти файли, створені у вигляді додатків у графічних редакторів, відеокліпів, у програмах MS Office і т.д. При заповненні таблиці даними, які є об'єктами, у відповідній позиції поля з типом даних OLE формується повідомлення про програму, за допомогою якої можна відкрити цей об'єкт. Відображення об'єктуздійснюватиметься лише у формах та звітах.

Для вбудовування об'єктуу полі з типом даних OLEнеобхідно відкрити таблицю в режимі "Конструктор".Додати нове поле, наприклад "Фото товару".Вибрати тип даних "Поле об'єкта OLE", після чого зберегти таблицю.

Потім у режимі «Таблиця»у рядку для введення даних клацнути правою клавішею миші, у меню слід вибрати рядок з командою , що призведе до відкриття діалогового вікна (рис. 3.38, рис. 3.39).

Мал. 3.38 Вставлення об'єкта

Мал. 3.39 Діалогове вікно для додавання нового об'єкта до таблиці Access

Слід пам'ятати, що є дві можливості вбудовувати об'єкти як даних. Перша можливість передбачає використання типових додатківдля створення файлу, який підтримує Access, друга можливість вставки об'єкта , що дозволяє використовувати будь-який файл як джерело даних (рис. 3.40).

Мал. 3.40 Додавання нового об'єкта до таблиці Access із файлу

1. Створення об'єкта із файлу.

Коли йдеться про дані, які є об'єктами для бази даних, і є зовнішніми файлами, потрібно мати ці файли. Тому потрібно створити кілька файлів, щоб надалі побачити їх відображення в базі даних, а також спробувати провести зміну цих файлів. Наприклад, якщо ви маєте фотографію об'єкта у файлі Монітор.jpg(jpg – універсальний фото формат). Щоб цей файл зберігся у базі даних, слід у вікні (рис. 3.40) поставити позначку "Створити з файлу", після чого з'явиться вікно, що представлене малюнку 3.41. За допомогою кнопки «Огляд»слід вибрати потрібний файл.

Мал. 3.41 Пошук файлу під час створення об'єкта у базі данных

У відповідному рядку для поля, наприклад, "Фото товару"з'явиться слово "Пакет" (Package)Це означає, що файл прив'язаний до програми, за допомогою якої він був створений. Тому, при перегляді бази даних, чи це запит, форма або звіт, користувач побачить зображення файлу у вигляді значка , а при подвійному клацанні по цьому зображенню система спочатку знайде додаток, а потім в ньому відобразить вміст файлу (в даному прикладіце фотографія). Винятком є ​​файли із зображеннями, збережені з розширенням .bmp(bit map format). Разом з тим, слід нагадати, що файли, створені в програмах Microsoft, будуть відображатися відразу у формах та звітах. Висновок простий, фотографії можна вставляти в такі програми як Paint, Word, Power Point, зберігати у вигляді окремих файлів, а потім підключати як об'єкт до бази даних. Спробуйте створити кілька файлів із фотографіями та текстом, використовуючи різні редактори Windows. Наприклад, можна відкрити документ Word, вставити з файлу фотографію, додати текст, а потім зберегти як: Монітор.docx(Рис. 3.42).

Мал. 3.42 Файл із фотографією, створений у Word

2. Створення нових об'єктів.

Під створенням нових об'єктів у базі даних слід мати на увазі використання програми, в якій створюється файл, а потім підключається до поля з описом типу цього OLE. Для запуску режиму створення нових об'єктів необхідно відкрити таблицю в режимі «Таблиця», вибрати варіант "Створити новий"у діалоговому вікні (рис. 3.39), а потім у списку виділити Тип об'єкта (необхідний додаток). Перелік додатків, які підтримує Access для створення об'єкта, перебувають у списку (рис. 3.43), який розкриється після запуску команди "Вставити об'єкт" .

Мал. 3.43 Перелік типів об'єктів Access, які можна використовувати для створення файлів

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

Розглянемо варіант створення об'єктівдля бази даних, за допомогою програми paint.

Наприклад, необхідно створити об'єкт із зображенням підприємства та текстом, який надалі користувач бази даних зможе замінити чи виправити. Для цього необхідно вибрати зі списку об'єкт Bitmap Image, подальшу технологію створення об'єкта показано малюнку 3.44.

1. Відкрийте програму Paint

2. Вставте фотографії з файлу.

3. Додайте текст (якщо це необхідно).

4. Збережіть файл.

5. Закрийте програму.

Мал. 3.44 Технологія створення об'єкта у програмі Paint

Завдання 3.11

1. У таблиці « Товари" в режимі «Конструктор»додайте новий стовпець з ім'ям "Фото товару", тип даних " Поле об'єкта OLE»Збережіть зміни.

2. У режимі «Таблиця»в полі "Фото товару"оберете рядок «Вставити об'єкт із файлу», виберіть (поставте крапку) "Створити новий"і зі списку, що розкривається, вкажіть документ Microsoft Word. При цьому відкриється текстовий редактор MS Wordтут необхідно вставити малюнок, відповідний товару в даному рядку. Малюнки виберіть зі списку, який зберігається безпосередньо в редакторі (вкладка «Вставка», значок «Зображення», у діалоговому вікні праворуч кнопка «Почати»), або вставте малюнок з інших програм. Можете використовувати програму Paint (об'єкт Bitmap Image), де намалюйте товар самостійно. Створений файл закрийте, він буде автоматично прив'язаний до вашої бази, до рядка, в яку її вставили.

3. Виконайте дану процедуру для всіх рядківвашої таблиці «Товари».

4. Збережіть зміни.

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

1. Які об'єкти можна вставити до бази даних із типом даних OLE?

2. Як можна вставити фото в таблицю як «Таблиця»?

3. Де буде відображатися фотографія в базі даних?

4. Чим відрізняється спосіб «Створити новий об'єкт» від способу «Створити із файлу»?

5. Як помістити файл фотографії товару в базу даних, якщо він має розширення .png?

6. Чи можна здійснювати виправлення файлу, який вставлений як об'єкт у базу даних безпосередньо в файловій системікомп'ютера?

7. Як вставити презентацію до бази даних?

8. Об'єкти яких програм можна вставити в базу даних?

Результат заповнення таблиці, де у відповідному полі вказано вид об'єкта - Крапковий малюнок. Для перегляду впровадженого об'єкта достатньо встановити курсор у відповідному полі та двічі клацнути кнопкою миші.

Для відображення вмісту поля у вигляді значка, що представляє файл із документом, у вікні (мал. 3.20) встановіть прапорець У вигляді піктограми(Display As Icon). Значок може бути використаний для представлення пов'язаногооб'єкт.

Введення логічно пов'язаних записів

Введемо кілька логічно взаємопов'язаних записів у таблиці група та СТУДЕНТ.

Об'єкти ГРУПА і СТУДЕНТ пов'язані однозначними відносинами, але, доки створена схема даних, у якій встановлюються зв'язки між таблицями, система неспроможна контролювати логічну взаємозв'язок введених даних. Тому для отримання цілісної бази, в якій всі записи підлеглої таблиці мають логічно пов'язану з нею головну запис, користувачеві необхідно самому відстежувати логічні зв'язки записів. При введенні підпорядкованого запису в таблицю студент потрібно перевіряти наявність запису в головній таблиці група з ключем, значення якого збігається зі значенням поля зв'язку (зовнішнього ключа) підпорядкованого запису, що вводиться. Тобто при додаванні запису про студента групи 221 необхідно, щоб група з цим номером була представлена ​​в таблиці ГРУПА.

При безпосередньому введенні таблицю записів, логічно пов'язаних із записами іншої таблиці, корисно відобразити на екрані обидві таблиці (рис. 3.21).

Для одночасного відображення відкритих таблиць можна скористатися командою Зверху внизабо Зліва направоу меню Вікно.

Використання поля зі списком під час введення записів

Одним із способів введення підлеглих записів тільки за наявності пов'язаного запису в головній таблиці може бути використання підпорядкованої таблиці поля зі списком, що включає значення поля головної таблиці. Створимо в таблиці студент для поля НГ (номер групи) поле зі списком, побудованим з урахуванням ключа таблиці група. Для цього відкриємо таблицю I студент у режимі конструктора. Встановимо курсор у полі НГ на стовпці Тип даних, відкриємо список та виберемо рядок Майстер підстановок(Див. рис. 3.5). У вікні майстра, що відкрилося Створення підстановкивстановимо прапорець Об'єкт "стовпець підстановки" використовуватиме значення з таблиці або запиту. При цьому буде побудовано список на основі значень таблиці.

У наступному вікні майстра виберемо таблицю ГРУПА, на значеннях з якої будуватиметься список поля. Далі виберемо стовпець, з даних якого формуватиметься список.

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

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

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

Розглянемо ще один приклад використання поля зі списком. Перетворимо таблиці вивчення полі КП – код предмета у поле зі списком. Для цього відкриємо таблицю в режимі конструктора, встановимо курсор у полі КП на стовпці Тип даних, відкриємо список цього стовпця та оберемо рядок Майстер підстановок. У діалозі з майстром виберемо головну по відношенню до таблиці вивчення таблицю предмет, на основі даних якої створюється список, і включені до списку поля: КП (код предмета) та НП (найменування предмета). Крім того, залишимо, як пропонує майстер, поміченим прапорець. Результат роботи майстра представлений на.

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

Визначення поля зі списком із такими параметрами призводить до відображення у полі таблиці КП замість значень ключового поля значень другого поля списку – поля НП (найменування предмета). На рис. 3.30 показано, як у таблиці ВИВЧЕННЯ відображаються поля зі списком Код предмета та Табельний викладача за нульової ширини приєднаного стовпця.

Таким чином, використання полів зі списком допоможе уникнути помилок при введенні пов'язаних записів у таблиці як за рахунок того, що в таблицях замість ключів можуть бути відображені значення, так і за рахунок того, що введення обмежується набором значень у списку.

Увага!

Під час створення полів зі списком майстер підстановки автоматично створює зв'язок між таблицею, у якій створюється поле зі списком, та таблицею-джерелом значень списку. Цей зв'язок можна побачити у вікні Схема даних, натиснувши кнопку панелі інструментів Відобразити всі зв'язки.

Вочевидь, що у базі даних складної структури під час введення даних у таблиці не гарантується надійне і коректне обслуговування даних. У прикладі бази даних Навчальний процес при введенні даних в таблиці нижніх рівнів необхідно | відстежувати кілька вищих. За великого обсягу даних це дуже важко.

Схема даних у Access

У СУБД Access процес створення реляційної бази даних включає створення даних. Схема данихнаочно відображає логічну структуру бази даних: таблиці та зв'язки між ними, а також забезпечує використання встановлених у ній зв'язків для обробки даних.

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

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

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

Схема даних у Access не лише засобом графічного відображення логічної структури бази даних (див. рис. 2.16), вона активно використовується системою у процесі роботи з базою даних. При будь-якій обробці даних із кількох взаємозалежних таблиць система використовує збережені у схемі даних зв'язку між таблицями, звільняючи користувача від необхідності спеціально повідомляти систему про наявність тієї чи іншої зв'язку при конструюванні багатотабличних об'єктів. Якось зазначені у схемі даних зв'язку використовуються системою автоматично.

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

Зв'язки між таблицями

При створенні користувачем схеми даних Access у ній визначаються та запам'ятовуються зв'язки між таблицями. На основі взаємопов'язаних таблиць система автоматично здійснює об'єднання даних для створення форм, запитів, звітів, сторінок доступу до даних. Схема даних бази графічно відображається у вікні, де таблиці представлені списками полів, а зв'язку - лініями між полями різних таблиць.

Одно-багатозначні (1:М) або одно-однозначні (1:1) зв'язки

Схема даних, перш за все, орієнтована на роботу з таблицями, що відповідають вимогам нормалізації, між якими можуть бути однозначні (1:М) або одно-однозначні (1:1) зв'язки. Для таких таблиць може автоматично підтримуватись зв'язкова цілісність. Тому схему даних доцільно будувати відповідно до інформаційно-логічної моделі.

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

Зауваження

Якщо для зв'язку таблиць замість ключового поля використовується деякий унікальний індекс, система також констатує наявність між таблицями 1:М і дозволяє встановити параметри забезпечення цілісності.

Зв'язки-об'єднання

Між двома таблицями з однаковим полем може бути встановлений зв'язок-об'єднання цим полем, званим ключем зв'язку. Для зв'язку-об'єднання може бути обраний один із трьох способів об'єднання записів таблиць:

  1. Об'єднання записів тільки при збігу пов'язаних полів обох таблиць (за замовчуванням).
  2. Об'єднання записів при збігу пов'язаних полів обох таблиць, а також всіх записів першої таблиці, для яких немає пов'язаних полів у другій, з порожнім записом другої таблиці.
  3. Об'єднання записів при збігу пов'язаних полів обох таблиць, а також всіх записів другої таблиці, для яких немає пов'язаних полів у першій, з порожнім записом першої таблиці.

Для встановлення зв'язку може бути обраний будь-який із перерахованих способів об'єднання, незалежно від того, в яких відносинах знаходяться таблиці, що зв'язуються: 1:1, 1:М або тип відношення не може бути визначений системою. Наприклад, при виборі в головній таблиці як поле зв'язку не ключового поля або поля, що входить до складу ключа, Access повідомляє, що тип відносини не може бути визначений. Але в цьому випадку між таблицями можливе встановлення зв'язку-об'єднання будь-якого типу. Коли у схемі даних визначається зв'язок між двома таблицями, між цими таблицями за умовчанням встановлюється зв'язок об'єднання першого типу, незалежно від типу відносин.

Зв'язок-об'єднання забезпечує об'єднання записів таблиць, мають однакові значення полі зв'язку. Причому за умови рівності значень у полі зв'язку, кожен запис з однієї таблиці поєднується з кожним записом з іншої таблиці. Крім того, якщо вибрано другий або третій варіант об'єднання, то під нього також підпадають записи з підлеглої таблиці, для яких немає логічно пов'язаних записів у головній таблиці. Останні два варіанти часто необхідні під час вирішення практичних завдань.

Забезпечення цілісності даних

При створенні схеми даних користувач включає таблиці і встановлює зв'язки між ними. Якщо таблиці, що зв'язуються, знаходяться щодо типу 1:1 і 1:М, для організації зв'язку можна встановити прапорець забезпечення зв'язкової цілісності даних, а також автоматичного каскадного оновлення та видалення пов'язаних записів.

Забезпечення зв'язкової цілісності даних означає, що при коригуванні бази даних Access забезпечує для пов'язаних таблиць контроль за дотриманням таких умов:

  • до підлеглої таблиці може бути додано запис з неіснуючим у головній таблиці значенням ключа зв'язку;
  • у головній таблиці не можна видалити запис, якщо не видалені пов'язані з нею записи у підпорядкованій таблиці;
  • не можна змінити значення ключа зв'язку в записі головної таблиці, якщо підпорядкованої таблиці є пов'язані з нею записи.

При спробі користувача порушити ці умови в операціях додавання та видалення записів або оновлення ключових даних у пов'язаних таблицях Access виводить відповідне повідомлення та не допускає виконання операції.

Підтримайте проект - поділіться посиланням, дякую!
Читайте також
Як встановити безкоштовний антивірус аваст Як встановити безкоштовний антивірус аваст Як очистити комп'ютер від вірусів самостійно Як очистити комп'ютер від вірусів самостійно Як повністю очистити комп'ютер від вірусів Як повністю очистити комп'ютер від вірусів