Тип даних ole. Введення у використання типів даних та властивостей полів. Список вбудованих форматів

06.07.2021 Поради

Використання даних типу Поле об'єкта OLE (OLE Object)

Поле об'єкта OLE є засобом, що дозволяє встановити зв'язок з об'єктами іншого додатка або впровадити об'єкт у БД. Об'єктами можуть бути тексти прості та форматовані, малюнки, діаграми, файли звукозапису (.WAV), музика у форматі MIDI (музично-інструментальний цифровий інтерфейс), файли анімації (.FLI, .МММ), відеокліпи (.AVI), електронні таблиці з інших додатків, які підтримують цей засіб. Програмний додаток Access, підтримуючи OLE, повністю інтегрується з іншими програмами пакету Microsoft Office .

Впроваджений об'єкт зберігається у файлі БД і є доступним. Подвійним клацанням миші по комірці, що містить впроваджений об'єкт, відкривається можливість редагування об'єкта засобами програми, у якому об'єкт було створено.

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

Наприклад, у таблиці ЧАСТОТА ЛЕМ додамо поле ЗВУК, яке має містити запис вимови леми слова у форматі (.WAV). Якщо на вашому диску є звукові файлиз вимовою окремих слів із таблиці ЧАСТОТА_ЛЕММ, можна пов'язати кожен такий звуковий файл із полем ЗВУК таблиці. Для цього відкриємо таблицю ЧАСТОТА_ЛЕМ і відсортуємо її по полю лема в порядку, що зростає (натиснути стрілку біля імені поля ЛЕМА і потім вибрати Сортування від А до Я). Сортування провадиться для зручності пошуку потрібного слова. Потім виберемо слово, котрим є звуковий файл, наприклад "бабуся". Далі слід поставити курсор на поле ЗВУК запису з ЛЕМА = бабуся та натиснути праву кнопку миші. Відкриється меню, в якому потрібно вибрати Вставити об'єкт. Відкриється вікно, в якому потрібно натиснути кнопку Створити з файлу, а потім вибрати звуковий файл на диску з вимовою слова "бабуся". У полі ЗВУК з'явиться напис Package. Тепер якщо двічі натиснути цей напис, буде викликана програма відтворення звукових файлів (як правило, це програвач Windows Media) і прозвучить слово "бабуся". Такі самі дії слід виконати з усіма словами, котрим є звукові файли. В результаті виконаної операції слова таблиці, для яких можна прослухати їхнє звучання, будуть позначені відповідним чином (рис. 14.9).

Мал. 14.9.

Використання даних типу Гіперпосилання

Спеціальний тип даних Гіперпосилання (англ. Hyperlink ) дозволяє зберігати гіперпосилання в полях таблиць БД Access. Поля з типом Гіперпосилання використовуються для переходу до об'єктів тієї ж самої чи іншої БД Access, до документів, створених у різних додатках Microsoft Office і розташований на локальних або мережевих дисках, до сторінок Web-серверів та інших ресурсів в Інтернеті. При клацанні мишею по гіперпосиланню здійснюється перехід до документа, який відкривається додатком, що його створив.

Для прикріплення гіперпосилань до БД необхідно виконати таку послідовність дій. Додамо в таблицю ЧАСТОТА_ ЛЕММ поле СЛОВНИК, яке міститиме гіперпосилання на словникові статті в Інтернеті з дефініціями для даної лексеми.

У режимі Конструктор задаємо тип цього поля = Гіперпосилання.

Шукатимемо в Інтернеті значення застарілих і не зовсім зрозумілих сучасному читачеві слів з казки, наприклад "жерновець", "боярин", "кочеток".

Для першого слова ("жерновець") в Інтернеті вдалося знайти лише малюнок із зображенням деталей ручного млина, серед яких є два малі жорна, припустимо, що це і є "жерновці" (club- kaup.narod.ru/rec/arcussr/tablell2 .jpg). Слово "жорнівці" утворено як димінутив від слова жорнів згідно з традицією російського словотвору. Для другого слова – "боярин" є словникова стаття у Вікісловарі (ru.wiktionary.org/wiki/боярин). Третє слово, кочеток, знайшлося на вебсайті "Словники та енциклопедії Академік" у електронної версіїСловника Ушакова (dic.academic.ru/dic.nsf/ushakov/842550).

Кожне знайдене посилання потрібно скопіювати в полі СЛОВАР таблиці ЧАСТОТАЛЕММ. Згодом при натисканні на посилання в цьому полі запускається програма Інтернет-браузера, яка відкриє відповідну веб-сторінку в окремому вікні браузера. Вид таблиці бази даних Accessіз вставленими гіперпосиланнями показано на рис. 14.10.

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. Об'єкти яких додатків можна вставити до бази даних?

Введення даних типу OLE

Поле об'єкта OLE під назвою Foto можна заповнювати навіть без відображення об'єкта (зображення) на екрані. У полі OLE можуть зберігатися такі об'єкти.

Растрові зображення.

Звукові файли

Графіки та (діаграми)

Word чи Excel

ким чином, щоб їх можна було бачити, чути чи використовувати. При розміщенні об'єкта OLE в таблиці ви побачите текст з описом об'єкта (наприклад, у полі типу OLE можна побачити напис Paintbrush Picture). Ввести об'єкт можна двома способами.

Вставити із буфера

Вставити з діалогового вікна, що з'являється після виконання команди Вставка->Об'єкт (Insert->Object)

Введення даних типу MEMO

Поле Recenzia містить дані типу MEMO. Цей тип дозволяє вводити до 64 000 байт тексту для кожного запису. У таблиці відображається лише частина тексту. Натискаючи , можна відобразити діало-пащу введення (Zoom) зі смугою прокручування, яке дозволяє побачити відразу до 1 000 байт тексту

Переміщення по записам у таблиці

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

Отримано нову інформацію

Виявлено помилки

Потрібно додати нові записи

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

Якщо ви перебуваєте в режимі Конструктор (Table Design), клацніть на кнопці Подання таблиць (Views), щоб перейти в режим таблиці для внесення змін до даних.

Переміщення за записами

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

Для переміщення записами можна використовувати вертикальну смугу прокручування. Кнопки зі стрілками на смузі прокручування дозволяють переміщати маркер запису тільки на одну позицію за одне клацання Тому для більш швидкого переміщення (через кілька записів відразу) краще користуватися бігунком смуги прокручування. багато позицій уперед.

Команда Правка->Перейти (Edit->Go) надає кілька варіантів швидкого переміщення по таблиці.

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

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

Пошук заданого значення

Хоча знаючи номер запису, можна перейти до нього і знайти конкретне поле, в більшості випадків потрібно буде знаходити в записі певне значення. Це можна зробити трьома способами:

Вибрати команду Правка->Знайти (Edrt->Find)

Натисніть кнопку Знайти (Find Specified Text), розташовану на панелі інструментів (на ній зображений бінокль).

Скористайтеся комбінацією клавіш

У разі використання будь-якого з цих методів з'явиться діалогове вікно. Для пошуку тільки по певному полю помістіть в нього курсор (причому зробіть це до відкриття діалогового вікна). У діалоговому вікні встановіть прапорець Тільки у поточному полі (Search Only Current Field), і Access буде вести пошук лише у вказаному полі.

У цьому діалоговому вікні можна встановити різні параметри пошуку. У текстовому полі Зразок (Find What) ввести потрібне значення Значення можна ввести в тому вигляді, в якому воно представлене в полі, або з використанням наведених нижче спеціальних символів:

* -- Відповідає будь-якій кількості символів

Відповідає одному символу

# -- Відповідає одній цифрі

Щоб розібратися, як ці символи працюють, припустимо, що потрібно знайти всі значення, які починаються з АВ. Для цього введіть АВ*

А тепер припустимо, що ви хочете знайти значення, які закінчуються символами 001. У цьому випадку введіть *001. Для пошуку будь-якого значення, яке починається з символів АВ, закінчується символами 001 і містить лише два символи між ними, потрібно ввести АВ?001. Якщо потрібно знайти всі прізвища, що закінчуються на “ко”, то для пошуку значень типу Бродський і Чайковський введіть *ко.

У списку Збіг (Match) міститься три варіанти вибору:

З будь-якою частиною поля (Any Part of Field)

Поля цілком (Whole Field)

З початку поля (Start of Field)

Стандартною є опція Поля повністю (Whole Field) Наприклад, значення Пет буде знайдено, якщо значення дорівнює Пет. Якщо вибрано опцію З будь-якою частиною поля (Any Part of Field), то в результаті пошуку буде вилучено значення Петров, Петровський. Шпетний і т.д. В результаті пошуку з установкою З початку поля (Start of О будуть знайдені значення Петров, Петровський).

У списку Перегляд (Search), що розкривається, ви можете вибрати одну або кілька опцій з набору Все, Вгору, Вниз (Up, Down, All)

При виборі кнопки опції Тільки в поточному полі (Search Only Current Field) пошук значення буде вестися тільки в одному полі Прапорець З урахуванням регістру (Match Case) визначає, чи відрізнятимуться великі та малі літери. За замовчуванням вони не розрізняються При пошуку за значенням Пет буде знайдено Пет, Петра і Петрова. При установці прапорця З урахуванням регістру (Match Case) необхідно ввести рядок пошуку з урахуванням великих та малих літер

Очевидно, що для даних типу Числовий (Number), Грошовий (Currency) і Дата/час (Date/Time) облік регістру не має сенсу. Fields As Formatted) (Якщо ви форматували поля таблиці, встановіть цей прапорець) Наприклад, вам потрібно знайти в полі ДатаНародження записи про всіх, що народилися в квітні 1982 Для цього встановіть прапорець опції З урахуванням формату полів (Search Fields as Formatted) і введіть Квітень 92. Якщо ви не встановите цей прапорець, пошук доведеться виконувати за точною датою народження, наприклад шукати 4/8/92

Використання прапорця З урахуванням формату полів (Search Fields as Formatted) може суттєво уповільнити пошук.

Пошук почнеться після натискання кнопки Знайти (Find First) або Знайти далі (Find Next) Знайшовши значення, Access виділяє його Для пошуку першого відповідного значення клацніть на кнопці Знайти. Для пошуку наступного значенняпотрібно клацнути на кнопці Знайти далі Протягом усього процесу пошуку діалогове вікно залишається відкритим. Тому, знайшовши потрібне значення, натисніть кнопку Закрити (Close), щоб закрити діалогове вікно

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

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

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

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

Типи даних

Розмір текстового поляможе бути в межах від 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 відкриє вікно відкриття документа та після вибору потрібного файлувизначить, яку програму необхідно відкрити для роботи з ним.

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

Для відображення вмісту поля у вигляді значка, що представляє файл із документом, у вікні (мал. 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 виводить відповідне повідомлення та не допускає виконання операції.