Ver Mensaje Individual
  #4  
Antiguo 02-06-2017
Avatar de santiago14
santiago14 santiago14 is offline
Miembro
 
Registrado: sep 2003
Ubicación: Cerrillos, Salta, Argentina
Posts: 583
Reputación: 21
santiago14 Va por buen camino
Totalmente sí. Debes usar las transacciones, inclusive para las Consultas (Select...)

Una estructura muy usada y bastante buena en Delphi es: (Suponiendo que ya estás conectado y todo eso)

Código Delphi [-]
    try
      transaccion.StartTransaction;
      nuevo_cliente(cliente, consulta); //Este es un Insert
      transaccion.Commit;
      application.MessageBox('Cliente ingresado con éxito.',
        'Clientes', MB_OK + MB_ICONINFORMATION);
    except
      on E:Exception do
      begin
        transaccion.Rollback;
        application.MessageBox('No se pudo dar de alta al cliente. ' + e.Message,
        'Clientes', MB_OK + MB_ICONINFORMATION);
      end;
    end;

Funciona bastante bien y se acaban la mayoría de los problemas.
Recordar, siempre hacer las operaciones contra la BBDD en una transacción. SIEMPRE.

Santiago.
__________________
Uno es responsable de lo que hace y de lo que omite hacer.
Responder Con Cita