Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Se ejecuta el insert al cerrar la aplicacion (https://www.clubdelphi.com/foros/showthread.php?t=69642)

Dens 31-08-2010 00:25:23

Se ejecuta el insert al cerrar la aplicacion
 
Buenas tardes amigos, antes que nada un cordial saludo y muchas bendiciones .
Me dirijo a ustede para realizar una consulta muy simple.
He realizado una aplicacion en la que existe un form que posee un dataset con un dbgrid para insertar y editar registros.
funciona muy bien pero a la hora de ejecutar el insert abro la tabla en cuestion desde el ibexpert y me doy cuenta que no ha insertado ni actualizado nuevos registros, para que inserte el registro tengo que cerrar la aplicacion, al cerrar la aplicacion chequeo la tabla nuevamente desde el ibexpert y ha realizado la transaccion.

Sera que hay algun tips que no estoy realizando?.

Muchas gracias de antemano y que tengan una feliz tarde.

delphi.com.ar 31-08-2010 00:36:40

Supongo que lo que te está sucediendo, es que no estas controlando manualmente la transacción, por lo tanto al cerrar la aplicación y desconectar la base de datos, se genera un commit. Fíjate que tu objeto de conexión debe tener métodos para iniciar y finalizar transacciones, tipo: StartTransaction, CommitTransactio, Rollback...

Saludos!

Caral 31-08-2010 00:39:57

Hola
Y el IbTransaction donde esta?.
Como haces la transaccion de la operacion?.

Orden:
IBDatabase
IBTransaction
IBDataset.
Datasource
Dbgrid


Saludos

Dens 31-08-2010 00:51:43

estoy utilizando todos
IBDatabase
IBTransaction
IBDataset.
Datasource
Dbgrid


pero sucede que yo tomo los parametros de conexion desde un punto ini entonces en todos los forms utilizo el mismo ibdatabase, es decir
tengo un form de login llamado 'login' que tiene un ibdatabase que toma la direccion del servidor y la ruta de la base de datos desde un punto ini y en los demas forms a la hora de asignarle la base de datos al dataset ibtransaction selecciono la ibdatabase de 'login' de esta forma login.ibdatabase1

tendra esto algo que ver? no tengo muy claro si es necesario que halla una conexion a la base de datos desde cada formulario .

Dens 31-08-2010 00:58:09

bueno le acabo de crear una ibdatabase a el form donde tengo el dbgrid y tendria este orden
IBDatabase
IBTransaction
IBDataset.
Datasource
Dbgrid

Y aun persiste el detalle.
Gracias por su ayuda

Caral 31-08-2010 02:23:30

Hola
A ver si esto te sirve para empezar:
Saludos


La franja horaria es GMT +2. Ahora son las 16:37:52.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi