You don't have access to this class

Keep learning! Join and start boosting your career

Aprovecha el precio especial y haz tu profesión a prueba de IA

Antes: $249

Currency
$209
Suscríbete

Termina en:

0 Días
10 Hrs
23 Min
50 Seg
Curso de Java SE: SQL y Bases de Datos

Curso de Java SE: SQL y Bases de Datos

Ana Fernanda Gutierrez Villanueva

Ana Fernanda Gutierrez Villanueva

¿Qué es una transacción?

15/22
Resources

Transactions represent a set of operations or actions that must be treated as an atomic and indivisible unit. They are used to ensure data consistency and integrity, which implies that all operations are fulfilled or none in case of failures.

Commit: The commit is an operation used to successfully complete a transaction.

Rollback: Rollback is an operation used to undo all changes made in a transaction and return the database to its pre-transaction state.

Java transactions with JDBC follow the ACID model, which guarantees the following properties:

  • Atomicity: A transaction is considered an atomic unit, which means that all of its operations are executed in their entirety or none of them are executed at all. If any error or failure occurs during the transaction, all operations performed up to the point where the error occurred are rolled back.
  • Consistency: The transaction must ensure that the database moves from one valid state to another valid state. This implies that all data integrity rules and constraints are maintained before and after the transaction.
  • Isolation: Transactions must be isolated from each other, which means that changes made by one transaction should not be visible to other transactions until the transaction has completed successfully. This avoids concurrency problems and ensures data consistency.
  • Durability: Once a transaction completes successfully, changes made to the database should be permanent and persist even in the event of system failures or restarts.

Contributions 11

Questions 0

Sort by:

Want to see more contributions, questions and answers from the community?

Cuando haces un pago en linea usas transacciones. Si no sale bien, pues lo mínimo que quieres es que te devuelvan tu dinero, es decir, el estado previo al pago; si todo sale bien, no quieres que al día siguiente se borre el registro de tu pago, sino que persista

Un ejemplo de transacciones podría ser cuando estás realizando algún trámite o encuesta en línea. Al llenar la información confirmas el envío de los datos, pero si hay algún error al momento de ingresar la información al sistema, todo se revierte y te piden que intentes de nuevo. Si todo sale bien, puedes continuar con el proceso, ya que tus datos han persistido.

Lo realizo cuando genero ordenes para examens de laboratoio, pero, lo controlo con la validadción de los datos y por último en caso que se pierda la conexión con el servidor llego a utilizar el coomit.
¿Me pueden facilitar las diapositivas? Gracias.
En sistemas de reservas de vuelos, hoteles o eventos, se realizan varias operaciones como la verificación de la disponibilidad, la reserva de asientos o habitaciones, y la actualización de inventarios. Todas estas operaciones deben realizarse como una unidad atómica para garantizar la consistencia de los datos.
Yo me imagino como ejemplo enviar un lote de datos, sigamos que en mi lote haya un registro dañado, entonces quiero que si un registro falla, me deje la base de datos tal como estaba antes de ejecutar el lote. Puede ser útil para pagos de bancos, o para cargar promedios de estudiantes, etc.
Se me puede ocurrir: al momento de pedir una cita médica, el sistema debe garantizar que solo a una persona se le asigne el horario y no a dos
Transacciones bancarias

Otro ejemplo mas tecnico de desarrollo, es una prueba unitaria a la capa de persistencia, si quiero crear un registro temporalmente para una prueba y despes borrarlo al final de la prueba

Tal ves en un Registro de una plataforma, de cierta manera el programa necesita hacer peticiones asincronas, como consultar en db por si ya existe ese username, o algun campo que sea unico.

en el majo de stock, cuando realizamos una compra, si la operacion es exitosa, se descuentan los productos del stock, de lo contraio queda es su estado original, tmb podria ser cuando agregamos un producto al carrito de compras