sql >> Base de Datos >  >> RDS >> Mysql

¿Las inserciones múltiples de mysql dentro de una sola consulta son atómicas?

ACID (Atomicidad, Consistencia, Aislamiento, Durabilidad) se utilizan propiedades para describir dicho comportamiento en las bases de datos. La atomicidad solo es importante si se trata de modificaciones concurrentes . Para asegurar la Coherencia, se debe alcanzar un cierto nivel de Aislamiento. Sin embargo, cuantas más transacciones múltiples aisladas se ejecuten, menos rendimiento tendrá el DBMS. Entonces existe el llamado "nivel de aislamiento ", que establece qué errores pueden ocurrir en un DBMS y cuáles no.

Ahora, MySQL implementa todos los niveles de aislamiento en las bases de datos INNODB, y puede elegir para cada transacción:https://dev.mysql.com/doc/refman/5.1/en/set-transaction.html

Las bases de datos de MyIsam no admiten transacciones; sin embargo, las operaciones individuales deben ejecutarse atómicamente. (Fuente:https://dev.mysql. com/doc/refman/5.0/en/ansi-diff-transacciones.html ). Sin embargo, tenga en cuenta que esto NO garantiza que los datos no cambien entre las lecturas y las escrituras en una sola operación:la atomicidad en términos de DBMS solo significa que la operación se realiza por completo o se omite por completo. NO garantiza aislamiento, consistencia o durabilidad.