Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекцыъ БД.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
2.16 Mб
Скачать

Питання для самоперевірки:

  1. Для чого використовують перевірку введення даних в комірку?

  2. Яким чином можна задати Умову на введення певних даних, в якому режимі і на якому етапі створення БД?

  3. Чи можна створити власний текст повідомлення про помилку?

  4. Наведіть приклади корисних правил перевірки?

  5. Як ввести правила перевірки даних для всієї таблиці, а не окремих полів?

  6. Що розуміють під виразом «маска вводу формату даних»?

  7. Як зручно редагувати записи в полі МЕМО?

  8. Яким чином можна змінити структуру листа даних?

Заняття 6

Тема. Зв’язування кількох таблиць.

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

Тип заняття. Лекція.

План

1. Вступ. Використання вікна Схема данных для скріплення таблиць.

2. Визначення взаємозв'язку один-до-багатьох

3. Керування зв'язками один-до-багатьох

Хід заняття:

  1. Організаційний момент.

  2. Актуалізація опрних знань. Дати відповіді на запитання:

1.Для чого використовують перевірку введення даних в комірку?

2.Яким чином можна задати Умову на введення певних даних, в якому режимі і на якому етапі створення БД?

  1. Чи можна створити власний текст повідомлення про помилку?

3. Пояснення нового матеріалу.

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

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

Структура бази даних такого роду (звана часто двовимірною або плоскою базою даних) за звичай приводить до двох серйозних проблем.

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

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

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

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

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

Рис. 5.18. Вікно схеми даних

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

    • Таблиця Закази містить один запис для кожної позиції кожного рахунку; тут використовуються поля КодЗаказу, КодКлієнта і ДатаВиконання.

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

Використання вікна Схема данных для скріплення таблиць

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

Припустимо, що ви працюєте з таблицями Товари і Постачальники, кожна з яких містить поле КодПостачальника. В таблиці Постачальники кожне значення поля КодПостачальника є унікальним, тобто кожний постачальник описаний в єдиному записі. В таблиці Товари, проте, ви можете бачити декілька записів, що включають одні й ті самі значення поля КодПостачальника, оскільки за звичай ви купуєте у кожного постачальника декілька продуктів. Коли ви встановлюєте зв'язок між двома таблицями, грунтуючись на полі КодПостачальника, Access ефективно комбінує дані про продукт з відповідним описом постачальника. Інформація, яка вам необхідна в таблиці Товари, — це тільки поле КодПостачальника; Access вибере всю додаткову інформацію по унікальному запису в таблиці Товари.

Найпростіший тип зв'язку між таблицями називається один-до-багатьох. При такому взаємозв'язку кожний запис в первинній таблиці відповідає багатьом записам в зв'язаній таблиці. Кожний запис в таблиці Постачальники (первинна таблиця) відповідає одному або кільком записам в таблиці Товари. І навпаки, кожний запис про продукт має в точності відповідати одному запису про постачальника. Жодний продукт не можна записати без вказівки постачальника. Зв'язок один-до-багатьох в буденному житті зустрічається найчастіше: в навчальній аудиторії один викладач має безліч студентів; в бізнесі один споживач має безліч замовлень, а кожний рахунок має безліч позицій.

Два інші типи взаємозв'язків є менш загальними, проте іноді також виявляються корисними.

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

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

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

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

Для роботи з вікном Схема данных ви також можете використовувати кнопки панелі інструментів Access. Для відкриття вікна натисніть на кнопці Отобразить связи, а потім на кнопці Добавить таблицу для відображення списку доступних таблиць-об'єктів.