Global Temporary Table

Global Temporary Table (GTT):
Versione database: Oracle Database 11g
Ambiente: DWH

Questo tipo di tabella definisce una tabella temporanea per la connessione corrente, queste tabelle non risiedono nel file cataloghi di sistema e non sono persistenti. Le tabelle temporanee esistono solo durante la connessione dichiarata e non è possibile fare riferimento al di fuori di tale connessione. Quando la connessione si chiude, le righe della tabella sono eliminata e la tabella viene eliminata.

Le tabelle temporanee sono utili quando:

  • La struttura della tabella non è nota prima di utilizzare un’applicazione.

  • I dati nella tabella temporanea sono necessari durante l’utilizzo dell’applicazione.

  • La tabella può essere dichiarata e rilasciata senza mantenere i blocchi sul catalogo di sistema

Come creare una tabella temporanea globale:

CREATE GLOBAL TEMPORARY TABLE table name
( column name and its data type )
[ ON COMMIT {DELETE | PRESERVE} ROWS ]  ;
Tipo di opzione:

ON COMMIT

Specifica l’azione eseguita sulla tabella temporanea globale quando viene eseguita un’operazione COMMIT

DELETE ROWS
Questo è il valore predefinito per ON COMMIT.

Con l’opzione ON ROLLBACK DELETE ROWS questa azione cancellerà tutte le righe della tabella solo se il file è stata utilizzata una tabella temporanea.

Con l’opzione ON COMMIT DELETE ROWS questa azione cancellerà le righe nella tabella anche se la tabella lo era non usato.
PRESERVE ROWS

Le righe della tabella verranno conservate.

ie:
DROP TABLE gtt3 PURGE; — opzione di eliminazione rimuove la tabella dal cestino

CREATE GLOBAL TEMPORARY TABLE gtt3(
key_leaf VARCHAR2(7),
field_name     VARCHAR2(50),
field_value  VARCHAR2(50) )
ON COMMIT PRESERVE ROWS
tablespace TEMP (*) ;

(*) non è possibile specificare lo spazio tabella per GTT, perché questo tipo di tabella viene istanziato nel file temporaneo tablespace dello schema che inserisce i dati, non nel tablespace temporaneo “predefinito”.

Around the scenery GTT’s:

  • Istruzione Truncate solo i dati specifici della sessione vengono troncati

  • Gli indici possono essere creati su tabelle temporanee

  • È possibile creare visualizzazioni su tabelle temporanee

  • Le tabelle temporanee possono avere trigger

    Excursus:

  • Tabelle temporanee globali e annullamento
  • Tabelle temporanee globali e Ripeti

case of:

  • Export and Import
  • Statistics on temporary tables
  • Any restriction

Potrebbero interessarti anche...

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *