Einzelnen Beitrag anzeigen

AnfängerDelphi

Registriert seit: 20. Mai 2010
25 Beiträge
 
#10

AW: Daten mit SQLDataSet in mysql-Datenbank schreiben

  Alt 2. Apr 2017, 18:34
Hallo,

Zitat von haentschman:
Was ist mit dir los? Gleich die Flinte ins Korn werfen wenn etwas nicht auf Anhieb funktioniert.
Ich habe leider nicht immer so viel Zeit zur Verfügung,weil ich dies noch neben meiner regulären Arbeit mache.

Hab mal ein bißchen herumexperimentiert und folgendes herausgefunden.

Wenn ich meine originale Insert-Anweisung so in das SQL-Fenster in der Datenbank direkt eintrage,funktioniert es so,wie es sein soll.
Nur müßte ich dann immer von Hand den Zähler setzen und dies möchte ich ja durch eine Schleife ersetzen.
Dies hier ist nur ein Beispiel zu meinem Original,aber identisch.

SQL-Code:
  insert into datenbank_neu.Tabelle5 (spalte1,spalte2,spalte3)
  select spalte5,0,spalte12
  from datenbank_alt.Tabelle20 where datenbank_alt.Tabelle20.reihenfolge = 5

  insert into datenbank_neu.Tabelle42 (spalte1)
  select spalte5
  from datenbank_alt.Tabelle47 where datenbank_alt.Tabelle55.reihenfolge = 5
Ich habe mir auch das mit SQLStoredProc durchgelesen,aber so richtig klar komme ich damit nicht.
Müßte dies dann so aussehen???
Delphi-Quellcode:
procedure TForm1.Button4Click(Sender: TObject);
var z : Integer;
begin
  for z := 5 to 10 do
  begin
  SQLStoredProc.Close;
  SQLStoredProc.CommandText :=
  'insert into datenbank_neu.Tabelle5 (spalte1,spalte2,spalte3)' +
  'select spalte5,0,spalte12' +
  'from datenbank_alt.Tabelle20 where datenbank_alt.Tabelle20.reihenfolge =' + IntToStr(z)+';';+
  'insert into datenbank_neu.Tabelle42 (spalte1)' +
  'select spalte5 ' +
  'from datenbank_alt.Tabelle47 where datenbank_alt.Tabelle55.reihenfolge =' + IntToStr(z)+';';
  SQLStoredProc.ExecProc;
Die Verbindung zur Datenbank stelle ich über einen separaten Button her,bevor ich den Button4 anklicke und die Anweisung ausführe.

Gruß AnfängerDelphi

Geändert von AnfängerDelphi ( 2. Apr 2017 um 18:37 Uhr)
  Mit Zitat antworten Zitat