Me conecto a la base de datos usando el componente ADOConnection.
Los Procedimientos que uso tanto para conectarme como para intentar borrar registros son los siguientes:
Código:
Código Delphi
[-]
procedure TDM.AbrirDBPrincipal;
Var
DataSource: String;
begin
Try
ADOConPrincipal.Connected := False;
ADOConPrincipal.LoginPrompt := False;
DataSource := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' +
PathProgram + '\' + NombreDB + '.mdb' + ';' +
'Persist Security Info=False;' +
'Jet OLEDB:Database Password=xxx';
ADOConPrincipal.ConnectionString := DataSource;
ADOConPrincipal.CursorLocation := clUseServer;
ADOConPrincipal.Connected := True;
Except
on E: Exception do
begin
MessageDlg(E.Message, mtWarning, [mbOk], 0);
Application.Terminate;
end;
End;
end;
procedure TDM.EliminarExcluidosVentas;
var
cSQL: String;
begin
Try
ADOComPrincipal.Connection := ADOConPrincipal;
With MDExcluidos do
begin
First;
While Not Eof do
begin
cSQL := 'DELETE FROM SalesTemp ' +
'WHERE fIdDCS LIKE ' +
QuotedStr(FieldByName('fIdCodigo').AsString);
ADOConPrincipal.BeginTrans;
ADOComPrincipal.CommandText := cSQL;
ADOComPrincipal.Execute;
ADOConPrincipal.CommitTrans;
Next;
end;
end;
Except
on E: Exception do
begin
ADOConPrincipal.RollbackTrans;
MessageDlg(E.Message, mtWarning, [mbOk], 0);
raise;
end;
end;
end;
La última prueba que hice ayer fue usar la funcion QuotedStr(), y tampoco me funcionó.