Thema: Delphi Access zu langsam

Einzelnen Beitrag anzeigen

jensw_2000
(Gast)

n/a Beiträge
 
#2

Re: Access zu langsam

  Alt 6. Jul 2005, 00:19
Mit diesem "kleinen" Insert solltest du über eine 100MBit Verbindung mehrere Hundert Datensätze pro Sekunde in die DB Schieben.

Das Problem liegt sicher woanders.

Hast du schon mal probiert die DB testweise auf deinen lokalen PC zu legen, um Netzwerk- oder Serverprobleme auszuschließen?

Hängen eventuell irgendwelche datensensitiven Komponenten an einer Datasource die mit deiner ADOQuery4 verbunden ist ? Wenn ja, dann hänge die Datasource ab oder verbaue DisableControls und EnableControls.
z.B. so ...

Delphi-Quellcode:
function TForm1.WriteSNr: Boolean;
var
  i: Integer;
begin
  try
    try
     Result := False; // init
     ADOQuery4.DisableControls; // <<<<
     for i := 0 to ListBox1.Count - 1 do
       begin
         ADOQuery4.Close;
         ADOQuery4.SQL.Text := 'INSERT INTO Tabelle4 (Seriennummer) ' +
                               'VALUES (:PSeriennummer)';
         ADOQuery4.Parameters.ParamByName('PSeriennummer').Value := ListBox1.Items.Strings[i];
         ADOQuery4.ExecSQL;
         Result := True;
       end;
    finally
      ADOQuery4.EnableControls; // <<<<
    end;
  except
    Result := False;
  end;
end;
Wenn beides nicht hilft versuche mal deine Access DB zu reparieren und zu komprimieren bzw. aktuelle JET Treiber zu installieren.

Sorry,
was Genaueres kann ich dir erstmal nicht anbieten.
0,3 Sek pro Datensatz ist extrem zuviel und deine INSERT Function sieht OK aus.

Schöne Grüße,
Jens

  Mit Zitat antworten Zitat