Hi ich habe ein Problem mit folgender Funktion, die plötzlich nicht mehr funktioniert - dabei habe ich an der Funktion selbst garnichts geändert
Hier erstmal der Quellcode
Delphi-Quellcode:
function Tdm.Query(
SQL:widestring):integer;
var oldcmd:Tstrings;
i:integer;
begin
oldcmd:=tstringlist.Create;
oldcmd:=qry.SQL;
qry.SQL.Clear;
// Qry ist mein ADOquery
qry.SQL.add(
sql);
// Der Wert des Parameters SQL, der den Fehler verursacht, lautet:
// INSERT INTO Bonpositionen (Eingabe, BonText, VKPreis, OrigVKPreis, MwSt, ArtNr, BonID, Menge, Rabatt, RabattText) VALUES ('0101000001', 'DummyMarke Shirt 1/2 DUMMY Artikel', 10, 10, 1.38, '0101000001', 34, 1 , 0, '')
try
i:=qry.ExecSQL;
Result:=i;
except
Result:=-1;
end;
if (qry.sql.IndexOf('
UPDATE')>=0)
or (qry.sql.IndexOf('
INSERT')>=0)
and (Result>0)
then
try
SQLLog(
sql,i);
except;
end;
qry.SQL:=oldcmd;
oldcmd.Destroy;
end;
Kann da der
SQL-String zu lang sein? - Ich weiß echt nicht weiter..
also Danke für eure Hilfe..