Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
практичні 2012.doc
Скачиваний:
13
Добавлен:
25.11.2019
Размер:
4.16 Mб
Скачать

Практична робота №5 Створення таблиць баз даних відповідно до предметної області

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

Теоретичні відомості

Для роботи з базою даних у середовищі СКБД MS Access необхідно розробити її об’єкти, а саме: таблиці, запити, форми, звіти та побудувати користувацьке меню.

Наймершим етапом створення БД є створити таблиці бази даних за побудованою схемою. Таблиці повинні містити поля всіх типів, що підтримуються СКБД MS Access - символьні, числові, логічні, дата, текст (memo), об’єкт, гіперпосилання.

Необхідно розробити:

• маски введення для полів, що мають фіксований формат;

• правила контролю значень полів таблиць;

• списки введення полів, що мають фіксовану множину значень.

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

Створення таблиці.

У Microsoft Access існує два засоби створення таблиці. Для введення власних даних можна створити порожню таблицю. Можна також створити таблицю, використовуючи вже існуючі дані з іншого джерела.

Створення нової порожньої таблиці

У Microsoft Access існує чотири засоби створення порожньої таблиці.

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

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

• Введення даних безпосередньо у порожню таблицю у режимі таблиці. При зберіганні нової таблиці у Microsoft Access дані аналізуються і кожному полю присвоюється необхідний тип даних і формат.

• Визначення всіх параметрів макету таблиці у режимі конструктора.

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

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

Надання імен полям.

Після команди створення нової таблиці пропонується вибрати один зі способів створення таблиці: режим конструктора, Майстер таблиць, імпортувати таблицю, зв’язати таблицю. Найдоцільнішим і простим є вибір режиму конструктора для створення таблиці. У колонці Field Name (Ім’я поля) задається ім’я поля. Воно може мати довжину до 64 символів і містити кириличні символи, пробіли, спеціальні символи, за винятком крапок, знаків оклику та ламаних дужок. З метою уникнення ряду проблем сумісності та правильності інтерпретації імена полів рекомендовано задавати у латинських символах. Очевидним обмеженням є заборона на наявність у одній таблиці двох полів з однаковими іменами. Це пов’язане з тим, що Access ідентифікує поле за його іменем. Для зручності користувачеві рекомендується надавати полям такі імена, які будуть однозначно інтерпретуватись ним при роботі з базою даних.

Встановлення типу даних поля

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

Text (Текстовий). Текстові поля містять текст, довжина якого не може бути більшою, ніж 255 символів. Реальна довжина поля встановлюється за допомогою параметра Field Size (Розмір поля).

Memo (Коментар). У Memo-полях зберігається текст довжиною до 64000 символів. Поля цього типу даних не можуть індексуватись.

Number (Числовий). Діапазон допустимих значень визначається параметром Field Size (Розмір поля). Формат чисел вказується у параметрі Format.

Date/Time (Дата/Час). Поля дати/часу містять значення дат та часу у діапазоні від 100 до 9999 р.

Currency (Грошовий). У грошових полях можна зберігати числа з точністю до 15 знаків зліва від коми і чотирьох розрядів після десяткової коми.

AutoNumber (Автономер).Поле лічильника містить число, яке збільшується на 1 автоматично щоразу після того, як додається новий запис до таблиці.

Yes/No (Логічний). Поле є тригером. Може містити значення Yes/No, True/False, On/Off, що обирається користувачем у залежності від потреб.

OLE-Object (Об’єкт OLE). У OLE-полях розміщуються об’єкти, такі як, наприклад, Excel-таблиця або Microsoft Draw-графіка, опрацьовані OLE-сервером. Розмір поля може бути до 128 Мб. Поля даного типу не можуть індексуватись.

Hyperlink (Гіперпосилання). Посилання на ім'я файлу або Internet адреса Web сайту. Крім перелічених типів у списку доступних значень колонки Data Type є ще й Lookup Wizard (Майстер підстановки), який дозволяє подавати поля у вигляді списку або комбінованого списку певних значень. Додаткові властивості такого, досить часто використовуваного, поля подаються у розділі вікна Lookup.

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

перетворення без помилок, то частина даних може бути втрачена або спотворена.

Визначення властивостей поля

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

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

Для символьних полів розмір визначається послідовністю таких кроків:

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

• у нижній частині вікна вибрати пункт властивості FieldSize (Розмір поля).

Ввести максимальне число символів для текстового поля. Для полів типу Text, значенням такої властивості повинно бути ціле число у діапазоні від 0 до 255. За замовчуванням задається розмір 50. Розмірність даних, що можуть зберігатися у полях із типом даних Text , Number AutoNumber або Currency визначається властивістю FieldSize. За допомогою цієї ж властивості визначається максимальне число символів, що можуть бути введені у текстове поле, а також діапазон і тип даних, які вводяться у числове поле.

Параметри полів таблиць

Field Size (Розмір поля). Визначає максимальну довжину текстового поля або спосіб подання чисел у полі типу Number.

Format (Формат поля). Визначає спосіб відображення даних. Допускає використання власних форматів користувача.

New Values (Нове значення). Визначає нове значення для поля AutoNumber (Автономер): Increment (Приріст) або Random (Випадкове число).

Decimal Places (Число десяткових знаків). Визначає кількість розрядів справа від десяткової коми.

Input Mask (Маска введення). Визначає при вводі формат даних, що включає зображення постійних символів у полі, а також задає перевірку формату даних.

Caption (Підпис). Визначає надпис, який буде використовуватись як найменування поля у формі або звіті. Якщо для цього параметра не буде задане значення, то як надпис буде використовуватись ім’я поля.

Default Value (Значення по замовчуванню). Визначає значення, яке автоматично буде введене у поле при генерації запису.

Validation Rule (Умова на значення). Правило, що обмежує допустимі для введення у поле дані.

Validation Text (Повідомлення про помилку). Повідомлення про спробу ввести у поле дані, що не задовольняють правилу, заданому у Validation Rule.

Required (Обов’язкове поле). Визначає необхідність заповнення цього поля при введенні.

Indexed (Індексоване поле). Ознака індексування, що приймає такі значення: No – при відсутності індексування, Yes (Duplicates OK) (Співпадіння допускаються) – індексування з можливістю повторення ключів та No Duplicates – співпадіння не допускаються.

Зміна імені поля, при його відображенні у режимі таблиці

Крім внутрішніх імен, присвоєних полям таблиць, які застосовуються як ідентифікатор для зберігання і опрацювання у програмах, додатково можуть бути визначені зовнішні або довгі імена. Ці імена застосовуються при відображенні полів у режимі таблиці, а також при проектуванні форм, звітів чи запитів. Додаткове ім’я задається властивістю поля Caption (Підпис). Наприклад, внутрішнє ім'я поля, яке використовується у таблицях, програмах Visual Basic для прикладних систем або у виразах, може бути “ПІБ”, а у заголовку стовпчика виводитись як “Прізвище Ім'я По батькові”. На відміну від внутрішніх імен, які мають певні обмеження у використанні символів (не дозволяється застосовувати розділювачі – крапки, коми, дужки тощо), зовнішні імена можуть складатися з довільної послідовності символів.

Послідовність визначення підписів:

1) відкрити таблицю у режимі конструктора;

2) у верхній частині вікна вибрати поле, для якого необхідно визначити нове ім'я;

3) у нижній частині вікна у пункті властивості Caption (Підпис) ввести текст, який має

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

букв, цифр, пробілів та інших спеціальних символів і містити до 255 символів.

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

Додавання та видалення полів.

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

Первинний ключ.

Кожна таблиця може мати первинний ключ. Він ідентифікує записи і дозволяє відрізнити один запис від іншого. Первинний ключ складається з одного або декількох полів. Наприклад, поле вставлене у таблицю КЛІЄНТІВ, дозволить відрізнити одного клієнта від іншого. Воно може назватись полем НОМЕРА КЛІЄНТА, може бути текстовим і адаватися користувачем при створенні запису. Це поле може бути й числовим; значення у ньому будуть створюватись автоматично при внесенні кожного нового запису. Маючи унікальний первинний ключ (Primary Key) у кожному записі можна розрізняти клієнтів. Це дуже важливо, оскільки у таблиці можуть зустрічатися однакові прізвища. Теоретично можна використовувати ім’я клієнта та його адресу, але не виключено, що у людей з однаковим прізвищем адреса одна й та ж (наприклад, батько й син можуть проживати за однією адресою і мати не тільки однакове прізвище, але й ініціали). Мета встановлення первинних ключів у створені унікальних записів.

Як вибрати ключ.

У більшості таблиць є поле або комбінація полів, які роблять запис унікальним. Саме вони складають первинний ключ для таблиці. Часто поле ключа може бути ідентифікаційним полем таблиці, яке, зазвичай, є текстовим. Його вміст задається при створенні. Можна визначити його як просту послідовність значень 0001, 0002, 0003 і т.д. або використовувати як перший символ літеру (наприклад, першу літеру назви видавництва) і додати порядковий номер (А001, А002, В001, В002 і т.д.). Спосіб нумерації може також бути отриманий у результаті деяких обчислень, що базуються на інформації з декількох полів таблиці. Дуже часто поле первинного ключа розташовують першим.

Первинними ключами можна оголосити декілька полів. Для цього слід виділити необхідні поля у специфікації: утримуючи клавішу [Ctrl] натиснутою, слід клікнути мишкою у селекторній колонці навпроти кожного з потрібних полів.

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

У реляційних базах даних користувач може описати відношення між декількома таблицями. Access враховує ці відношення при пошуку взаємопов’язаних даних під час опрацювання запитів, форм та звітів, що базуються на декількох таблицях. Щоб встановити зв’язки між кількома таблицями, спершу треба створити первинний ключ для кожної таблиці. Для встановлення зв’язків у вікні бази даних слід вибрати команду Relationships (Зв’язки) з меню Tools (Інструменти). Після створення зв’язку між двома таблицями можна змінити його властивості, зокрема, властивість тип зв'язку (Join Type). Найрозповсюдженішим типом зв’язку є One-To-Many (Один-до-багатьох). Додатково, при визначенні зв'язків, можуть встановлюватись правила цілісності даних (Referential Integrity), які дозволяють опрацьовувати зв'язані таблиці як єдину структуру. Допускається встановлення таких правил:

• каскадна модифікація – визначає синхронну зміну значень полів зв'язку в обох таблицях;

• каскадне знищення – одночасне знищення пов'язаних записів у головній і підпорядкованій таблицях.