„PostgreSQL“

„PostgreSQL“ UUID tipai ir funkcijos

„PostgreSQL“ UUID tipai ir funkcijos

„PostgreSQL UUID“ arba universalų unikalų identifikatorių nurodo RFC 4122 ir jo ilgis yra 128 bitai. Vidiniai algoritmai naudojami kuriant UUID, ir kiekviena vertė yra skirtinga. „PostgreSQL“ turi savo UUID duomenų tipą ir generuoja juos moduliais. UUID duomenų tipas paprastai atmetamas paskirstytose duomenų bazėse, nes šis duomenų tipas užtikrina singuliarumą, o ne SERIAL tipą, kuris generuoja tik vienaskaitos reikšmes vienoje duomenų bazėje. Nors „PostgreSQL“ leidžia jums išsaugoti ir kontrastuoti UUID reikšmes, šis iš esmės neturi metodų, kaip jas kurti. Veikiau jis remiasi trečiųjų šalių paketais, turinčiais specifinius UUID generavimo algoritmus.

Pažvelkime į tam tikrus UUID reikšmių vaizdus, ​​kaip parodyta toliau pateiktoje diagramoje. UUID sudaro 32 bitai šešioliktainių skaitmenų su keturiais brūkšneliais, kaip parodyta toliau pateiktoje diagramoje. UUID vertė taip pat gali būti 0, o tai reiškia, kad visi bitai yra tušti.

Sukurkite UIID „PostgreSQL pgAdmin 4“ GUI

Atidarykite „PostgreSQL“ pgAdmin 4 “grafinę vartotojo sąsają. Tada prijunkite vartotoją „postgres“ su serveriu „PostgreSQL 13“ pateikdami vartotojo vardo slaptažodį. Paspauskite mygtuką „Gerai“, kad pradėtumėte jį naudoti.

„Uuid-ossp“ paketas bus įdiegtas „testo“ duomenų bazėje naudojant CREATE EXTENSION instrukciją. Jei tinkamai vykdysite toliau pateiktas instrukcijas, gausite pranešimą „KURTI IŠPLĖTIMĄ“, kaip parodyta toliau pateiktame paveikslėlyje. Šioje komandoje panaikinama sąlyga „JEI NĖRA“, kuri leidžia mums sustabdyti pakartotinį paketo diegimą.

>> KURTI IŠPLĖTIMĄ, JEI NEBUVA „uuid-ossp“;

Parinktyje „Plėtiniai“ galite pamatyti naujai įdiegtą „uuid-ossp“ paketą.

Toliau pateikiamas funkcijų, susijusių su „uuid-ossp“ įdiegtu paketu, „testo“ duomenų bazėje, sąrašas:

Metodą „uuid_generate_v1 ()“ galima naudoti norint sukurti UUID reikšmes ir, atsižvelgiant į esamą laiko žymę, MAC adresų rinkinį, kuris taip pat yra savavališkas dydis. Kai užklausos įrankio srityje bus vykdoma ši instrukcija, gausime tolesnę išvestį. Tai parodys metodo „uuid_generate_v1 ()“ sugeneruotą UUID reikšmę, kaip parodyta toliau pateiktoje momentinėje nuotraukoje.

>> PASIRINKITE uuid_generate_v1 ();

Sukurkite UIID „PostgreSQL pgAdmin 4“ GUI

Atidarykite „PostgreSQL“ komandinės eilutės apvalkalą ir prijunkite jį prie „localhost“ serverio ar bet kurio kito serverio, prie kurio norite prisijungti, nurodydami jo pavadinimą ir paspausdami „Enter“. Duomenų bazę galite pakeisti įrašydami jos pavadinimą eilutėje „Duomenų bazė“. Kaip matote, mes naudojame „testo“ duomenų bazę. Taip pat galite pakeisti savo prievado numerį ir vartotojo vardą, kad perjungtumėte. Po to jūsų paprašys pasirinkto vartotojo slaptažodžio. Pateikę slaptažodį būsite gerai. Jei nenorite čia atlikti jokių pakeitimų, palikite tuščias vietas.

„Uuid-ossp“ paketą galima pritvirtinti naudojant užklausą KURTI IŠPLĖTIMĄ. Parašykite šią komandą į „PostgreSQL“ komandų apvalkalą ir galite gauti vėlesnį pranešimą „CREATE EXTENSION“. Mes taip pat atsisakėme sąlygos „JEI NĖRA“, kuri leidžia mums sustabdyti rinkinio pakartotinį diegimą.

>> KURTI IŠPLĖTIMĄ, JEI NEBUVA „uuid-ossp“;

Funkcija „uuid_generate_v1 ()“ bus naudojama kuriant UUID reikšmes, priklausančias nuo dabartinės laiko žymės, MAC adresų grupės ir atsitiktinės vertės. Vykdydami šią užklausą užklausos erdvėje, gausite sekantį išėjimą, kuriame bus rodoma UUID reikšmė, sukurta naudojant metodą „uuid_generate_v1 ()“.

>> PASIRINKITE uuid_generate_v1 ();

Metodą „uuid_generate_v4 ()“ galima naudoti kuriant UUID vertę, nustatytą tik atsitiktiniais numeriais, kaip parodyta žemiau. Tai sukurs tokią išvestį kaip toliau.

>> PASIRINKITE uuid_generate_v4 ();

„PostgreSQL UUID“ duomenų tipo pavyzdys

Šis pavyzdys parodo, kaip veikia „PostgreSQL“ UIID duomenų tipas. Naudosime komandą CREATE, kad sukurtume atskirą „Client“ lentelę ir UUID laukus. Kliento ID, kliento vardas, kliento pavardė, kliento el. Pašto adresas ir kliento adresas yra tik keli lentelės „Klientas“ stulpeliai. Kaip UUID duomenų tipą naudojome „Client_id“, kuris taip pat yra pagrindinis raktas. Metodas „uuid_generate_v4 ()“ taip pat dinamiškai generuos pagrindines pagrindines stulpelių vertes. Išbandykite šią komandą CREATE TABLE užklausos įrankio srityje, kad sukurtumėte „Client“ lentelę „testo“ duomenų bazėje, kurioje įdiegtas modulis uuid-ossp. Gausite pranešimą „CREATE TABLE“, o tai reiškia, kad lentelė sukurta tinkamai.

Kai pridedate naują eilutę nenurodydami vertės „Client_id field“, „PostgreSQL“ gali naudoti metodą „uuid_generate_v4 ()“, kad gautų reikšmę „Client_id“. Naudodami INSERT instrukciją, mes įdėsime į ją keletą vertybių. Vykdant toliau pateiktą instrukciją pasirodys toks atsakymo ekranas, kuris rodo, kad nurodytos vertės buvo efektyviai įtrauktos į lentelę „Klientas“.

Dabar mes gausime visus lentelės „Klientas“ įrašus naudodami užklausą „SELECT“ užklausų redaktoriaus įrankyje. Šį išvestį gausite atlikę žemiau pateiktą instrukciją, kurioje bus rodoma visa arba dauguma informacijos lentelėje Klientas. „Client_id“ lauką užims UUID reikšmės, sukurtos naudojant metodą „uuid_generate_v4 ()“, kaip parodyta toliau pateiktame paveikslėlyje.

>> PASIRINKTI * IŠ kliento;

Išvada

Šiame straipsnyje aptarti pagrindiniai „PostgreSQL UUID“ duomenų tipų punktai naudojant „PostgreSQL pgAdmin 4“ grafinę vartotojo sąsają ir komandinės eilutės apvalkalą, įskaitant:

Tikimės, kad jums nekils problemų dirbant su UUID tipais ir funkcijomis „PostgreSQL“.

Geriausios „Linux“ skirtos „Gamepad“ žemėlapių sudarymo programos
Jei jums patinka žaisti žaidimus „Linux“ su žaidimų pultu, o ne įprasta klaviatūra ir pelės įvesties sistema, yra keletas jums naudingų programų. Daug...
Naudingi įrankiai „Linux“ žaidėjams
Jei jums patinka žaisti žaidimus „Linux“ sistemoje, yra tikimybė, kad galbūt naudojote tokias programas ir įrankius kaip „Wine“, „Lutris“ ir „OBS Stud...
„HD Remastered“ žaidimai, skirti „Linux“, kurie niekada anksčiau nebuvo išleisti „Linux“
Daugelis žaidimų kūrėjų ir leidėjų siūlo senų žaidimų HD remasterį, kad prailgintų franšizės laiką. Prašome gerbėjų, prašančių suderinamumo su šiuolai...