Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lab 40_2014.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
940 Кб
Скачать
☆

2.3.3 Secondary Indexes - вторинні індекси

Наступний розділ у списку, що випадає, властивостей таблиці: Secondary Indexes - вторинні індекси. Цей розділ дозволяє створити необхідні для подальшої роботи вторинні індекси (первинний індекс створюється по ключових полях). Наприклад, для подальшого використання нашої таблиці Pers корисні будуть наступні індекси:

Ім'я індексу

Поля

Пояснення

fio

Fam, Nam, Par

Впорядкування таблиці співробітників за алфавітом.

depfio

Dep, Fara, Nam, Par

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

year

Year_b

Впорядкування таблиці по році народження співробітників.

Щоб створити новий вторинний індекс, натискаємо кнопку Define - визначити. Відкриється діалогове вікно, представлене на мал. 2.5. У його лівому вікні Fields міститься список доступних полів, у правому вікні Indexed fields можна підібрати і впорядкувати список полів, що включаються в індекс. Для переносу поля з лівого вікна в праве треба виділити поле, що цікавить вас, або групу полів і нажати кнопку зі стрілкою вправо. Стрілками Change order (змінити послідовність) можна змінити порядок проходження полів в індексі.

Рис. 2.5 Вікно завдання вторинного індексу

Панель радіокнопок Index Options (опції індексу) дозволяють встановити наступні характеристики:

Unique

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

Descending

При установці цієї опції таблиця буде впорядковуватися по ступені убування значень (за замовчуванням впорядкування робиться, по ступені наростання значень)

Case

Sensitive

При установці цієї опції буде прийматися в увагу регістр, у якому уведені символи

Maintained

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

Після того, як індекс сформований, клацаємо на кнопці ОК. Відкриється вікно (мал. 2.6), у якому задаємо ім'я індексу.

2.3.4 Referential Integrity - цілісність на рівні посилань

Наступний розділ у списку, що випадає властивостей таблиці в правому верхньому куті екрана представлені на мал. 2.3: Referential Integrity — цілісність на рівні посилань. Мова йде про способи, що дозволяють забезпечити постійні зв'язки між даними окремих таблиць. Якщо встановлюється цілісність на рівні посилань між двома таблицями, одна йз яких — головна (батьківська), а інша — допоміжна (дочірня), то в допоміжній таблиці вказується поле (або група полів), які можуть брати свої значення тільки із ключового поля (або полів) головної таблиці. Подібні зв'язки припустимі не для всіх типів таблиць, але в Paradox вони передбачені. Перш, ніж створювати Referential Integrity, треба мати обидві таблиці, що зв'язуються - батьківську й дочірню. Якби в попередньому прикладі мати обидві таблиці — Pers і Dep, тоді можна було задати цілісність, зв'язавши поле Dep таблиць Pers із ключовим полем Dep головної таблиці Dep. Щоб ввести подібний зв'язок, треба спочатку встановити в якості робочий каталог, що містить обидві таблиці (це робиться командою File | Working Directory). Потім треба відкрити дочірню таблицю Pers (команда File | Open), увійти в режим її реструктуризації (команда Table | Restructure) і у вікні Table properties вибрати розділ Referential Integrity. Потім клацнути на кнопці Define, і відкриється діалогове вікно, представлене на мал. 2.7.. У його лівій панелі Fields можна вибрати поле або групу полів, які зв'язуються із ключовими полями головної таблиці, і кнопкою зі стрілкою перенести їх у список дочірніх полів Child fields. Потім у правій панелі Table можна вказати головну панель і кнопкою зі стрілкою перенести в список ключів батьківської таблиці Parent's key. Група радіокнопок Update rule визначає, що буде, якщо в головній таблиці ви знищити або змінити значення ключового поля, з яким зв'язані якісь записи в допоміжній таблиці. Якщо вже встановлена опція Prohibit, то Database Desktop просто не дозволить подібну операцію. Якщо встановлено опцію Cascade, то при зміні значення ключового поля в головній таблиці аналогічні зміни автоматично відбудуться в записах дочірньої таблиці. А якщо знищити запис у головній таблиці, що містить деяке значення ключового поля, то в допоміжній таблиці автоматично знишуться всі записи, пов'язані із цим значенням ключового поля.

Рис. 2.6 Завдання ім'я індексу

Рис. 2.7 Вікно встановлення цілісності на рівні посилань

Встановлення індикатора Strict Referential Integrity у нижній частині діалогового вікна не дозволить раннім версіям Paradox (зокрема, версіям Paradox для DOS) відкрити й зіпсувати таблиці, у яких введена цілісність на рівні посилань.

Коли всі необхідні операції проведені, клацаємо на кнопці OK і у вікні, що відкрилося (мал. 2.8) вводимо ім'я для створеного посилання.

Рис. 2.8 Введення ім'я створеного посилання

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]