Autocommit


En el contexto de la gestión de datos, la confirmación automática es un modo de funcionamiento de una conexión de base de datos . Cada interacción individual de la base de datos (es decir, cada declaración SQL ) enviada a través de la conexión de la base de datos en modo de confirmación automática se ejecutará en su propia transacción que se compromete implícitamente. Una instrucción SQL ejecutada en modo de confirmación automática no se puede revertir .

El modo de confirmación automática, en teoría, incurre en gastos generales de transacción por estado de cuenta , lo que a menudo tiene un impacto no deseado en el rendimiento o la utilización de recursos. No obstante, en sistemas como Microsoft SQL Server, así como en tecnologías de conexión como ODBC y Microsoft OLE DB, el modo de confirmación automática es el predeterminado para todas las declaraciones que cambian datos, a fin de garantizar que las declaraciones individuales se ajusten al ACID (atomicidad- consistencia-aislamiento-durabilidad) propiedades de las transacciones. [1]

La alternativa al modo de confirmación automática (no confirmación automática) significa que la propia aplicación cliente SQL es responsable de finalizar las transacciones de forma explícita a través de los comandos SQL de confirmación o reversión . [2] El modo sin confirmación automática permite agrupar varios comandos SQL de manipulación de datos en una sola transacción atómica .

La mayoría de los DBMS (por ejemplo, MariaDB [3] ) fuerzan la confirmación automática para cada declaración DDL , incluso en el modo sin confirmación automática. En este caso, antes de cada declaración DDL, las declaraciones DML anteriores en la transacción se autocommiten. Cada declaración DDL se ejecuta en su propia nueva transacción de confirmación automática.