Come configurare la chiave primaria di posta automatica PostgreSQL?

Come configurare la chiave primaria di posta automatica PostgreSQL?
Potrebbero esserci occasioni in cui crei e mantieni le tabelle in PostgreSQL quando si desidera valori particolari per una colonna che viene generata su richiesta. Ciò sarebbe particolarmente vero per le colonne "ID" che agiscono come la chiave principale della tabella. Fortunatamente, lo pseudo-tipo seriale consente di rendere comoda una serie interi che incrementa auto. Una serie è un tipo di oggetto di database in PostgreSQL che produce una serie di indici o numeri interi. Una sequenza PostgreSQL produce una stringa di numeri interi distinti, che la rendono adatto per essere utilizzata come chiave primaria quando si genera una nuova tabella. Ti dimostreremo quali mena di incremento automatico in PostgreSQL e useremo lo pseudo seriale in questa guida.

Sintassi:

La sintassi generale per la creazione della chiave primaria automatica è la seguente:

>> Crea table table_name (ID serial);

Diamo ora un'occhiata alla dichiarazione di Crea Table in modo più dettagliato:

  • PostgreSQL genera prima un'entità in serie. Produce il valore successivo nella serie e lo imposta come valore di riferimento predefinito del campo.
  • PostgreSQL applica la restrizione implicita non null a un campo ID poiché una serie produce valori numerici.
  • Il campo ID sarà assegnato come titolare della serie. Se il campo ID o la tabella stessa viene omesso, la sequenza verrà scartata.

Per ottenere il concetto di incremento automatico, assicurati che PostgreSQL sia montato e configurato sul sistema prima di continuare con le illustrazioni in questa guida. Apri la shell della riga di comando PostgreSQL dal desktop. Aggiungi il nome del tuo server su cui si desidera lavorare, altrimenti lo ha lasciato a default. Scrivi il nome del database che si trova nel tuo server su cui si desidera lavorare. Se non si desidera cambiarlo, lo hai lasciato come impostazione predefinita. Useremo il database "test", ecco perché lo abbiamo aggiunto. Puoi anche lavorare sulla porta predefinita 5432, ma puoi anche cambiarla. Alla fine, devi fornire il nome utente per il database scelto. Lascialo a default se non si desidera cambiarlo. Digita la password per il nome utente selezionato e premi "Invio" dalla tastiera per iniziare a utilizzare la shell di comando.

Utilizzo della parola chiave seriale come tipo di dati:

Quando creiamo una tabella, di solito non aggiungiamo il seriale della parola chiave nel campo della colonna primaria. Ciò significa che dobbiamo aggiungere i valori alla colonna della chiave primaria durante l'utilizzo dell'istruzione Insert. Ma quando utilizziamo il seriale della parola chiave nella nostra query durante la creazione di una tabella, non dovremmo dover aggiungere valori di colonna primaria mentre inseriamo i valori. Diamo un'occhiata.

Esempio 01:

Crea una tabella "Test" con due colonne "ID" e "Nome". La colonna "ID" è stata definita come la colonna della chiave primaria in quanto il suo tipo di dati è seriale. D'altra parte, la colonna "nome" è definita come il testo non null dati. Prova il comando seguente per creare una tabella e la tabella verrà creata in modo efficiente come mostrato nell'immagine seguente.

>> Crea test della tabella (ID chiave primaria seriale, nome Nome non null);

Inseriamo alcuni valori alla colonna "Nome" della tabella appena creata "Test". Non aggiungeremo alcun valore alla colonna "ID". Puoi vedere che i valori sono stati inseriti correttamente utilizzando il comando insert come indicato di seguito.

>> inserisci nei valori di test (nome) ('aqsa'), ('rimsha'), ('khan');

È ora di controllare i record del "test" della tabella. Prova le istruzioni di selezione seguente nella shell del comando.

>> Seleziona * dal test;

Dall'output di seguito, è possibile notare che la colonna "ID" ha ottenuto automaticamente alcuni valori anche se non abbiamo aggiunto alcun valori dal comando Insert a causa del seriale del tipo di dati che abbiamo specificato per la colonna "ID". Questo è il modo in cui il serial del tipo di dati funziona da solo.

Esempio 02:

Un altro modo per controllare il valore della colonna del tipo di dati seriale è utilizzando la parola chiave di restituzione nel comando insert. La dichiarazione seguente crea una nuova riga nella tabella "Test" e produce il valore per il campo "ID":

>> INSERT IN VALORI TEST (NAME) ('HASSAM') ID di ritorno;

Controllando i record della tabella "Test" utilizzando la query selezionata, abbiamo ottenuto l'output di seguito come visualizzato nell'immagine. Il quinto record è stato aggiunto in modo efficiente al tavolo.

>> Seleziona * dal test;

Esempio 03:

La versione alternativa della query di insert sopra utilizza la parola chiave predefinita. Utilizzeremo il nome "ID" della colonna nel comando Insert e nella sezione Valori, gli daremo la parola chiave predefinita come valore. La query seguente funzionerà allo stesso modo in caso di esecuzione.

>> inserisci nel test (id, nome) valori (predefinito, 'raza');

Controlliamo nuovamente la tabella usando la query seleziona come segue:

>> Seleziona * dal test;

Puoi vedere dall'output di seguito, il nuovo valore è stato aggiunto mentre la colonna "ID" è stata incrementata per impostazione predefinita.

Esempio 04:

Il numero di sequenza del campo della colonna seriale è disponibile in una tabella in PostgreSQL. Il metodo pg_get_serial_sequence () viene utilizzato per raggiungere questo obiettivo. Dobbiamo usare la funzione Currval () insieme al metodo PG_GET_SERIAL_SEVERCE (). In questa query, forniremo il nome della tabella e il nome della colonna seriale nei parametri della funzione pg_get_serial_sequence (). Come puoi vedere, abbiamo specificato la tabella "Test" e la colonna "ID". Questo metodo viene utilizzato nell'esempio di query seguente:

>> Seleziona Currval (pg_get_serial_sequence ('test', 'id'));

Vale la pena notare che la nostra funzione Currval () ci aiuta a estrarre il valore più recente della sequenza, che è "5". L'immagine seguente è un'illustrazione di come potrebbe essere la performance.

Conclusione:

In questo tutorial guida, abbiamo dimostrato come utilizzare lo pseudo-tipo seriale per l'incremento automatico in PostgreSQL. Utilizzando una serie in PostgreSQL, è semplice costruire un set di numeri che incrementa auto. Spero che sarai in grado di applicare il campo seriale alle descrizioni della tabella usando le nostre illustrazioni come riferimento.