A PostgreSQL UUID-t vagy egyetemes egyedi azonosítót az RFC 4122 határozza meg, és 128 bites hosszúságú. Belső algoritmusokat használnak az UUID összeállításához, és mindegyik érték különálló. A PostgreSQL saját UUID adattípussal rendelkezik, és modulokkal generálja azokat. Az UUID adattípust általában elosztják az elosztott adatbázisokban, mivel ez az adattípus biztosítja a szingularitást, nem pedig a SERIAL típust, amely csak egyetlen adatbázison belül generál egyedi értékeket. Míg a PostgreSQL lehetővé teszi az UUID-értékek mentését és szembeállítását, ez az alapvető nem rendelkezik módszerekkel azok létrehozására. Inkább olyan külső csomagokra támaszkodik, amelyek specifikus UUID-generáló algoritmusokkal rendelkeznek.
Vessünk egy pillantást az UUID-értékek bizonyos ábrázolásaira, amint az az alábbi ábrán látható. Az UUID 32 bit hexadecimális számjegyből áll, legfeljebb négy kötőjellel, amint az az alábbi ábrán látható. Az UUID értéke 0 is lehet, ami azt jelenti, hogy minden bit üres.
Hozzon létre UIID-t a PostgreSQL pgAdmin 4 GUI-ban
Nyissa meg a PostgreSQL 'pgAdmin 4' grafikus felhasználói felületét. Ezután kösse össze a "postgres" felhasználót a "PostgreSQL 13" szerverrel, megadva a felhasználónév jelszavát. A használat megkezdéséhez nyomja meg az „OK” gombot.
Az „uuid-ossp” csomag a CREATE EXTENSION utasítás segítségével kerül telepítésre a „teszt” adatbázisba. Ha megfelelően követi az alábbi utasításokat, akkor az alábbi képen megjelenő „CREATE EXTENSION” üzenetet kapja. A következő parancsban az „IF NOT EXISTS” feltétel törlődik, amely lehetővé teszi számunkra, hogy leállítsuk a csomag újratelepítését.
>> LÉTREHOZZA A BŐVÍTÉST, HA NEM LÉTEZIK „uuid-ossp”;
A 'Bővítmények' opcióban láthatja az újonnan telepített „uuid-ossp” csomagot.
Az alábbiakban felsoroljuk a „teszt” adatbázisban az uuid-ossp telepített csomaggal kapcsolatos funkciókat:
Az „uuid_generate_v1 ()” metódus használható UUID-értékek és a jelenlegi időbélyegtől függően a MAC-címgyűjtemény előállítására, amely szintén tetszőleges érték. Amikor a következő utasítás fut a lekérdező eszköz területén, megkapjuk a következő kimenetet. Ez megmutatja az „uuid_generate_v1 ()” módszer által létrehozott UUID értéket, ahogyan az az alábbi pillanatképben látható.
>> SELECT uuid_generate_v1 ();
Hozzon létre UIID-t a PostgreSQL pgAdmin 4 GUI-ban
Nyissa meg a PostgreSQL parancssori héját, és kapcsolja össze a localhost szerverrel vagy bármely más szerverrel, amelyhez csatlakozni szeretne, nevének megadásával és az Enter megnyomásával. Az adatbázist úgy módosíthatja, hogy beírja a nevét az 'Adatbázis' sorba. Mint láthatja, a „teszt” adatbázist használjuk. A váltáshoz megváltoztathatja a portszámot és a felhasználónevet is. Ezt követően a rendszer megkérdezi a kiválasztott felhasználó jelszavát. A jelszó megadásával jó lesz menni. Ha nem akar itt változtatni, akkor hagyja üresen a szóközöket.
Az „uuid-ossp” csomag a CREATE EXTENSION lekérdezéssel csatlakoztatható. Írja be a következő parancsot a PostgreSQL parancsértelmezőjébe, és megszerezheti a következő „CREATE EXTENSION” üzenetet. Elvetettük az „HA NINCS LÉTEZIK” záradékot is, amely lehetővé teszi számunkra a csomag újratelepítésének leállítását.
>> LÉTREHOZZA A BŐVÍTÉST, HA NEM LÉTEZIK „uuid-ossp”;
Az „uuid_generate_v1 ()” függvény segítségével felépítik az UUID értékeket, amelyek függenek az aktuális időbélyegtől, MAC címcsoporttól és egy véletlenszerű értéktől. A következő lekérdezés végrehajtásával a lekérdezési térben megkapja a következő kimenetet, amely megmutatja az „uuid_generate_v1 ()” módszerrel létrehozott UUID értéket.
>> SELECT uuid_generate_v1 ();
Az „uuid_generate_v4 ()” módszerrel kizárólag véletlenszerű számokkal létrehozott UUID-értéket lehet létrehozni, az alábbiak szerint. Ez az alábbihoz hasonló kimenetet eredményez.
>> SELECT uuid_generate_v4 ();
Példa a PostgreSQL UUID adattípusra
Ez a példa bemutatja, hogyan működik a PostgreSQL UIID adattípus. A CREATE paranccsal külön „Client” táblát, valamint UUID mezőket állíthatunk össze. Az ügyfél azonosítója, az ügyfél keresztneve, az ügyfél vezetékneve, az ügyfél e-mail azonosítója és az ügyfél címe csak néhány oszlop az "Ügyfél" táblázatban. UUID adattípusként az „Client_id” -t használtuk, amely egyben az elsődleges kulcs. Az „uuid_generate_v4 ()” módszer dinamikusan előállítja az elsődleges alapvető oszlopértékeket is. Próbálkozzon a következő CREATE TABLE paranccsal a lekérdező eszköz területén, és hozzon létre egy „Client” táblázatot egy „teszt” adatbázisban, ahol az uuid-ossp modul telepítve. Meg fogja kapni a „CREATE TABLE” üzenetet, ami azt jelenti, hogy a táblázat megfelelően lett létrehozva.
Ha új sort ad hozzá az „Client_id mező” érték megadása nélkül, a PostgreSQL az „uuid_generate_v4 ()” módszerrel előállíthatja az „Client_id” értéket. Az INSERT utasítással több értéket fogunk beletenni. Az alábbi utasítás végrehajtása után a következő válaszképernyő jelenik meg, amely azt jelzi, hogy a megadott értékeket ténylegesen beépítették az „Ügyfél” táblába.
Most lekérdezzük az 'Ügyfél' táblázat összes rekordját a lekérdező szerkesztő eszköz SELECT lekérdezésével. Az alábbi kimenetet az alábbi utasítás végrehajtása után kapja meg, amely az összes vagy a legtöbb információt megjeleníti az Ügyfél táblázatban. Az „Client_id” mezőt az „uuid_generate_v4 ()” módszer által generált UUID értékek foglalják el, amint az az alábbi képen látható.
>> SELECT * FROM kliens;
Következtetés
Ez a cikk a PostgreSQL UUID adattípus részének főbb pontjaival foglalkozott a PostgreSQL pgAdmin 4 grafikus felhasználói felület és a parancssori shell használatával, beleértve a következőket:
- Az oszlop eredő UUID-értékei a PostgreSQL UUID adattípusban vannak tárolva.
- Az UUID-értékek összeállításához a CREATE Extension lekérdezést kell használni az uuid-ossp csomag segédprogram beviteléhez.
- Szüksége lehet az „uuid_generate_v4 ()” szolgáltatásra, hogy dinamikusan kivonja az UUID eredményeket a táblázat specifikus oszlopaiból.
Remélhetőleg nem fog problémába ütközni, amikor a PostgreSQL UUID típusain és funkcióin dolgozik.