Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Perché il rollback non funziona per la tabella variabile in SQL Server 2012?

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.