Como usar...COMMIT rollback

08/08/2007 - 23:45 por Martín | Informe spam
de lo que leí en MSDN y otras páginas vi que usando commit y rollback,
puedo "guardar" transacciones por si me arrepiento le hago rollback

el tema es que ejecuto:


BEGIN TRANSACTION Prueba;
GO
DELETE FROM Tabla
WHERE Campo1 = '1'
commit TRANSACTION Prueba;
GO

y me hace bien la eliminación, pero si me arrepiento y ejecuto como
muchas páginas dicen:

BEGIN TRANSACTION prueba;
rollback transaction prueba;


me da el siguiente error:

Cannot roll back prueba. No transaction or savepoint of that name was
found.


y no me deja deshacer el primer delete, alguien me puede dar una mano?

Gracias!!
Martín
 

Leer las respuestas

#1 Isaias
09/08/2007 - 00:00 | Informe spam
Martin

¿Ya leiste algo de BEGINT TRAN, COMMIT TRAN Y ROLLBACK TRAN ene la ayuda en
linea?

Es cierto que el ROLLBACK TRAN, deshace la transaccion, pero de esta forma.

BEGIN TRAN mytran
DELETE Cliente WHERE IDCliente = 5
IF @@ROWCOUNT = 10
BEGIN
ROLLBACK TRAN mytran
RETURN(0)
END
COMMIT TRAN mytran
Saludos
IIslas


"Martín" wrote:

de lo que leí en MSDN y otras páginas vi que usando commit y rollback,
puedo "guardar" transacciones por si me arrepiento le hago rollback

el tema es que ejecuto:


BEGIN TRANSACTION Prueba;
GO
DELETE FROM Tabla
WHERE Campo1 = '1'
commit TRANSACTION Prueba;
GO

y me hace bien la eliminación, pero si me arrepiento y ejecuto como
muchas páginas dicen:

BEGIN TRANSACTION prueba;
rollback transaction prueba;


me da el siguiente error:

Cannot roll back prueba. No transaction or savepoint of that name was
found.


y no me deja deshacer el primer delete, alguien me puede dar una mano?

Gracias!!
Martín


Preguntas similares