Delphi - iBTRANSACTION

 
Vista:

iBTRANSACTION

Publicado por mAURICIO (17 intervenciones) el 22/04/2003 14:42:37
Estoy con interbase 6 los componentes IBx tengo un ibTransaction y tiene 4 caracteristicas, cual debo de usar? para q sirve cada una de ellas?
Otra cosa me esta dando un error ahora q dice q la transaccion no esta activa tengo q inicializarla cada vez q la vaya a usar?. necesito mas de una Ibtransaction para la aplicaion?.
Cada cuanto deberia realizar una transaccion? cuando debo hacer un rollback? cuando se produzca una excepcion?

Espero una pronta contestacion , gracias a todos los q haceis posible este Foro.

Salu2
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:iBTRANSACTION

Publicado por BigLuis (463 intervenciones) el 22/04/2003 16:41:09
No se exactamente a que cuatro caracteristicas te refieres.
Interbase, cada vez que se abren datos, es decir, cada vez que ejecutas una consulta o abres una tabla, automaticamente incia una transaccion. A partir de ahí cuando quieras que los datos modificados o nuevos queden permanentes en la base de datos tienes que hacer un Commit.En este caso piensa que al hacer commit se cierra el cursor por lo que si quires seguir viendo en pantalla los cambios realizados tienes que hacer CommitRetaining. Antes de enviar la transaccion a la BD puedes consultar si hay una transaccion activa if IBTransaction.Intransaction then....porque si no la hay y haces un commit o Rollback te dara un error.
Una transaccion es un estado de los datos en el que o se graba todo desde que se inició o no se graba nada en la BD para garantizar la consistencia de los datos, y su integridad, dependiendo respectivamente de hacer un Commit o Rollback.El ejemplo de siempre, tu quitas dinero de una cuenta para ingresarlo en otra; si la segunda operacion falla te faltará el dinero de la primera cuenta y no lo tendra la segunda.Puedes hacer un Rollback ante una excepción siempre que la controles ya que puede suceder que se lance una excepcion al margen del BD y de los datos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:sigue

Publicado por BigLuis (463 intervenciones) el 22/04/2003 16:41:48
El tiempo que trascurra hasta que cierres la transaccion decidelo tú.Si grabas registros cruciales por su importancia haz una cada registro y si se trata de introducir datos de forma monotona espaciala un poco mas.
La necesidad de mas de un objeto IBTransaccion viene dada por el diseño de la aplicacion.Yo utilizaria una por cada Modulo de Datos y un Modulo de Datos por cada grupo de Tablas relacionadas.
El Rollback se hace cuando no qiueres grabar los datos por el motivo que sea, parecido al Cancel de Paradox.
En fin creo que lo he liado un poco pero en cuatro lineas es imposible explicar todo.
Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar