Ich glaube es liegt daran das es einfach zu schnell geht...
Habe grad gemerkt das er erst nach dem 2. Durchlauf der While Schleife abrotzt und das mir folgender Fehlermeldung (siehe Anhang).
Ich schließe daraus, dass wenn er den ersten Durchlauf bzw. den ersten Eintrag ohne Probleme mach mit meinen
SQL Befehlen alles in Ordnung sein muss. Woran liegt es das das Prog trotzdem abstürtzt?? Muss ich dieses ExecSQL irgendwie wieder lösen oder leeren bzw. schließen ???
Delphi-Quellcode:
while tempstring<>'' do
begin
// überprüfung auf Fehlerbericht
if (cutrev(tempstring,'_')='ERROR') xor (cutrev(tempstring,'_')='OK') then
begin
zquery1.SQL.Add('INSERT INTO berichte (status) VALUES ("'+cutrev(tempstring,'_')+'")');
end
// überprüfen auf Durchlaufnummer
else if ((length(cutrev(tempstring,'_'))=1) xor (length(cutrev(tempstring,'_'))=2)) and not (cutrev(tempstring,'_')='0') then // überprüfen auf Durchlaufnummer
begin
zquery1.SQL.Add('INSERT INTO berichte (durchlauf) VALUES ('+cutrev(tempstring,'_')+')');
end
// Überprüfen auf Produktnummer
else if (length(cutrev(tempstring,'_'))>3) or (cutrev(tempstring,'_')='0') then
begin
zquery1.SQL.Add('INSERT INTO berichte (produktnummer) VALUES ('+cutrev(tempstring,'_')+')');
end
// Rest der Namens
else if not ((cutrev(tempstring,'_'))='') and not ((cutrev(tempstring,'_'))=' ') then
begin
zquery1.SQL.Add('INSERT INTO berichte (name) VALUES ("'+cutrev(tempstring,'_')+'")');
end;
// Zeit eintragen
//zquery1.SQL.Add('INSERT INTO berichte (zeit) VALUES ("'+datetimetostr((FileDatetoDatetime(fileage(filelistbox1.Directory+'\'+listbox1.Items[j]))))+'")');
tempstring:=cut(tempstring,'_');
zquery1.ExecSQL;
end;
MfG