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.