Com fer l'increment automàtic de PostgreSQL

Com Fer L Increment Automatic De Postgresql



Una manera de garantir les identitats úniques a la vostra base de dades PostgreSQL és utilitzar la funció d'increment automàtic. Quan està activada, aquesta funció genera una identitat única per a cada entrada nova de la taula. Amb l'increment automàtic, si intenteu inserir un valor nou amb el mateix identificador únic, generarà un error. L'increment automàtic es pot utilitzar en diferents instàncies i podeu definir com voleu que es generi l'identificador únic. En aquesta publicació es detallen més detalls sobre l'increment automàtic de PostgreSQL. Segueix llegint!

Dos mètodes per a l'increment automàtic de PostgreSQL

Quan creeu una base de dades, hauríeu de tenir una clau primària per a cada taula per assegurar-vos que no apareguin duplicats a les taules. Una manera de crear les claus primàries és utilitzar la funció d'increment automàtic per al tipus de dades INT. PostgreSQL genera el valor de la clau primària per a totes les entrades, alliberant el desenvolupador de la molèstia d'escriure manualment la principal.

Hi ha dos enfocaments que podeu utilitzar per crear un increment automàtic a la vostra base de dades PostgreSQL.







Mètode 1: Ús del pseudotipus SÈRIE

La manera predeterminada de crear un increment automàtic per a les claus primàries a la vostra base de dades és utilitzar la paraula clau SERIEL. Quan s'utilitza, el pseudotipus SERIAL crea una seqüència per generar els valors. Anota el valor següent de la seqüència i, cada vegada que insereixes un valor nou, se li assigna una identitat única.



Tingueu en compte que aquest increment automàtic s'assigna a un tipus de dades INT i s'elimina un cop s'elimina la taula o la columna.



Aquí teniu la sintaxi per crear un increment automàtic:





CREAR TAULA TABLE_NAME ( id SERIAL data_type ) ;

Per al nostre cas, creem una taula anomenada 'detalls' que conté 'user_id' com a clau primària i d'increment automàtic. També incloem dues columnes més.



Quan volem inserir els valors a la nostra taula, només inserim les altres columnes i deixem fora la columna d'increment automàtic, ja que els seus valors es generen automàticament. Aquí teniu un exemple en què afegim cinc entrades a la nostra taula:

Quan utilitzem la instrucció SELECT per comprovar els registres de la taula, observeu que la columna 'user_id' conté identitats úniques que, en el nostre cas, són números que comencen per 1. Així és com fer l'increment automàtic de PostgreSQL mitjançant el pseudotipus SERIAL.

Mètode 2: Creació d'una seqüència

Quan utilitzeu el pseudotipus SERIAL per crear els valors d'increment automàtic, no controleu com es creen les vostres identitats úniques. Per a l'exemple anterior, hem vist que les nostres identitats úniques comencen a partir de l'1. Tanmateix, si voleu controlar aquests valors, posem per cas que voleu definir en quin punt començar a generar-los, heu de crear una seqüència personalitzada.

PostgreSQL té l'opció SEQUENCE on podeu especificar el nom de columna que s'utilitzarà per a l'increment automàtic i definir el valor inicial de la columna. Per exemple, si volem començar els valors des de 100, creem la següent seqüència personalitzada:

CREATE SEQUENCE nom_columna valor_inici;

Després de crear la seqüència, ara podeu crear la vostra taula. Tingueu en compte que heu d'utilitzar el mateix nom de columna on heu creat una seqüència com el 'nextval('holder')' per a la taula creada. D'aquesta manera, PostgreSQL fa referència a la seqüència per saber quin ordre cal seguir quan es genera la identitat única per a les columnes.

Executem la següent comanda per crear la nostra taula:

Procediu a inserir els valors a la taula creada per a les columnes rellevants.

Quan executem la consulta 'seleccionar' per llistar les entrades de la taula, podem veure que hem aconseguit controlar el nostre increment automàtic. La columna 'user_id' comença el seu valor a 100 i genera els valors posteriors per a les altres entrades que inserim a la taula.

Aquesta és l'altra manera de crear l'increment automàtic per a PostgreSQL.

Conclusió

Crear un increment automàtic és beneficiós per crear unicitat a la vostra taula. Quan vulgueu definir una clau primària per a la vostra taula, utilitzeu la funció d'increment automàtic per al tipus de dades INT. PostgreSQL genera els valors automàticament, assegurant-se que no hi ha duplicats a la vostra taula. Hem definit com crear l'increment automàtic per a PostgreSQL i hem proporcionat dos exemples dels dos mètodes que podeu utilitzar. Tots dos mètodes són aplicables en funció de l'escenari que tingueu. Prova-les!