Ключі та індекси

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

Рис.14.6. Пошук кортежів з певним значенням ключа за допомогою індексу

 

Логічно, що система автоматично створює індекс для первинного, а інколи – для унікального ключа. Імовірно, що запити з пошуком значень ключів будуть найбільш „популярними”.

 

Наявність індексів для ключів життєво важливо для дотримання обмежень (унікальності) ключів. Зазвичай перевірки унікальності виконуються для команд INSERT та UPDATE.

 

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

 

У разі відсутності будь-якої відправної точки системі для пошуку значення треба переглянути все відношення. Тоді задача модифікації великого відношення стає нерозв’язною.