sql >> Base de Datos >  >> RDS >> Sqlserver

¿Cómo se configura la confirmación automática en una sesión de SQL Server?

Puede activar la confirmación automática desactivando transacciones implícitas:

SET IMPLICIT_TRANSACTIONS OFF

Cuando la configuración está activada, vuelve al modo de transacción implícita. En el modo de transacción implícita, cada cambio que realice inicia una transacción que debe confirmar manualmente.

Quizá un ejemplo sea más claro. Esto escribirá un cambio en la base de datos:

SET IMPLICIT_TRANSACTIONS ON
UPDATE MyTable SET MyField = 1 WHERE MyId = 1
COMMIT TRANSACTION

Esto no escribirá un cambio en la base de datos:

SET IMPLICIT_TRANSACTIONS ON
UPDATE MyTable SET MyField = 1 WHERE MyId = 1
ROLLBACK TRANSACTION

El siguiente ejemplo actualizará una fila y luego se quejará de que no hay transacción para confirmar:

SET IMPLICIT_TRANSACTIONS OFF
UPDATE MyTable SET MyField = 1 WHERE MyId = 1
ROLLBACK TRANSACTION

Como dijo Mitch Wheat, la confirmación automática es la predeterminada para Sql Server 2000 y versiones posteriores.