Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Контакти
 


Тлумачний словник
Авто
Автоматизація
Архітектура
Астрономія
Аудит
Біологія
Будівництво
Бухгалтерія
Винахідництво
Виробництво
Військова справа
Генетика
Географія
Геологія
Господарство
Держава
Дім
Екологія
Економетрика
Економіка
Електроніка
Журналістика та ЗМІ
Зв'язок
Іноземні мови
Інформатика
Історія
Комп'ютери
Креслення
Кулінарія
Культура
Лексикологія
Література
Логіка
Маркетинг
Математика
Машинобудування
Медицина
Менеджмент
Метали і Зварювання
Механіка
Мистецтво
Музика
Населення
Освіта
Охорона безпеки життя
Охорона Праці
Педагогіка
Політика
Право
Програмування
Промисловість
Психологія
Радіо
Регилия
Соціологія
Спорт
Стандартизація
Технології
Торгівля
Туризм
Фізика
Фізіологія
Філософія
Фінанси
Хімія
Юриспунденкция






Індекси

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

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

Індекси – це корисний інструмент, який широко застосовується у всіх сучасних СУБД. Коли створюється індекс в полі, БД запам’ятовує відповідний порядок всіх значень цього поля в області пам’яті. Про переваги індексів може говорити наступне: припустимо, що таблиця 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 підходить як первинний ключ, і він стане першим кандидатом для унікального індексу. Створити його можна командою:

 


Читайте також:

  1. Агрегатні індекси.
  2. Базисні і ланцюгові індекси.
  3. Біржові індекси
  4. Біржові індекси.
  5. Взаємопов’язані (спряжені) агрегатні індекси
  6. Загальні індекси світових фондових ринків
  7. Зведені індекси
  8. І загальних індексів. Агрегатні індекси
  9. Індекси
  10. Індекси з постійними i змінними вагами
  11. Індекси змінного і фіксованого складу.




Переглядів: 837

<== попередня сторінка | наступна сторінка ==>
ADD KURS INTEGER, | INSERT INTO EXCELLENT

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

 

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.004 сек.