Creare tabelle temporanee in Oracle

Mattepuffo's logo
Creare tabelle temporanee in Oracle

Creare tabelle temporanee in Oracle

Anche Oracle, come praticamente tutti i db server, è in grado di gestire le tabelle temporanee.

Queste si cancellano al momento della chiusura della sessione.

E questo è l'unico punto che ancora non ho ben capito; perchè alla chiusura e riapertura di SQL Developer, la tabella stava ancora la.

Da quanto ho capito le sessioni non scadono subito, ma dopo un tot di tempo; quindi considerate l'eventuale cancellazione della tabella quando avete finito, in modo da non rishciare di incastrarvi.

Detto ciò, vediamo un esempio:

CREATE GLOBAL TEMPORARY TABLE MP_TABLE
ON COMMIT PRESERVE ROWS
AS SELECT * FROM ALTRA_TABELLA;

SELECT * FROM MP_TABLE;

DROP TABLE MP_TABLE;

Il primo comando crea la tabella, riempiendola con i recordi di un'altra tabella.

Abbiamo due opzioni:

  • ON COMMIT PRESERVE ROWS -> tiene la righe anche dopo il commit
  • ON COMMIT DELETE ROWS -> cancella le righe dopo il commit

Con il secondo comando visualiziamo le righe della temp table creata.

Con l'ultimo comando cancelliamo la tabella.

Fate qualche prova, stando ovviamente attenti a cosa andate creare e cancellare!

Enjoy!

 


Condividi

Commentami!