Moin...
Zitat:
Also ich kann mir nicht vorstellen, dass eine For Schleife oder irgendeinanderes Konstrukt in Delphi die Verarbeitung 2er Insert Statements unmöglich macht.
...genauso sehe ich das auch.
Ich tippe auf ein klassisches Layer8 Problem.
Das hatte ich schon in #9 probiert...
Delphi-Quellcode:
procedure TForm1.Button4Click(Sender: TObject);
var z : Integer;
begin
for z := 5 to 10 do
begin
SQLDataSet1.Close; // neu
SQLDataSet1.CommandText :=
'insert into datenbank_neu.Tabelle5 (spalte1,spalte2,spalte3)' +
'select spalte5,0,spalte12' +
'from datenbank_alt.Tabelle20 where datenbank_alt.Tabelle20.reihenfolge =' + IntToStr(z)+';';
SQLDataSet1.ExecSQL;
SQLDataSet1.Close; // neu
SQLDataSet1.CommandText := // diese Zeile hat in Beitrag #2 gefehlt.
'insert into datenbank_neu.Tabelle42 (spalte1)' +
'select spalte5 ' +
'from datenbank_alt.Tabelle47 where datenbank_alt.Tabelle55.reihenfolge =' + IntToStr(z)+';';
SQLDataSet1.ExecSQL;
Zitat:
Exception-Klasse TDBXError mit Meldung '
You have an error in your SQL syntax; check the manual that corresponds to your
MySQL server version for the right syntax to use near '
.datenbank_alt.Tabelle47 where datenbank_alt.Tabelle55.reihenfolge = 5' at line 1'. Prozess
...steht immer noch die Fehlermeldung im Raum.
Weiterhin hatte ich schon 2 Mal gefragt wie die
SQL Statements an den ExecSQL ausehen (
nicht aus den Quelltext sondern aus dem Debugger) und die exakte Fehlermeldung an diesen Punkten...
@AnfängerDelphi: Wie sollen wir helfen, wenn unsere Fragen nicht exakt beantwortet werden und die Tipps etwas gebracht haben oder nicht. Wir können nicht zur Laufzeit über deine Schulter schauen...