HSQLDB - indeksy
ZA database indexto struktura danych, która poprawia szybkość operacji w tabeli. Indeksy można tworzyć przy użyciu jednej lub więcej kolumn, co stanowi podstawę zarówno do szybkiego losowego wyszukiwania, jak i efektywnego uporządkowania dostępu do rekordów.
Tworząc indeks, należy się zastanowić, jakie kolumny będą używane do tworzenia zapytań SQL i utworzyć jeden lub więcej indeksów na tych kolumnach.
Praktycznie indeksy są również rodzajem tabel, które przechowują klucz podstawowy lub pole indeksu i wskaźnik do każdego rekordu w rzeczywistej tabeli.
Użytkownicy nie widzą indeksów. Służą one tylko do przyspieszenia zapytań i będą używane przez wyszukiwarkę bazy danych do szybkiego lokalizowania rekordów.
Instrukcje INSERT i UPDATE zajmują więcej czasu w tabelach z indeksami, podczas gdy instrukcje SELECT działają szybciej w tych tabelach. Powodem jest to, że podczas wstawiania lub aktualizacji baza danych musi również wstawiać lub aktualizować wartości indeksu.
Prosty i unikalny indeks
Możesz utworzyć unikalny indeks w tabeli. ZAunique indexoznacza, że dwa wiersze nie mogą mieć tej samej wartości indeksu. Poniżej znajduje się składnia tworzenia indeksu w tabeli.
CREATE UNIQUE INDEX index_name
ON table_name (column1, column2,...);
Do utworzenia indeksu można użyć jednej lub kilku kolumn. Na przykład utwórz indeks na tutorials_tbl za pomocą tutorial_author.
CREATE UNIQUE INDEX AUTHOR_INDEX
ON tutorials_tbl (tutorial_author)
Możesz utworzyć prosty indeks w tabeli. Po prostu pomiń słowo kluczowe UNIQUE w zapytaniu, aby utworzyć prosty indeks. ZAsimple index zezwala na zduplikowane wartości w tabeli.
Jeśli chcesz indeksować wartości w kolumnie w porządku malejącym, możesz dodać zarezerwowane słowo DESC po nazwie kolumny.
CREATE UNIQUE INDEX AUTHOR_INDEX
ON tutorials_tbl (tutorial_author DESC)
ALTER Polecenie, aby dodać i upuścić INDEKS
Istnieją cztery typy instrukcji dodawania indeksów do tabeli -
ALTER TABLE tbl_name ADD PRIMARY KEY (column_list) - Ta instrukcja dodaje KLUCZ PODSTAWOWY, co oznacza, że indeksowane wartości muszą być unikalne i nie mogą mieć wartości NULL.
ALTER TABLE tbl_name ADD UNIQUE index_name (column_list) - Ta instrukcja tworzy indeks, dla którego wartości muszą być unikalne (z wyjątkiem wartości NULL, które mogą wystąpić wielokrotnie).
ALTER TABLE tbl_name ADD INDEX index_name (column_list) - To dodaje zwykły indeks, w którym dowolna wartość może pojawić się więcej niż raz.
ALTER TABLE tbl_name ADD FULLTEXT index_name (column_list) - Tworzy specjalny indeks FULLTEXT, który jest używany do wyszukiwania tekstu.
Poniżej znajduje się zapytanie o dodanie indeksu do istniejącej tabeli.
ALTER TABLE testalter_tbl ADD INDEX (c);
Możesz usunąć dowolny INDEX, używając klauzuli DROP wraz z poleceniem ALTER. Poniżej znajduje się zapytanie o usunięcie utworzonego powyżej indeksu.
ALTER TABLE testalter_tbl DROP INDEX (c);
Wyświetlanie informacji INDEKSU
Możesz użyć polecenia SHOW INDEX, aby wyświetlić listę wszystkich indeksów skojarzonych z tabelą. Wyjście w formacie pionowym (określone przez \ G) jest często przydatne w przypadku tej instrukcji, aby uniknąć zawijania długich linii.
Poniżej znajduje się ogólna składnia służąca do wyświetlania informacji o indeksie tabeli.
SHOW INDEX FROM table_name\G