Kako narediti PostgreSQL Auto Increment

Kako Narediti Postgresql Auto Increment



Eden od načinov za zagotavljanje edinstvenih identitet v vaši zbirki podatkov PostgreSQL je uporaba funkcije samodejnega povečanja. Ko je omogočena, ta funkcija ustvari edinstveno identiteto za vsak nov vnos v vaši tabeli. Če s samodejnim povečevanjem poskusite vstaviti novo vrednost z istim enoličnim identifikatorjem, se prikaže napaka. Samodejno povečanje je mogoče uporabiti v različnih primerih in lahko določite, kako želite, da se ustvari enolični identifikator. Več podrobnosti o samodejnem povečanju PostgreSQL je podrobno opisano v tej objavi. Beri naprej!

Dve metodi za samodejno povečevanje PostgreSQL

Ko ustvarjate bazo podatkov, morate imeti primarni ključ za vsako tabelo, da zagotovite, da se v tabelah ne pojavijo dvojniki. Eden od načinov ustvarjanja primarnih ključev je uporaba funkcije samodejnega povečanja za podatkovni tip INT. PostgreSQL generira vrednost primarnega ključa za vse vnose, s čimer razvijalca reši ročnega vnašanja primarnega ključa.

Obstajata dva pristopa, ki ju lahko uporabite za ustvarjanje samodejnega povečanja v vaši bazi podatkov PostgreSQL.







1. način: Uporaba psevdotipa SERIAL

Privzeti način ustvarjanja samodejnega prirastka za primarne ključe v vaši bazi podatkov je uporaba ključne besede SERIEL. Ko je uporabljen, psevdotip SERIAL ustvari zaporedje za generiranje vrednosti. Zabeleži naslednjo vrednost v zaporedju in vsakič, ko vstavite novo vrednost, se ji dodeli edinstvena identiteta.



Upoštevajte, da je to samodejno povečanje dodeljeno podatkovnemu tipu INT in se izbriše, ko je tabela ali stolpec izpuščen.



Tukaj je sintaksa za ustvarjanje samodejnega povečanja:





USTVARJANJE TABELA TABLE_NAME ( id SERIAL data_type ) ;

Za naš primer ustvarimo tabelo z imenom »podrobnosti«, ki vsebuje »user_id« kot naš samodejni inkrement in primarni ključ. Vključujemo še dva druga stolpca.



Ko želimo vrednosti vstaviti v našo tabelo, jih vstavimo samo za druge stolpce in izpustimo stolpec s samodejnim povečevanjem, saj se njegove vrednosti ustvarijo samodejno. Tu je primer, ko v našo tabelo dodamo pet vnosov:

Ko uporabimo stavek SELECT za preverjanje zapisov tabele, opazite, da stolpec »user_id« vsebuje edinstvene identitete, ki so v našem primeru številke, ki se začnejo z 1. Tako se izvede samodejno povečanje PostgreSQL z uporabo psevdotipa SERIAL.

2. način: Ustvarjanje zaporedja

Ko za ustvarjanje vrednosti samodejnega povečanja uporabite psevdotip SERIAL, ne nadzirate, kako se ustvarijo vaše edinstvene identitete. V prejšnjem primeru smo videli, da se naše edinstvene identitete začnejo z 1. Če pa želite nadzirati te vrednosti, recimo, da želite definirati, na kateri točki naj se začnejo generirati, morate ustvariti zaporedje po meri.

PostgreSQL ima možnost SEQUENCE, kjer lahko določite ime stolpca, ki bo uporabljeno za samodejno povečanje, in določite začetno vrednost za stolpec. Na primer, če želimo začeti vrednosti od 100, ustvarimo naslednje zaporedje po meri:

CREATE SEQUENCE column_name start_value;

Ko ustvarite zaporedje, lahko zdaj ustvarite svojo tabelo. Upoštevajte, da morate uporabiti isto ime stolpca, kjer ste ustvarili zaporedje, kot je »nextval('holder')« za ustvarjeno tabelo. Na ta način se PostgreSQL sklicuje na zaporedje, da ve, kakšnemu vrstnemu redu je treba slediti pri ustvarjanju edinstvene identitete za stolpce.

Za ustvarjanje tabele izvedemo naslednji ukaz:

Nadaljujte z vstavljanjem vrednosti v ustvarjeno tabelo za ustrezne stolpce.

Ko zaženemo poizvedbo »select« za seznam vnosov v tabeli, lahko vidimo, da nam je uspelo nadzorovati naše samodejno povečanje. Stolpec »user_id« začne svojo vrednost pri 100 in ustvari naslednje vrednosti za druge vnose, ki jih vstavimo v tabelo.

To je drugi način ustvarjanja samodejnega prirastka za PostgreSQL.

Zaključek

Ustvarjanje samodejnega povečanja je koristno za ustvarjanje edinstvenosti v vaši tabeli. Ko želite definirati primarni ključ za svojo tabelo, uporabite funkcijo samodejnega povečanja za podatkovni tip INT. PostgreSQL samodejno ustvari vrednosti in zagotovi, da v vaši tabeli ni dvojnikov. Določili smo, kako ustvariti samodejno povečanje za PostgreSQL, in podali dva primera obeh metod, ki ju lahko uporabite. Obe metodi sta uporabni glede na scenarij, ki ga imate. Preizkusite jih!