Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-02-2007
Avatar de TrUnkS
TrUnkS TrUnkS is offline
Miembro
 
Registrado: dic 2005
Posts: 93
Poder: 19
TrUnkS Va por buen camino
Question ¿ Es posible realizar una inserción sin tener una transaccion abierta ?

Hola amigos mi duda es la siguiente:
Deseo utilizar un TIBDataSet que se almacene en memoria mientras le realizo operaciones de borrado, insercion, modificacion, etc ... y en el momento que deseo realmente guardar o cancelar los cambios entonces abrir la transaccion y realizar los cambios. La idea es que la transaccion se mantenga abierta el menor tiempo posible y solamente realizar operaciones con tablas imaginarias momentaneamente sin tener los DataSet abiertos ni la Transacción. Cuando inserto un registro y el DataSet esta cerrado, entonces me marca error porque el DataSet esta cerrado. Si abro el DataSet se abre la transacción y eso es justamente lo que no quiero. Trato de usar CachedUpdates pero igual tengo que abrir los DataSet para realizar las inserciones y borrados. De antemano gracias.
Responder Con Cita
  #2  
Antiguo 03-02-2007
Gigabyte1024 Gigabyte1024 is offline
Miembro
 
Registrado: feb 2007
Posts: 14
Poder: 0
Gigabyte1024 Va por buen camino
podrias intentar introducir tus datos a un stringrid y ya cuando llegue el momento de guardar los datos pasar los campos de las celdas a tu dataset que seria algo asi:

IBTransaction1.Active:=True;
IBDataSet.Active:=True;

for y1:=1 to y-1 do //y es la cantidad de registros que hay en el stringgrid
begin
IBDataSet1.Insert;
IBDataSet1.FieldByName('clave').AsInteger:=strtoint(stringgrid.Cells[0,y1]);
IBDataSet1.FieldByName('nombre').AsString:=stringgrid.Cells[1,y1];
IBDataSet1.FieldByName('tel').AsInteger:=strtoint(stringgrid.Cells[2,y1]);
IBDataSet1.Post;
end;
IBTransaction1.Commit;



eso lo puedes poner en un boton, espero te sirva de algo

Última edición por Gigabyte1024 fecha: 03-02-2007 a las 02:13:06.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
error bd ya abierta en modo exclusivo Marjinhos Conexión con bases de datos 1 11-01-2007 16:37:00
Enviar texto a la ventana abierta Mr.Vaka Varios 4 28-11-2005 18:57:31
Copia de seguridad de BD gdb abierta glopez Conexión con bases de datos 2 19-05-2005 20:04:07
Base De Datos Abierta Aspel Banco 2.5 wichosaenz Varios 1 20-03-2005 02:27:29
Es posible tener varias bases de datos.... Carlosguiland MySQL 5 24-06-2004 20:39:10


La franja horaria es GMT +2. Ahora son las 16:14:08.


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
Copyright 1996-2007 Club Delphi