SQL enum

SQL enum

MySQL obsługuje typ enum. One jest unikalnym obiektem ciągów, w którym wartość jest wybierana z listy wstępnie zdefiniowanych wartości.

Jeśli kiedykolwiek używałeś HTML, pomyśl o nich jak o przyciskach radiowych z zestawem wartości i możesz wybrać tylko jedną wartość.

Składnia

MySQL pozwala nam utworzyć kolumnę enum za pomocą składni pokazanej poniżej:

Utwórz Tabela Table_name (
col enum („value_1”, „value_2”, „value_3”,…),
);

Typ enum bierze trzy atrybuty:

  1. DOMYŚLNY - Ustawia wartość domyślną, jeśli użytkownik nie wybierze żadnej wartości z listy dostarczonych opcji.
  2. ZERO - Ustawia wartość domyślną na null.
  3. Nie jest zerem - zapobiega zawieraniu wartości nie-null, zmuszając użytkownika do wybrania wartości lub użycia dowolnej wartości domyślnej.

Przykład

Klasycznym przykładem typu enum jest przechowywanie rozmiaru ubrań. Pokażmy, jak używać typu enum, tworząc tabelę, która przechowuje informacje o ubraniach.

Przykładem jest jak pokazano:

Utwórz koszule stołowe (
tekst nazwy,
Rozmiar enum („X-Small”, „mały”, „medium”, „duży”, „x-large”)
);

Powyższe zapytanie tworzy stół o nazwie koszule, które przechowują nazwę koszuli i rozmiar typu enum. Ponadto enum zawiera możliwe rozmiary koszuli.

NOTATKA: Chociaż PostgreSQL obsługuje typ enum, wymaga zdefiniowania wartości enum jako określonego typu.

Przykładem jest jak pokazano:

Utwórz rozmiar typu jako enum („X-Small”, „Small”, „Medium”, „Large”, „X-Large”);

Po ogłoszeniu tabeli za pomocą typu enum możesz wstawić rekordy, jak pokazano:

Włóż do koszul (nazwa, rozmiar) wartości („Polo Shirt”, „Medium”), („T-shirt”, „X-Small”);

Po włożeniu możesz wybrać określone wiersze za pomocą klauzuli Where, jak pokazano:

Wybierz nazwę, rozmiar z koszul, gdzie size = „x-Small”;

Indeks enum

Każda wartość w kolumnie enum przypisuje się indeks rozpoczynający się od indeksu 1. Możesz użyć tego indeksu, aby wybrać, usunąć lub aktualizować określony rekord.

Na przykład, aby wybrać rekord, w którym wartość enum jest X-Small przy użyciu jego indeksu, możemy zrobić:

Wybierz * z koszul, gdzie rozmiar = 1;

NOTATKA: Możesz także użyć typu enum do sortowania wierszy.

Finał

Ten artykuł zawiera praktyczne wykorzystanie typu enum w SQL. Sprawdź dokumentację, aby zbadać więcej.

https: // dev.Mysql.com/doc/refman/8.0/en/enum.html

https: // www.PostgreSQL.Org/Docs/Current/DataType-Enum.html