Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб_15-27.doc
Скачиваний:
42
Добавлен:
18.03.2015
Размер:
913.92 Кб
Скачать

Ключові поля й індекси

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

Вибір первинного ключа

Звичайно всяка таблиця має унікальне поле (або комбінацію полів), а саме - первинний ключ. Часто це поле одного з ідентифікаторів текстового типу. Для заповнення поля ідентифікатора використовується одне із правил генерації унікального значення. Правила можуть бути простими й зовсім простими.

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

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

При необхідності визначити ключове поле у вже існуючій таблиці, знайдіть у ній поле, що містить унікальні значення (наприклад, коди або номери). Якщо обране поле містить повторювані або порожні значення, то його не можна визначити як ключове. Потрібно спочатку усунути повтори шляхом зміни значень. Якщо усунути неможливо, треба або додати в таблицю поле лічильника й зробити його ключовим, або визначити складений ключ. З метою прискорення пошуку й сортування даних у будь-який СУБД використовуються індекси. Індекс є засобом, що забезпечує швидкий доступ до даних у таблиці на основі значень одного або декількох стовпців. Індекс являє собою впорядкований список значень і посилань на ті записи, у яких зберігаються ці значення. Щоб знайти потрібні записи, СУБД спочатку шукає необхідне значення в індексі, а потім по посиланнях швидко відбирає відповідні записи. Індекси бувають двох типів: прості й тридцятилітні. Прості індекси являють собою индексы, створені по одному стовпці. Індекс, побудований по декількох стовпцях, називається тридцятилітнім. Прикладом складеного індексу може бути індекс, побудований по полях Прізвище й Ім'я.

Однак застосування індексів має не тільки переваги, але й недоліки. Головним серед них є той, що при додаванні й видаленні записів або при відновленні значень в індексному стовпці потрібно обновляти індекс, що при великій кількості індексів у таблиці може сповільнювати роботу. Тому індекси звичайно рекомендується створювати тільки для тих полів таблиці, по яких найбільше часто виконується пошук записів. В Microsoft Access індексувати можна будь-які поля, крім Мемо-Полів, полів типу Гіперпосилання й об'єктів OLE.

Тому що пошук у прикладі, швидше за все, буде виконуватися на прізвище, має сенс проиндексировать цю таблицю по полю Прізвище. Установаеться для цього поля значення властивості Індексоване поле (Indexed) рівним Так (Допускаються збіги).

Таблиця створена, і можна закрити вікно Конструктора. Для цього натисніть кнопку закриття вікна. На питання Зберегти зміни макета або структури таблиці <ім'я таблиці>? (Do you want to save changes to the design of table < имятабли-цы>?) відповідайте Так (Yes). У вікні Зберегти як (Save As) у поле Ім'я таблиці (Table Name) уведіть ім'я створюваної таблиці й натисніть кнопку ОК.

Вставка нового поля

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

Видалення поля

Видалити поле можна трьома способами. Виберіть поле, клацнувши на маркері рядка й натисніть клавішу <Delete>.Виберіть поле, а потім виконаєте команду Виправлення\Видалити рядок.Виберіть поле й клацніть на кнопці Видалити рядок панелі інструментів. При видаленні поля з даними з'явиться попередження про те, що ви втратите всі дані. Якщо таблиця порожня, турбуватися не про що. У противному випадку переконаєтеся, що ви хочете видалити дані саме в цьому полі (стовпці). Якщо поле використовується в запитах, формах або звітах, видалите його й у цих об'єктах.

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