Oracle Utwórz indeks

Oracle Utwórz indeks

W bazach danych Oracle indeks odnosi się do struktury danych, która rozwija szybkość operacji pobierania danych w tabeli bazy danych. Może to jednak odbyć karę dodatkowych operacji zapisu i miejsca do przechowywania w Twojej bazie danych.

Jednym z przykładów, w którym przydałby się indeks bazy danych, jest system zarządzania relacjami z klientem.

W takim systemie możemy mieć tabelę bazy danych, która przechowuje informacje o klientach. Może to obejmować nazwę, adres, metody płatności, dane kontaktowe itp.

Jeśli tabela zawiera wiele rekordów, być może miliony z nich, przeszukanie konkretnych informacji o klientach może zająć dużo czasu i zasobów. Jest to zjawisko negatywne, szczególnie w bazach danych, w których wydajność jest krytyczna.

Aby to obejść, możemy użyć indeksu bazy danych.

Na przykład możemy utworzyć indeks w kolumnie nazwy klienta, który umożliwiłby systemowi bazy danych szybkie znalezienie i pobieranie konkretnych informacji klienta za pomocą nazwy. Dlatego zamiast silnika bazy danych przechodzących wszystkie wiersze i kolumny w tabeli, używa tylko indeksu do wyszukiwania informacji o kliencie.

W tym samouczku dowiesz się, jak korzystać z polecenia Utwórz indeks w bazie danych Oracle, aby zainicjować nowy indeks.

Oracle Utwórz instrukcję indeksu

Poniżej pokazuje składnię instrukcji Utwórz indeks w bazach danych Oracle:

Utwórz nazwę indeksu indeksu
Na Table_name (kolumna 1, kolumna2,…);

Powyższa składnia tworzy indeks o nazwie Index_name w tabeli o nazwie nazwy_namalnej za pomocą określonych kolumn (kolumna 1, kolumna2 itp.) jako klucz do indeksu.

W Oracle klucz podstawowy to kolumna lub zestaw kolumn, które jednoznacznie identyfikuje każdy wiersz w tabeli. Domyślnie Oracle automatycznie tworzy unikalny indeks w kolumnach kluczowych kluczowych tabeli, aby egzekwować ograniczenie wyjątkowości i poprawić wydajność wyszukiwania kluczy podstawowych.

Jednak w niektórych przypadkach może być konieczne utworzenie nowego indeksu dla określonej tabeli ręcznie.

Przyjrzyjmy się przykładom tego, jak możemy to osiągnąć.

Oracle Utwórz przykład indeksu

Załóżmy, że mamy tabelę zawierającą informacje o pracownikach, jak pokazano na poniższym wyniku:

Wybierz nazwę First_name, Last_name, wynagrodzenie, Hire_Date od pracowników;

Oracle Utwórz indeks dla pojedynczej kolumny

Załóżmy, że chcemy utworzyć indeks za pomocą kolumny pierwszej nazwy_. Możemy uruchomić zapytanie, jak pokazano:

Utwórz indeks First_name_Lookup na pracownikach (First_name);

Ta instrukcja Utwórz indeks tworzy indeks o nazwie First_name_Lookup w tabeli pracowników, używając kolumny First_name jako klucza dla indeksu. Ten indeks można wykorzystać do poprawy wydajności zapytań, które szukają pracowników według ich imienia.

Po utworzeniu indeksu możemy go użyć do wyszukiwania konkretnego pracownika, jak pokazano:

Wybierz nazwę pierwszej nazwy, Last_name, wynagrodzenie, Hire_Date
Od pracowników
Gdzie First_name = „William”;

Wynik:

Bez indeksu First_name_Lookup system bazy danych musiałby zeskanować całą tabelę pracowników, aby znaleźć wszystkie wiersze, w których kolumna pierwszej nazwy jest równa „Williamowi.„Jednak z indeksem system bazy danych może szybko wyszukać wiersze w indeksie za pomocą wartości„ John ”jako klucza, a następnie pobrać żądane wiersze z tabeli, które będą znacznie szybsze.

Możesz wyświetlić kroki użyte podczas tworzenia zapytania za pomocą polecenia Plan Wyjaśnij, jak pokazano:

Wyjaśnij plan wyboru pierwszej nazwy_nazwy, pensji, hire_date
Od pracowników
Gdzie First_name = „William”;

Wynikowy plan zapytania:

Przykład 2 - Oracle Utwórz indeks z wieloma kolumnami

Podobnie możemy utworzyć indeks składający się z więcej niż jednej kolumny w danej tabeli. Załóżmy na przykład, że chcemy utworzyć indeks składający się z kolumny First_name i Last_name.

Możemy użyć kodu, jak pokazano:

Utwórz indeks multi_Lookup na pracownikach (nazwa pierwszej_namii, nazwa_nast_);

Ta instrukcja Utwórz indeks tworzy indeks o nazwie Multi_Lookup w tabeli pracowników, używając kolumn First_name i Last_name jako klucz dla indeksu.

Po utworzeniu możemy użyć tego indeksu, jak pokazano w zapytaniu, jak pokazano:

Wybierz nazwę pierwszej nazwy, Last_name, wynagrodzenie, Hire_Date
Od pracowników
Gdzie First_name = „William” i Last_name = „Smith”;

Wynikowa wartość:

I tam masz metodę przyspieszenia zapytań bazy danych za pomocą indeksów do ograniczenia zakresu wyszukiwania.

Wniosek

Instrukcja Utwórz indeks w Oracle pozwala nam utworzyć indeks w tabeli w celu poprawy wydajności operacji pobierania danych. Chociaż indeksy mogą poprawić wydajność zapytań, ponoszą one również kary przestrzeni magazynowej, co prowadzi do zmniejszenia operacji prędkości zapisu, użyj ich tylko w razie potrzeby.