Tabelle temporanee postgresql

Tabelle temporanee postgresql

PostgreSQL ha funzionalità di database affidabili per la gestione di transazioni diverse. Ad esempio, la sua tabella temporanea consente di risparmiare i dati per una data sessione. Esiste una tabella temporanea per una determinata sessione e chiuderà la sessione data o il tentativo di interrogare la stessa tabella temporanea in un'altra sessione restituirà un errore.

Questo post ti guiderà nella comprensione di come funzionano le tabelle temporanee. Creeremo una tabella temporanea, quindi proveremo ad accedervi da un'altra sessione.

Lavorare con tabelle temporanee in PostgreSQL

Prima di lavorare con una tabella temporanea in PostgreSQL, capiamo alcuni fatti.

  1. La tabella temporanea è visibile solo in una determinata sessione. Altre transazioni o database non possono accedere a una determinata transazione.
  2. Puoi avere una tabella temporanea con lo stesso nome di una tabella permanente nello stesso database.
  3. Quando una tabella temporanea condivide lo stesso nome di una tabella permanente, non è possibile accedere alla tabella permanente fino a quando la tabella temporanea non viene eliminata dal database o dalla sessione.

Ecco la sintassi per la creazione di una tabella temporanea in PostgreSQL. Puoi usare il TEMPORANEO O Temp Parola chiave per crearlo.

# Crea tabella table_name temporanea (column_name, datatype);


O

# Crea table table_name della tabella temp (column_name, tipo di dati);


In questo tutorial, creeremo un database, creeremo una tabella temporanea e una tabella permanente. Quindi, prova ad accedere alla stessa tabella temporanea da un'altra sessione per capire come funziona una tabella temporanea.

Accedi alla tua console PostgreSQL e crea un database. Nomiamo il nostro Linuxhint.

# Crea database LinuxHint1;



Otterrai la conferma che il tuo database è stato creato correttamente. Successivamente, connettersi al database creato.

# \ c linuxhint1;



Crea una tabella permanente. Chiamiamolo nomi.

# Crea nomi di tabelle (fname varchar (100), età int);



Con la nostra tabella permanente creata, creiamo una tabella temporanea con lo stesso nome ma colonne diverse.

# Crea nomi di tabelle temporanee (cognome varchar (100));



Possiamo verificare che il nostro database contenga le due tabelle create utilizzando il \ dt comando.


Noterai che solo una tabella è elencata poiché la tabella temporanea non è elencata. Tuttavia, se elenchiamo il contenuto della tabella particolare, visualizza il contenuto della tabella temporanea. Il tavolo permanente viene "messo a tacere" fino a quando il tavolo temporaneo non viene lasciato cadere.


Supponiamo di aprire un'altra sessione PostgreSQL e connettersi al database creato. Se provi ad accedere alla tabella temporanea, non esiste. Invece, la tabella permanente verrà recuperata poiché la tabella temporanea esiste solo nella sessione in cui è stata creata.


Nell'output, otteniamo il contenuto della tabella permanente contrariamente a quello che abbiamo ottenuto quando abbiamo eseguito lo stesso comando nella sessione contenente la tabella temporanea.

Tuttavia, se lasci la sessione corrente, poi torna più tardi, la tabella temporanea non esiste.

Prova a smettere eseguendo il \Q comando, quindi prova ad accedere alla tabella temporanea. Restituirà un errore.

Inserire valori in una tabella temporanea

Puoi inserire i valori in una tabella temporanea nello stesso modo in cui li inserisci su una tabella permanente.


Una volta inserito, è possibile confermare che la tabella temporanea contiene i valori inseriti come previsto.

Far cadere un tavolo temporaneo

Puoi usare il gocciolare comando se si desidera eliminare la tabella temporanea senza aspettare che venga eliminato automaticamente quando la sessione scade.

Conclusione

Le tabelle temporanee sono tabelle create in PostgreSQL con una breve durata della vita. Le tabelle sono visibili solo nella sessione corrente. Una volta uscita dalla sessione, la tabella viene eliminata automaticamente. Tuttavia, se apri un'altra sessione e provi ad accedere alla tabella temporanea, restituirà un errore. Quando hai una tabella temporanea e permanente che condivide lo stesso nome, non è possibile accedere alla tabella permanente fino a quando non si lascia cadere la tabella temporanea.