МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах
РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ" ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах Гендерна антидискримінаційна експертиза може зробити нас моральними рабами ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів Контакти
Тлумачний словник |
|
|||||||
ІндексиІндексомприйнято називати впорядкований список полів або груп полів в таблиці. Таблиці можуть мати величезну кількість записів, при цьому, записи не знаходяться в якому-небудь певному порядку, тому їх пошук за вказаним критерієм може тривати достатньо довго. Індексна адреса – це спеціальний метод забезпечення об’єднання всіх значень в групи з однієї або більше записів, які відрізняються одна від одної, оскільки унікальність записів часто необхідна. Індекси – це корисний інструмент, який широко застосовується у всіх сучасних СУБД. Коли створюється індекс в полі, БД запам’ятовує відповідний порядок всіх значень цього поля в області пам’яті. Про переваги індексів може говорити наступне: припустимо, що таблиця STUDENTS має декілька тисяч записів, і необхідно знайти студента з конкретним прізвищем. Оскільки записи в таблиці не впорядковані, то СУБД буде вимушена проглядати всю таблицю, рядок за рядком, перевіряючи кожного разу значення поля FAM на рівність шуканому значенню. За наявності індексу в полі FAM, система могла б знайти шукане прізвище прямо в цьому впорядкованому індексі, і дати інформацію про те, як знайти правильний рядок таблиці. У індексів є і недоліки. Тоді як індекс значно покращує ефективність запитів, використання індексу декілька уповільнює операції модифікації, особливо такі, як INSERT і DELETE. Крім того, сам індекс займає місце на пристрої збереження інформації. Звідси витікає, що при створенні таблиці необхідно ухвалити зважене рішення, індексувати її чи ні. Індекси можуть складатися відразу з декількох полів, при цьому перше поле є як би головним, друге упорядковується усередині першого, третє усередині другого, і так далі. Синтаксис команди для створення індексу наступний:
CREATE INDEX <INDEX NAME> ON <TABLE NAME> (<COLUMN NAME> [,<COLUMN NAME>]...);
Зрозуміло, що таблиця, для якої створюється індекс, повинна вже існувати і містити імена індексованих полів. При цьому ім’я індексу не може бути використане для чого-небудь іншого в БД і SQL самостійно вирішує, коли він необхідний для роботи і використовує його автоматично. Приведемо наступний приклад. Очевидно, що в таблиці STUDENTS одним з найуживаніших може бути індекс по полю, що містить прізвище студента. Тоді команда для створення такого індексу буде наступною:
CREATE INDEX FAMIDX ON STUDENTS (FAM);
Після цього при пошуку інформації про студентів, СУБД знаходитиме її дуже швидко. Проте, при створенні цього індексу, йому не наказана унікальність, не дивлячись на те, що це є одним з його призначень. Для створення унікальних індексів (тих, що не містять значень, які повторюються) використовують ключове слово UNIQUE в команді CREATE INDEX. Фактично такий індекс буде первинним ключем таблиці. Наприклад, для таблиці STUDENTS поле NUM підходить як первинний ключ, і він стане першим кандидатом для унікального індексу. Створити його можна командою:
Читайте також:
|
||||||||
|