Reklama
Wizyt
Dzisiaj: 46Wszystkich: 652846

Indeksy

Technikum » SBD » SQL » Indeksy


Indeksy są definiowane w celu zwiększenia prędkości wykonywania operacji na tabeli. Są to uporządkowane struktury zawierające dane z wybranych kolumn tabeli. Zaletą stosowania indeksów jest ograniczenie ilości danych odczytywanych z bazy, przyspieszenie wyszukiwania informacji oraz sortowanie danych. Ich wadą jest to, że zajmują na dysku dodatkowe miejsce, muszą być na bieżąco aktualizowane, a każde wstawienie, usunięcie lub aktualizacja danych w tabeli wiąże się z aktualizacją wszystkich zdefiniowanych dla niej indeksów.

Indeksy można budować na etapie tworzenia tabel lub definiować je w już istniejącej tabeli. Instrukcja tworzenia indeksu ma postać:

CREATE INDEX nazwa_indeksu ON nazwa_tabeli (nazwa_kolumny)

 

Przykład
Tworzenie indeksu w istniejącej tabeli:

CREATE INDEX Indeks_tytul ON Ksiazki (tytul);


Tworzenie unikatowego indeksu ma postać:

CREATE UNIQUE INDEX nazwa_indeksu ON nazwa_tabeli (nazwa_ kolumny)


W tak zaindeksowanej kolumnie powtarzające się wartości są niedozwolone.

Aktualizacja tabeli z indeksami zajmuje więcej czasu niż aktualizacja tabeli bez indeksów. Dlatego należy tworzyć indeksy tylko dla kolumn, które będą często przeszukiwane. Przed utworzeniem indeksów warto przeanalizować zapytania i podjąć decyzję, gdzie i jakie indeksy utworzyć. Na pewno indeksy powinny być utworzone dla pól kluczy głównych i kluczy obcych.


Do usuwania indeksu służy instrukcja DROP INDEX:

DROP INDEX nazwa_tabeli.nazwa_indeksu

 

 

Reklama