Professional Documents
Culture Documents
Procesamiento
Una
Transaccin es un conjunto de tareas relacionadas que se realizan de forma satisfactoria o incorrecta como una unidad. En trminos de procesamiento, las transacciones se confirman o se anulan. Para que una transaccin se confirme, todos los participantes deben garantizar la permanencia de los cambios efectuados en los datos. Los cambios deben conservarse aunque el sistema se bloquee o tengan lugar otros eventos imprevistos.
Propiedades
ACID
ACID Expresa la funcin que las transacciones desarrollan en aplicaciones crticas para una misin.
Una
Transaccin se ejecuta exactamente una vez y tiene carcter atmico; es decir, el trabajo se realiza en su totalidad o no se realiza en ningn caso. Una Transaccin es una unidad de trabajo en la que se produce una serie de operaciones entre: Begin Transaction y End Transaction.
Una
transaccin es una unidad integral porque mantiene la coherencia de los datos, transformando un estado coherente de datos en otro estado de datos igualmente coherente. La coherencia requiere que los datos enlazados mediante una transaccin se mantenga en trminos de semntica.
Una
transaccin es una unidad de aislamiento, permitiendo que transacciones concurrentes se comporten como si cada una fuera la nica transaccin que se ejecuta en el sistema. Una transaccin nunca debe ver las fases intermedias de otra transaccin.
Una
transaccin tambien es una unidad de recuperacin. Si una transaccin se realiza satisfactoriamente, el sistema garantiza que sus actualizaciones se mantienen aunque el equipo falle inmediatamente despus de la confirmacin.
Transacciones
Permiten
comenzar de forma explcita una transaccin, controlar cada una de las inscripciones de recursos y conexiones dentro del lmite de la transaccin, determinar el resultado de la misma (confirmacin o anulacin) y finalizarla. Tipos:
Admitidas por:
Microsoft Transaction Server (MTS) COM+ Common Lenguaje Runtime
Una vez que una pgina de ASP .NET, un mtodo de servicio web XML, o una clase de .NET Framework se marcan para participar en una transaccin, se ejecutan automticamente en el mbito de la misma. Tipos:
Transacciones de ASP .NET Transacciones de servicios Web XML Transacciones de servicios empresariales .NET
Para
comenzar una transaccin local, usaremos el objeto de conexin de ADO.NET: Connection.BeginTransaction Inscribiremos un comando en esa transaccin mediante la propiedad Transaction del objeto Command. Luego, podremos utilizar el objeto Transaction para confirmar o deshacer las modificaciones realizadas en el origen de datos, en funcin del xito o de los errores de los componentes de la transaccin.
Definir una estructura Try..Catch..Finally que maneje los posibles errores de ejecucin de comandos: En Try, abrir la conexin:
Cnn.Open()
Crear la transaccin:
Tran = Cnn.BeginTransaction
oComando.Transaction = Tran
Ejecutar
oComando.ExecuteNonQuery
Si
Si
algn comando genera un error, anular la transaccin con Rollback dentro de Catch:
Tran.Rollback()
Cerrar