PostgreSQL

Typy i funkcje UUID PostgreSQL

Typy i funkcje UUID PostgreSQL

UUID PostgreSQL lub uniwersalny unikalny identyfikator jest określony w RFC 4122 i ma długość 128 bitów. Do konstruowania UUID wykorzystywane są algorytmy wewnętrzne, a każda wartość jest odrębna. PostgreSQL ma własny typ danych UUID i generuje je za pomocą modułów. Typ danych UUID jest często odrzucany w rozproszonych bazach danych, ponieważ ten typ danych zapewnia osobliwość, a nie typ SERIAL, który generuje wartości osobliwe tylko w jednej bazie danych. Chociaż PostgreSQL pozwala na zapisywanie i kontrastowanie wartości UUID, ten nie ma metod ich tworzenia w swoim rdzeniu. Raczej opiera się na pakietach innych firm, które mają określone algorytmy generowania UUID.

Przyjrzyjmy się teraz pewnym reprezentacjom wartości UUID, jak widać na poniższym diagramie. UUID składa się z 32 bitów cyfr szesnastkowych z maksymalnie czterema myślnikami, jak pokazano na poniższym schemacie. UUID może mieć również wartość 0, co oznacza, że ​​wszystkie bity są puste.

Utwórz UIID w GUI PostgreSQL pgAdmin 4

Otwórz graficzny interfejs użytkownika PostgreSQL „pgAdmin 4”. Następnie połącz użytkownika 'postgres' z serwerem 'PostgreSQL 13' podając hasło dla nazwy użytkownika. Naciśnij przycisk „OK”, aby zacząć z niego korzystać.

Pakiet „uuid-ossp” zostanie zainstalowany w bazie danych „test” za pomocą instrukcji CREATE EXTENSION. Jeśli postępujesz zgodnie z instrukcjami podanymi poniżej, otrzymasz komunikat „UTWÓRZ ROZSZERZENIE”, jak pokazano na poniższym obrazku. W poniższym poleceniu warunek „JEŻELI NIE ISTNIEJE” jest odrzucany, co pozwala nam zatrzymać ponowną instalację pakietu.

>> UTWÓRZ ROZSZERZENIE, JEŚLI NIE ISTNIEJE „uuid-ossp”;

W opcji „Rozszerzenia” możesz zobaczyć nowo zainstalowany pakiet „uuid-ossp”.

Poniżej znajduje się lista funkcji związanych z zainstalowanym pakietem uuid-ossp w bazie danych 'test':

Metoda „uuid_generate_v1()” może zostać użyta do wygenerowania wartości UUID oraz, w zależności od aktualnego znacznika czasu, zbioru adresów MAC, który również jest wartością arbitralną. Gdy następująca instrukcja zostanie uruchomiona w obszarze narzędzia zapytania, uzyskamy kolejne dane wyjściowe. Spowoduje to wyświetlenie wartości UUID wygenerowanej przez metodę „uuid_generate_v1()”, jak pokazano na poniższym zrzucie.

>> WYBIERZ uuid_generate_v1();

Utwórz UIID w GUI PostgreSQL pgAdmin 4

Otwórz powłokę wiersza poleceń PostgreSQL i połącz ją z serwerem localhost lub dowolnym innym serwerem, z którym chcesz się połączyć, podając jego nazwę i naciskając Enter. Możesz zmienić bazę danych, wpisując jej nazwę w wierszu „Baza danych”. Jak widać, korzystamy z bazy „testowej”. Możesz także zmienić numer portu i nazwę użytkownika, aby się przełączyć. Następnie zostaniesz poproszony o podanie hasła dla wybranego użytkownika. Po podaniu hasła będziesz gotowy do pracy. Jeśli nie chcesz wprowadzać tutaj żadnych zmian, pozostaw puste miejsca.

Pakiet „uuid-ossp” można zamontować za pomocą zapytania CREATE EXTENSION. Napisz następujące polecenie w powłoce poleceń PostgreSQL, a otrzymasz kolejną wiadomość „CREATE EXTENSION”. Odrzuciliśmy również klauzulę „IF NOT EXISTS”, która pozwala nam zatrzymać ponowną instalację pakietu.

>> UTWÓRZ ROZSZERZENIE, JEŚLI NIE ISTNIEJE „uuid-ossp”;

Funkcja „uuid_generate_v1()” zostanie użyta do zbudowania wartości UUID zależnych od bieżącego znacznika czasu, grupy adresów MAC i wartości przypadkowej. Wykonując następujące zapytanie w przestrzeni zapytań, uzyskasz kolejny wynik, który pokazuje wartość UUID utworzoną za pomocą metody „uuid_generate_v1()”.

>> WYBIERZ uuid_generate_v1();

Metoda „uuid_generate_v4()” może być użyta do utworzenia wartości UUID ustalonej wyłącznie za pomocą liczb przypadkowych, jak pokazano poniżej. Da to wynik podobny do następującego.

>> WYBIERZ uuid_generate_v4();

Przykład typu danych UUID PostgreSQL

Ten przykład pokazuje, jak działa typ danych PostgreSQL UIID. Użyjemy polecenia CREATE, aby skonstruować osobną tabelę „Klient”, a także pola UUID. Identyfikator klienta, imię klienta, nazwisko klienta, identyfikator e-mail klienta i adres klienta to tylko kilka kolumn w tabeli „Klient”. Używamy „Client_id” jako typu danych UUID, który jest również kluczem podstawowym. Metoda „uuid_generate_v4()” również dynamicznie wygeneruje wartości podstawowych kolumn podstawowych. Wypróbuj następujące polecenie CREATE TABLE w obszarze narzędzia zapytania, aby utworzyć tabelę „Klient” w „testowej” bazie danych, w której jest zainstalowany moduł uuid-ossp. Otrzymasz komunikat „CREATE TABLE”, co oznacza, że ​​tabela została utworzona poprawnie.

Po dodaniu nowej linii bez określenia wartości pola „Client_id”, PostgreSQL może użyć metody „uuid_generate_v4()”, aby utworzyć wartość „Client_id”. Za pomocą instrukcji INSERT wstawimy do niej kilka wartości. Po wykonaniu poniższej instrukcji pojawi się następujący ekran odpowiedzi, który wskazuje, że podane wartości zostały skutecznie włączone do tabeli „Klient”.

Teraz pobierzemy wszystkie rekordy tabeli „Klient” za pomocą zapytania SELECT w narzędziu edytora zapytań. Po wykonaniu poniższej instrukcji otrzymasz następujące dane wyjściowe, które pokażą wszystkie lub większość informacji w tabeli Klient Client. Pole „Client_id” będzie zajęte przez wartości UUID wygenerowane przez metodę „uuid_generate_v4()”, jak widać na poniższym obrazku.

>> WYBIERZ * Z Klienta;

Wniosek

W tym artykule omówiono główne punkty w części dotyczącej typu danych PostgreSQL UUID przy użyciu graficznego interfejsu użytkownika PostgreSQL pgAdmin 4 i powłoki wiersza poleceń, w tym:

Mamy nadzieję, że nie napotkasz żadnych problemów podczas pracy nad typami i funkcjami UUID w PostgreSQL.

Gry Battle for Wesnoth Tutorial
Battle for Wesnoth Tutorial
The Battle for Wesnoth is one of the most popular open source strategy games that you can play at this time. Not only has this game been in developmen...
Gry 0 A.D. Tutorial
0 A.D. Tutorial
Out of the many strategy games out there, 0 A.D. manages to stand out as a comprehensive title and a very deep, tactical game despite being open sourc...
Gry Unity3D Tutorial
Unity3D Tutorial
Introduction to Unity 3D Unity 3D is a powerful game development engine. It is cross platform that is it allows you to create games for mobile, web, d...