Funktioniert test2, wenn Du die Funktion dahingehend änderst?
Delphi-Quellcode:
function test2(testzahl:integer): string;
var
a: integer;
begin
Form1.ZQuery1.SQL.Clear;
for a := 1 to testzahl do begin
Form1.ZQuery1.SQL.add(Format('Insert into daten2 (zahl) values (%d);',[a]));
end;
Form1.ZQuery1.ExecSQL;
end;