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

Hvordan ved jeg i SQL Server, hvilken transaktionstilstand jeg bruger i øjeblikket?

IF @@TRANCOUNT = 0 PRINT 'No current transaction, autocommit mode (default)'
ELSE IF @@OPTIONS & 2 = 0 PRINT 'Implicit transactions is off, explicit transaction is currently running'
ELSE PRINT 'Implicit transactions is on, implicit or explicit transaction is currently running'

Jeg tror ikke, der er en måde at afgøre, om den aktuelle transaktion blev startet eksplicit eller implicit. Så denne kode prøver bare at gætte:Hvis IMPLICIT_TRANSACTIONS er FRA, antages transaktionen eksplicit at være startet.

MSDN-referencer:



  1. Oracle sql-typer over dblink

  2. Opret alias til PostgreSQL-tabel

  3. 5 Fejl i databasedesign, der skal undgås

  4. Sådan bevarer du et og-tegn (&), mens du bruger FOR XML PATH på SQL 2005