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


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

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



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

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

Встановити умови цілісності даних можна за допомогою вікна “ REFERENTIAL INTEGRITY BUILDER ”. Їх встановлення показано нижче на рис. 2.17.

 

Рис. 2.17 – Визначення умов цілісності даних бази


Як бачимо в полі UPDATE усіх зв’язків між таблицями стоїть опція CASCADE, яка означає наступне: при зміні значень полів первинного ключа чи ключа-кандидата в батьківській таблиці автоматично здійснюється каскадна зміна усіх відповідних значень у дочірній таблиці. Наприклад, якщо це правило застосувати до відношення між таблицями hudogniki і kartini, то при зміні коду диска в таблиці hudogniki автоматично будуть змінені коди диска й у таблиці kartini.

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

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

При визначенні умов цілісності даних VISUAL FOX PRO створює службові тригери, текст яких можна переглянути у вкладці STORED PROCEDURES.

 

Створення форм

 

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

Користувачу додатку немає необхідності знати, що таке Visual FoxPro, які команди використовуються для додавання або видалення записів в таблицях. Він може навіть взагалі не знати, з використанням яких програмних засобів створювався додаток. Для нього головним є переміщення по таблиці, додавання нових записів, редагування і видалення старих. Всі ці можливості є у формах.

За допомогою майстра форм створимо 4 форми:

1) Форма artists – є звичайною однотабличною формою, що відображає дані з таблиці hudogniki. Загальний вид цієї форми представлений нижче на рис. 2.18.

 

Рис. 2.18 – Загальний вигляд форми artists

 

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

 

2) Форма pictures – також однотаблична форма, що відображає дані з таблиці kartini. Загальний вид цієї форми представлений нижче на рис. 2.19.

 


Рис. 2.19 – Загальний вигляд форми kartini

 

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

3) Форма epoch – це багатотаблична форма, що відображає дані з 2 таблиць: epohi та hudogniki. Загальний вид цієї форми представлений нижче на рис. 2.20.

 

Рис. 2.20 – Загальний вигляд форми epoch

 

В цій формі виводяться такі дані як назва епохи живопису, історичний період, коротка характеристика епохи, найвідоміші представники епохи. Нижче в таблиці описано художників, які належать до вказаної епохи. При цьому описані такі дані як прізвище, ім’я та по-батькові художника, дата народження і смерті, кількість картин, які він написав та найкращі картини художника.

4) Форма museums – це також багатотаблична форма, що відображає дані з 2 таблиць: museums та kartini. Загальний вид цієї форми представлений нижче на рис. 2.21.

 

Рис. 2.21 – Загальний вигляд форми museums

 

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

 

Формування запитів

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

Створимо 2 запити до бази даних:

1) Запит, що виводить на екран усіх художників-передвижників, які написали більше ніж 10 картин. Створення 1 запиту в режимі конструктора показано на рис. 2.22, а результат виконання запиту – на рис. 2.23.

 

Рис. 2.22 – Створення 1 запиту в режимі конструктора

 

Рис. 2.23 – Результат виконання 1 запиту в режимі конструктора

 

SQL-код 1 запиту:

SELECT Hudogniki.fio, Hudogniki.epoha, Hudogniki.date_birth,;

Hudogniki.date_death, Hudogniki.count_kartin, Hudogniki.best_kartin;

FROM;

GIVOPIS!HUDOGNIKI;

WHERE Hudogniki.epoha = ("Передвижники");

AND Hudogniki.count_kartin > (10.0000);

ORDER BY Hudogniki.fio

2) Запит, що виводить на екран усі картини художника Леонардо Да Вінчі. Створення 2 запиту в режимі конструктора показано на рис. 2.24, а результат виконання запиту – на рис. 2.25.

 


Рис. 2.24 – Створення 2 запиту в режимі конструктора

 

Рис. 2.25 – Результат виконання 2 запиту в режимі конструктора

 

SQL-код 2 запиту:

SELECT Kartini.name, Kartini.fio, Kartini.date, Kartini.epoha,;

Kartini.museum;

FROM;

GIVOPIS!KARTINI;

WHERE Kartini.fio = ("Леонардо да Винчи");

ORDER BY Kartini.name

 



Поделиться:


Последнее изменение этой страницы: 2020-03-02; просмотров: 182; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.222.35.77 (0.011 с.)