Typ danych PostgreSQL UUID

Typ danych PostgreSQL UUID

UUID oznacza uniwersalny unikalny identyfikator, który jest zdefiniowany przez RFC 4122. Wartość UUID jest obliczana przez algorytm, a wartość ma długość 128-bitową. UUID generuje unikalną wartość lepszą niż dane szeregowe, które generują wartości osobliwe. PostgreSQL nie ma żadnej funkcji do utworzenia wartości UUID. Zależy to od wymienionego modułu stron trzecich UUID-OSP który uzyskuje dostęp do niezbędnych funkcji w celu utworzenia wartości UUID. Sposób na zainstalowanie UUID-OSP Moduł i zastosowania typu danych UUID w bazie danych PostgreSQL zostały pokazane w tym samouczku.

Wymagania wstępne:

Musisz zainstalować najnowszą wersję pakietów PostgreSQL w systemie operacyjnym Linux przed wykonaniem instrukcji SQL pokazanych w tym samouczku. Uruchom następujące polecenia, aby zainstalować i uruchom PostgreSQL:

$ sudo apt-get -y instalacja Postgresql PostgreSQL-Contib
$ sudo systemctl start postgresql.praca

Uruchom następujące polecenie, aby zalogować się do PostgreSQL za zgodą root:

$ sudo -u postgres psql

Zainstaluj moduł UUID-OSSP:

Jeśli UUID-OSP Moduł nie jest wcześniej instalowany w PostgreSQL, a następnie uruchom następujące polecenie, aby zainstalować moduł. Tutaj użyto klauzuli „jeśli nie istnieje”, aby zapobiec ponownej instalacji modułu, jeśli jest już zainstalowana.

# Utwórz rozszerzenie, jeśli nie istnieje „UUID-OSPSP”;

Po zainstalowaniu UUID-OSP Moduł pomyślnie uruchom następujące polecenie Wybierz, aby wygenerować UUID na podstawie adresu MAC komputera, wartości znacznika czasu i wartości losowej. Tutaj uuid_geneate_v1 () Funkcja została użyta do generowania unikalnej wartości.

# Wybierz uuid_generate_v1 ();

Po wykonaniu powyższego zapytania pojawi się następujące dane wyjściowe:

Uruchom następujące polecenie Wybierz, aby wygenerować UUID na podstawie wartości losowej. Tutaj uuid_geneate_v4 () Funkcja została użyta do generowania unikalnej wartości.

# Wybierz uuid_generate_v4 ();

Po wykonaniu powyższego zapytania pojawi się następujące dane wyjściowe:

Użycie UUID w PostgreSQL:

Przed utworzeniem dowolnej tabeli z boolowskim typem danych musisz utworzyć bazę danych PostgreSQL. Uruchom więc następujące polecenie, aby utworzyć bazę danych o nazwie 'testdb::

# Utwórz bazę danych testDB;

Po utworzeniu bazy danych pojawi się następujące dane wyjściowe:

Utwórz tabelę za pomocą typu danych UUID:

Identyfikator faktury jest zawsze wyjątkowy dla każdego dokumentu faktury. Typ danych UUID to lepsza opcja utworzenia unikalnego identyfikatora. Utwórz tabelę o nazwie 'Faktura„W bieżącej bazie danych z czterema polami. Pierwsza nazwa pola to FILOICE_ID który jest kluczowym kluczem tabeli. Rodzaj danych tego pola to Uuid. Jeśli nie podano żadnej wartości dla FILOICE_ID pole W momencie wstawienia danych, wówczas wartość domyślna zostanie wygenerowana za pomocą funkcji UUID_Geneate_V4 (). Druga nazwa pola to Order_Date, a typ danych tego pola to DATA które zostaną wykorzystane do przechowywania daty zamówienia. Trzecie nazwa pola to Identyfikator klienta a typ danych tego pola to Char (6) do przechowywania wartości ciągu 4 znaków. Czwarte pole jest Order_amount a typ danych tego pola to Int Aby przechowywać kwotę zamówienia.

# Utwórz fakturę tabeli (
Invoice_ID UUID Domyślnie UUID_Generate_V4 (),
Order_Date Data nie null,
Customer_id char (6) nie null,
Order_amount int not null,
Klucz podstawowy (infoice_id));

Następujące dane wyjściowe pojawią się, jeśli tabela zostanie utworzona pomyślnie:

Uruchom następujące zapytanie wstaw, aby wstawić cztery rekordy do Faktura tabela. Wartości dla FILOICE_ID pole nie podano w następującym zapytaniu. Więc uuid_geneate_v4 () funkcja wygeneruje wartości dla FILOICE_ID pole.

# Wstaw do faktury (Order_Date, Customer_id, Order_Amount)
Wartości („10 maja 2022”, „893456”, 70000),
(„12 maja 2022”, „885634”, 65000),
(„17 maja 2022”, „985632”, 30000),
(„21 maja 2022”, „891256”, 23000);

Następujące dane wyjściowe pojawią się po wykonaniu powyższego zapytania. Wyjście pokazuje, że cztery rekordy zostały poprawnie włożone do Faktura tabela:

Uruchom następujące zapytanie Wybierz, aby przeczytać wszystkie rekordy z Faktura tabela:

# Wybierz * z faktury;

Następujące dane wyjściowe pojawią się po wykonaniu powyższego zapytania. Wyjście pokazuje cztery unikalne identyfikatory wygenerowane dla FILOICE_ID pole:

Uruchom następujące WYBIERAĆ zapytanie, które przeczyta te rekordy z Stół faktury gdzie wartość Data zamówienia pole jest mniejsze niż „2022-05-15”:

# Wybierz * z faktury, gdzie Order_Date < '2022-05-15';

Następujące dane wyjściowe pojawią się po wykonaniu powyższego zapytania. Tabela zawiera dwa rekordy, w których wartość Data zamówienia jest mniej niż „2022-05-15”.

Uruchom następujące WYBIERAĆ zapytanie, które przeczyta te rekordy z tabeli faktury, w której wartość Data zamówienia Pole znajduje się między „2022-05-15” a „2022-05-20”.

# Wybierz * z faktury, gdzie Order_Date między „2022-05-15” i „2022-05-20”;

Następujące dane wyjściowe pojawią się po wykonaniu powyższego zapytania. Tabela zawiera jeden rekord, który pasuje do stanu.

Uruchom następujące WYBIERAĆ zapytanie, które przeczyta te rekordy z tabeli faktury, w której wartość Order_amount jest większy niż 50000.

# Wybierz * z faktury, gdzie Order_Amount> 50000;

Następujące dane wyjściowe pojawią się po wykonaniu powyższego zapytania. W tabeli istnieją dwa rekordy, w której wartość Order_amount jest większy niż 50000.

Uruchom następujące WYBIERAĆ zapytanie, które przeczyta te rekordy z tabeli faktury, w której wartość Order_amount jest większy niż 50000 i mniej niż 70000.

# Wybierz * z faktury tam, gdzie Order_Amount> 50000 i Order_Amount < 70000;

Następujące dane wyjściowe pojawią się po wykonaniu powyższego zapytania. Tabela zawiera jeden rekord, który pasuje do stanu.

Wniosek:

Sposób na użycie Typ danych UUID oraz użycie tego typu danych do generowania unikalnego identyfikatora w PostgreSQL W tym samouczku pokazano tabele. Cel użycia Typ danych UUID zostanie wyczyszczone po prawidłowym przeczytaniu tego samouczka.