Pueden estar basados en SESIÓN (los datos sobreviven a una confirmación pero no a una desconexión/reconexión). También pueden basarse en TRANSACCIONES (los datos desaparecen después de una confirmación).
Esto crea una tabla temporal basada en transacciones:
create global temporary table temp_table_transaction on commit delete rows ...
Esto crea una tabla temporal basada en sesiones:
create global temporary table temp_table_transaction on commit preserve rows ...