Come eseguire l'incremento automatico di PostgreSQL

Come Eseguire L Incremento Automatico Di Postgresql



Un modo per garantire identità univoche nel tuo database PostgreSQL è utilizzare la funzionalità di incremento automatico. Se abilitata, questa funzione genera un'identità univoca per ogni nuova voce nella tabella. Con l'incremento automatico, se provi a inserire un nuovo valore con lo stesso identificatore univoco, verrà generato un errore. L'incremento automatico può essere utilizzato in diverse istanze ed è possibile definire come si desidera che venga generato l'identificatore univoco. Maggiori dettagli sull'incremento automatico di PostgreSQL sono descritti in questo post. Continuare a leggere!

Due metodi per l'incremento automatico di PostgreSQL

Quando crei un database, dovresti avere una chiave primaria per ogni tabella per assicurarti che non appaiano duplicati nelle tabelle. Un modo per creare le chiavi primarie è utilizzare la funzionalità di incremento automatico per il tipo di dati INT. PostgreSQL genera il valore della chiave primaria per tutte le voci, liberando lo sviluppatore dal fastidio di digitare manualmente la chiave primaria.

Esistono due approcci che puoi utilizzare per creare l'incremento automatico nel tuo database PostgreSQL.







Metodo 1: utilizzo dello pseudo-tipo SERIAL

Il modo predefinito per creare l'incremento automatico per le chiavi primarie nel database è utilizzare la parola chiave SERIEL. Quando utilizzato, lo pseudo-tipo SERIAL crea una sequenza per generare i valori. Prende nota del valore successivo nella sequenza e ogni volta che inserisci un nuovo valore, gli viene assegnata un'identità univoca.



Tieni presente che questo incremento automatico è assegnato a un tipo di dati INT e viene eliminato una volta eliminata la tabella o la colonna.



Ecco la sintassi per creare un incremento automatico:





CREARE TAVOLO NOME_TABELLA ( id SERIAL tipo_dati ) ;

Nel nostro caso, creiamo una tabella denominata 'dettagli' che contiene 'user_id' come incremento automatico e chiave primaria. Includiamo anche altre due colonne.



Quando vogliamo inserire i valori nella nostra tabella, li inseriamo solo per le altre colonne e tralasciamo la colonna di incremento automatico poiché i suoi valori vengono generati automaticamente. Ecco un esempio in cui aggiungiamo cinque voci alla nostra tabella:

Quando usiamo l'istruzione SELECT per controllare i record della tabella, notiamo che la colonna 'user_id' contiene identità univoche che, nel nostro caso, sono numeri che iniziano da 1. Ecco come eseguire l'incremento automatico di PostgreSQL utilizzando lo pseudo-tipo SERIAL.

Metodo 2: creazione di una sequenza

Quando utilizzi lo pseudo-tipo SERIAL per creare valori di incremento automatico, non controlli il modo in cui vengono create le tue identità univoche. Per l'esempio precedente, abbiamo visto che le nostre identità univoche iniziano da 1. Tuttavia, se vuoi controllare questi valori, diciamo che vuoi definire a che punto iniziare a generarli, devi creare una sequenza personalizzata.

PostgreSQL ha l'opzione SEQUENCE in cui puoi specificare il nome della colonna da utilizzare per l'incremento automatico e definire il valore iniziale per la colonna. Ad esempio, se vogliamo iniziare i valori da 100, creiamo la seguente sequenza personalizzata:

CREA SEQUENZA nome_colonna valore_iniziale;

Dopo aver creato la sequenza, ora puoi creare la tua tabella. Tieni presente che devi utilizzare lo stesso nome di colonna in cui hai creato una sequenza come 'nextval('holder')' per la tabella creata. In questo modo, PostgreSQL fa riferimento alla sequenza per sapere quale ordine seguire quando si genera l'identità univoca per le colonne.

Eseguiamo il seguente comando per creare la nostra tabella:

Procedere con l'inserimento dei valori nella tabella creata per le colonne interessate.

Quando eseguiamo la query 'seleziona' per elencare le voci della tabella, possiamo vedere che siamo riusciti a controllare il nostro incremento automatico. La colonna 'user_id' inizia il suo valore da 100 e genera i valori successivi per le altre voci che inseriamo nella tabella.

Questo è l'altro modo di creare l'incremento automatico per PostgreSQL.

Conclusione

La creazione di un incremento automatico è utile per creare unicità nella tabella. Quando desideri definire una chiave primaria per la tua tabella, utilizza la funzionalità di incremento automatico per il tipo di dati INT. PostgreSQL genera i valori automaticamente, assicurando che non esistano duplicati nella tabella. Abbiamo definito come creare l'incremento automatico per PostgreSQL e fornito due esempi dei due metodi che è possibile utilizzare. Entrambi i metodi sono applicabili a seconda dello scenario in uso. Provali!