¿Cómo implementan los proveedores de bases de datos las transacciones?
Cuando se trabaja con una base de datos, a menudo es esencial usar transacciones. Digamos, por ejemplo, que deseo transferir una cierta cantidad de dinero de la cuenta A a la cuenta B. Esto implica dos consultas:
disminuir el dinero en la cuenta A aumentarlo en la cuenta B.En teoría, puedo hacer las consultas por separado, pero ocurren errores. Entonces, para estar seguro, puedo empaquetar las dos consultas dentro de una transacción y asegurarme de que ambas operaciones finalicen regularmente o que nada haya cambiado en absoluto. No desaparece ni se crea dinero.
El problema es que me parece que esto solo transfiere la responsabilidad de mí al vendedor de la base de datos. Ahora depende de la base de datos realizar ambas operaciones y asegurarse de que ambas se realicen o que nada haya cambiado. Y los desarrolladores de bases de datos enfrentan los mismos problemas que los errores.
Qué técnicas utilizan los proveedores de bases de datos para garantizar la seguridad de las transacciones?