Ils peuvent être basés sur SESSION (les données survivent à un commit mais pas à une déconnexion/reconnexion). Ils peuvent également être basés sur TRANSACTION (les données disparaissent après un commit).
Cela crée une table temporaire basée sur les transactions :
create global temporary table temp_table_transaction on commit delete rows ...
Cela crée une table temporaire basée sur la session :
create global temporary table temp_table_transaction on commit preserve rows ...