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 Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-10-2008
Avatar de pablonill
pablonill pablonill is offline
Miembro
 
Registrado: dic 2006
Posts: 92
Poder: 18
pablonill Va por buen camino
Transacciones DataSetProvider y ClientDataset

Hola, que tal, yo aqui de vuelta, les hago una pequeña y gran consulta.

Si bien los DataSetProviders generan las transacciones implicitamente, lo que necesito es saber como puedo hacer porque tengo dos tablas y necesito que se actualizen dentro de una transaccion, el tema es como puedo actualizar ambas tablas seguras y si da algun error poder hacer un rollback, espero que haber sido claro, muchas gracias.
Responder Con Cita
  #2  
Antiguo 02-10-2008
pigu pigu is offline
Miembro
 
Registrado: jul 2004
Posts: 12
Poder: 0
pigu Va por buen camino
Transacciones

Hola pablonill:

Mira, si usas componentes Ado debes hacer asi:

Código Delphi [-]
procedure guardar;
var vError: integer;
begin
   try
      AdoConnection.BeginTrans;
      DatasetProviders.ApplyUpdates(ClientDataSet.Delta, 0, vError);
      AdoConnection.CommitTrans;
   except
   on E: Exception do
   begin
      AdoConnection.RollbackTrans;
      MessageBox(PChar(E.Message), 'Error al guardar', MB_OK + MB_ICONERROR)
   end;
end;

Espero te sirva de ayuda.

Última edición por pigu fecha: 02-10-2008 a las 23:19:53. Razón: No salio bien las etiquetas del codigo Delphi
Responder Con Cita
  #3  
Antiguo 10-10-2008
Avatar de pablonill
pablonill pablonill is offline
Miembro
 
Registrado: dic 2006
Posts: 92
Poder: 18
pablonill Va por buen camino
Muchisimas gracias maestro. Sos un grande.
Responder Con Cita
  #4  
Antiguo 22-11-2008
Patricio Patricio is offline
Miembro
 
Registrado: jul 2004
Posts: 433
Poder: 20
Patricio Va por buen camino
y si fueran los componentes de interbase

hola te hago una consulta voy a empezar con delphi 7 y con Firebird 2.0 con los compoenentes de interbase q vienen por defecto, como seria el codigo q pusiste con los compoenetes ado pero con los componentes de interbase.
Se pueden usar esos componentes ado para la base firebird?
Responder Con Cita
  #5  
Antiguo 22-11-2008
Avatar de pablonill
pablonill pablonill is offline
Miembro
 
Registrado: dic 2006
Posts: 92
Poder: 18
pablonill Va por buen camino
Hola, te comento que uso delphi 2009 no es el mismo procedimiento que para delphi 7. Pero te puede orientar.

Código Delphi [-]
var
  TD: TDBXTransaction;
begin
  try
    TD := DM.Conexion.BeginTransaction(TDBXIsolations.ReadCommitted);
 
    //Aqui todo el procedimiento de actualizacion de datos
   
   
    DM.Conexion.CommitFreeAndNil(TD);
 
    except

      On e:Exception do
      begin
        DM.Conexion.RollbackFreeAndNil(TD);
        raise;
      end;
end;

Espero que te sirva, saludos.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
ayuda ClientDataSet, DataSetProvider y ApplyUpdates cmm07 Varios 1 23-03-2008 08:27:28
DataSetProvider david duarte Providers 3 19-01-2006 15:10:57
IBQuery --> DataSetProvider --> ClientDataset pinoxito Conexión con bases de datos 8 16-11-2005 20:40:34
Transacciones - ClientDataSet motrildelphi Conexión con bases de datos 3 11-05-2005 10:28:53
DbExpress - Transacciones - más de un clientDataSet carlosmari Conexión con bases de datos 7 29-09-2003 20:07:54


La franja horaria es GMT +2. Ahora son las 22:01:15.


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