Dela via


Autokommitläge

I läget för automatisk incheckning är varje databasåtgärd en transaktion som checkas in när den utförs. Det här läget är lämpligt för många verkliga transaktioner som består av en enda SQL-instruktion. Det är inte nödvändigt att avgränsa eller ange slutförande av dessa transaktioner. I databaser utan transaktionsstöd är läget för automatisk incheckning det enda läge som stöds. I sådana databaser checkas instruktioner in när de körs och det går inte att återställa dem. De är därför alltid i automatiskt incheckningsläge.

Om den underliggande DBMS inte stöder transaktioner i automatiskt incheckningsläge kan drivrutinen emulera dem genom att manuellt genomföra varje SQL-instruktion när den körs.

Om en batch med SQL-instruktioner körs i autokommitteringsläge är det specifikt för datakällan när instruktionerna i batchen kommitteras. De kan kommitteras under körningen eller som helhet när hela batchen har körts. Vissa datakällor kan ha stöd för båda dessa beteenden och kan ge ett sätt att välja en eller de andra. I synnerhet om ett fel inträffar mitt i batchen, beror det på datakällan om de redan utförda instruktionerna har begåtts eller rullats tillbaka. Därför bör interoperabla program som använder batchar och kräver att de checkas in eller återställs som helhet köra batchar endast i manuellt incheckningsläge.