Багато табличні бази даних

Особливості багатотабличних баз даних

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

БД вважається нормалізованої в разі виконання наступних умов:

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

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

Розрізняють зв'язку декількох типів:

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

Вирішуємо контрольні з усіх предметів. 10 років досвід! Ціна від 100 руб. термін від 1 дня!

Багато табличні бази даних

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

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

Вирішуємо контрольні з усіх предметів. 10 років досвід! Ціна від 100 руб. термін від 1 дня!

Багато табличні бази даних

У таблицю Постачальники вводимо додаткове поле Код постачальника, яка стане ключовим для даної таблиці.

Багато табличні бази даних

Ці 2 таблиці, які перебувають у відношенні багато-до-багатьох, зв'язуються один з одним тільки за допомогою третьої таблиці. Таблиці Комплектуючі та Постачальники зв'язуються відношенням багато-до-багатьох, використовуючи створення 2 зв'язків один-ко-многим по відношенню до таблиці Ціна.

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

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

Вирішуємо контрольні з усіх предметів. 10 років досвід! Ціна від 100 руб. термін від 1 дня!

Звідси випливає, що таблиця Ціна буде містити поля (табл. 4):

  • Лічильник, що є ключовим;
  • Код комплектуючих, що є зовнішнім ключем для таблиці Комплектуючі;
  • Код постачальника, яка є зовнішнім ключем для таблиці Постачальники;
  • Ціна, що є числовим.

Багато табличні бази даних

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

Створення багатотабличного форми

Багатотабличного форму створюють на основі декількох взаємо-мосвязанних таблиць. Вона може складатися з 1 форми або з основною і 1 або декількох підлеглих форм. Підпорядкована форма може будуватися як на основі підпорядкованої, так і головною таблиць.

Багатотабличного форму можна створити в режимі Конструктора або за допомогою Майстра форм. Однак в Access, як правило, використовується початкове створення форм за допомогою майстра, і потім вони можуть доопрацьовуватися в режимі Конструктора. В ході створення багатотабличного форми в Майстрі форм додатком Access створюється для неї базова інструкція SQL, що містить відомості про використовувані таблицях і полях.

Вирішуємо контрольні з усіх предметів. 10 років досвід! Ціна від 100 руб. термін від 1 дня!

Перерахуємо способи, що створюють багато табличні форми при помо-щи Майстри:

  1. Явна включення підпорядкованої форми, при якому підпорядкована форма буде будуватися на основі підпорядкованої таблиці щодо таблиці, на основі якої побудована основна частина форми.
  2. Виклик пов'язаної форми по кнопці. Створені за допомогою Майстра пов'язані підлеглі форми не обов'язково повинні включатися безпосередньо в основну форму, ви матимете змогу дзвонити по необхідності натисканням на включену в неї кнопку. У цьому випадку відкривається вміст пов'язаної форми буде синхронізуватися з поточним записом форми. Даний спосіб побудови є зручним для складних багатотабличних форм, які перевантажені великим числом елементів управління, а також для користувача, якому не потрібно постійно бачити пов'язані дані.
  3. Без використання підлеглих і пов'язаних форм. Подібну багатотабличного форму створюють при необхідності відображення записів підпорядкованої таблиці, які доповнені полями з однієї або НЕ-скількох головних таблиць. В даному випадку джерелом даних, що виводяться в форму, буде запис підпорядкованої таблиці. При цьому форма відобразить поля з записи підпорядкованої таблиці і поля з єдиною пов'язаної з нею записи головною таблиці.
  4. На основі запиту. Для запиту, що має вже створені записи в результаті об'єднання полів пов'язаних записів головною і кожної з підлеглою таблиць, майстер буде будувати форму таким же чином, як у випадку з заданими вихідними таблицями. Завдяки чому буде створена форма, яка забезпечує одноразове відображення даних, оскільки вона базується на вихідних нормалізованих таблицях.

Вирішуємо контрольні з усіх предметів. 10 років досвід! Ціна від 100 руб. термін від 1 дня!

Напишемо недорого і точно в строк! Більш 50 000 перевірених фахівців

Акція! Даруємо 100 руб.
на перше замовлення!

від 200 руб / від 2х годин

від 350 руб / від 2х годин

від 50 руб / від 2х годин

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

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

  1. У вікні БД буде вибирається закладка Форма і натискається кнопка Створити.
  2. У вікні Нова форма буде вибиратися режим створення Майстер форм, а джерелом даних основної частини форми вибирається таблиця або запит зі списку.
  3. У першому діалоговому вікні Створення форм послідовно вибираються таблиці, а в них поля, які будуть включатися в форму, після цього потрібно натиснути кнопку Далі.
  4. У другому діалоговому вікні Створення форм буде вибиратися варіант створення багатотабличного форми, для цього в рамці необхідно вибрати вид представлення даних - виділити таблицю, що є джерелом основної частини форми.

Коли таблиця (джерело основної частини форми) стане головною по відношенню до іншої таблиці форми, то у вікні Створення форм вибереться 1 з 2 можливих типів підключення підлеглих форм:

  • при безпосередньому включенні - Підлеглі форми;
  • при включенні кнопки, яка викликає пов'язану форму, пов'язані форми.

Вирішуємо контрольні з усіх предметів. 10 років досвід! Ціна від 100 руб. термін від 1 дня!