Ver Mensaje Individual
  #7  
Antiguo 12-10-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Reputación: 27
Caral Va por buen camino
Hola
Digamos que tienes un adoQuery y quieres borrar ciertos datos (mas o menos como tu ejemplo):
Las Transacciones se hacen sobre el ADOConnection, algo asi (suponiendo que el adoconnection este en el datamodule):

Código Delphi [-]
procedure TfrmMain.Button1Click(Sender: TObject);
begin
  DataModule1.AdoConnection1.BeginTrans; // comienzo la transaccion
  try // trate de
  AdoQuery1.sql.text:= 'DELETE * FROM TABLA1 where micampo = :Midato'; //Borre de mi tabla segun mi dato
  AdoQuery1.Parameters[0].value:= tudato; // le doy el dato
  AdoQuery1.ExecSQL;  // lo ejecuto
  DataModule1.AdoConnection1.CommitTrans;  // lo guardo
  end;
  except  // creo un excepción
  on E:Exception do DataModule1.AdoConnection1.RollbackTrans; // si pasa algo no cambio nada en la bd
  MessageDlg('No fue posible completar la transacción',mtError,[mbOK],0); // muestro un mensaje
  end;
Creo que esta claro, si tienes dudas avisa.
Saludos
__________________
Siempre Novato
Responder Con Cita