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

Hvordan indstiller du autocommit i en SQL Server-session?

Du kan slå autocommit TIL ved at indstille implicit_transactions FRA:

SET IMPLICIT_TRANSACTIONS OFF

Når indstillingen er TIL, vender den tilbage til implicit transaktionstilstand. I implicit transaktionstilstand starter hver ændring du foretager en transaktion, som du skal udføre manuelt.

Måske er et eksempel klarere. Dette vil skrive en ændring til databasen:

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

Dette vil ikke skrive en ændring til databasen:

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

Følgende eksempel vil opdatere en række og derefter klage over, at der ikke er nogen transaktion at foretage:

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

Som Mitch Wheat sagde, er autocommit standarden for SQL Server 2000 og nyere.



  1. Kan databaseposter tilføjet fra elementer slettes med knappen?

  2. T-SQL tirsdag #106:I STEDET FOR triggere

  3. Hvordan dropper man alle brugertabeller?

  4. Hvordan finder du rækkeantallet for alle dine borde i Postgres