Transacciones en las aplicaciones vs transacciones en el motor d bd
hola, quisiera saber cual es la diferencia de hacer una transacción en la aplicación y en el sql server mediante un sp.
Sucede que muchas veces se hace lo siguiente en las aplicaciones:
update personal set fecha_ingreso = :fecha where codi_pers = :código ;
if error = yes then
rollback;
else
commit;
end if
***********************************
en un SP lo tenemos así.
begin tran
update personal set fecha_ingreso = @fecha where codi_pers = @código
if error = yes begin
rollback tran
end
else befin
commit tran
end
************************************
se que se debe procurar tener toda clase de instrucción sql en el propio motor, pero que quisiera saber, cómo reacciona reacciona el motor si las transacciones se envían desde la aplicación¿?
qué sucede si en mi aplicación tengo lo siguiente¿?
update personal set fecha_ingreso = :fecha where codi_pers = :código ;
if error = yes then
rollback;
else
exec procedure dbo.usp_actualizar_algo ; //este proc tiene mas traccaciones
commit;
end if
************************************
qué sucede con las transacciones que tengo en el sp y con las transacciones que tengo en mi aplicación¿?
gracias por tu respuesta.