Non stai usando un temp
tabella, stai usando una variable
tavolo. C'è una differenza.
Le tabelle temporanee funzionano con le transazioni, le tabelle variabili no. Vedi http://blog.sqlauthority.com/2009/12/28/sql-server-difference-temp-table-and-table-variable-effect-of-transaction/
Se dovessi modificare la tabella delle variabili @tab
in una tabella temporanea di #tab
, otterresti il comportamento desiderato.
Differenze tra tabelle temporanee e variabili:https://dba.stackexchange.com/questions/16385/whats-the-difference-between-a-temp-table-and-table-variable-in- sql-server/16386#16386
I link che ho postato sopra lo esaminano con più dettagli di quanto potrei.