Hallo Leute,<br>
<br>
ich habe ein großes Problem vor mir. Seit ein paar Stunden versuche ich ein ADO-Fehler der durch einen Falschen SQL-String verursacht wird, zu kapseln. Der Fehler sieht vie folgt aus "falsche Spaltenname"<br>
Das solte doch mit dem Try-Except-Block gehen, wo bei Auftreten von einem Fehler die Anweisung zwischen except und end ausgeführt wird.
<b>Was mach ich den falsch!?!<br>
Warum wird die except Anweisung nicht ausgeführt</b><br>
Mein Auschnitt aus dem Quelltext:<br>
begin<br>
Delete(zeile,2+x[i],10);<br>
sqlstr := Form1.Parameter['SQL'];<br>
try<br>
Erg.Active := False;<br>
Erg.SQL.Clear;<br>
Erg.SQL.Add('Select ...);<br>
Erg.Active := True;<br>
except<br>
on EDatabaseError do<br>
begin<br>
CloseFile(f1);<br>
CloseFile(f2);<br>
DeleteFile(Projekt['PROJEKTNR'] + '.tec');<br>
Form9.Close;<br>
messagedlg('Fehlerhaftes String', mterror, [mbok],0);<br>
Exit;<br>
end;<br>
end;<br>
wert := Erg['var'];<br>
Str(wert:10:4,s2);<br>
Insert(s2,zeile,2+x[i]);<br>
end;<br>
end;<br>
Danke im voraus! Krys
<br>
ich habe ein großes Problem vor mir. Seit ein paar Stunden versuche ich ein ADO-Fehler der durch einen Falschen SQL-String verursacht wird, zu kapseln. Der Fehler sieht vie folgt aus "falsche Spaltenname"<br>
Das solte doch mit dem Try-Except-Block gehen, wo bei Auftreten von einem Fehler die Anweisung zwischen except und end ausgeführt wird.
<b>Was mach ich den falsch!?!<br>
Warum wird die except Anweisung nicht ausgeführt</b><br>
Mein Auschnitt aus dem Quelltext:<br>
begin<br>
Delete(zeile,2+x[i],10);<br>
sqlstr := Form1.Parameter['SQL'];<br>
try<br>
Erg.Active := False;<br>
Erg.SQL.Clear;<br>
Erg.SQL.Add('Select ...);<br>
Erg.Active := True;<br>
except<br>
on EDatabaseError do<br>
begin<br>
CloseFile(f1);<br>
CloseFile(f2);<br>
DeleteFile(Projekt['PROJEKTNR'] + '.tec');<br>
Form9.Close;<br>
messagedlg('Fehlerhaftes String', mterror, [mbok],0);<br>
Exit;<br>
end;<br>
end;<br>
wert := Erg['var'];<br>
Str(wert:10:4,s2);<br>
Insert(s2,zeile,2+x[i]);<br>
end;<br>
end;<br>
Danke im voraus! Krys
Comment