Einzelnen Beitrag anzeigen

Delphi.Narium

Registriert seit: 27. Nov 2017
2.508 Beiträge
 
Delphi 7 Professional
 
#10

AW: Übergabe von QRY-Tabelleninhalte an andere Connection

  Alt 6. Jul 2023, 18:48
Es ist noch komplizierter:

Zwei Datenbanken zwischen denen über unterschiedliche Datenbankkomponenten kommuniziert werden soll.

Quelle = FireDac -> Ziel = ADO

bzw. umgekehrt.

Viele der BatchMovekomponenten wollen aber als Quelle und als Ziel 'nen Nachfolger von TDataSet, so dass die unterschiedlichen Datenbankkommponenten eigentlich "wurscht" sein sollten.

Nachfolger von TDataSet rein, Nachfolger von TDataSet raus.

Aus oben verlinktem StackOverFlow geklauter Source etwas angepasst und als ungetestete Idee gedacht:
Delphi-Quellcode:
var
  DataWriter: TFDBatchMoveDataSetWriter;
  DataReader: TFDBatchMoveDataSetReader;
  BatchMove: TFDBatchMove;
begin
  DataReader := nil;
  DataWriter := nil;
  BatchMove := nil;
  try
    DataReader := TFDBatchMoveDataSetReader.Create(nil);
    DataWriter := TFDBatchMoveDataSetWriter.Create(nil);
    BatchMove := TFDBatchMove.Create(nil);
    DataReader.DataSet := qryvoncon1;
    DataReader.Rewind := true;
    DataWriter.DataSet := qryvoncon2;
    BatchMove.Options := [poClearDestNoUndo, poCreateDest];
    BatchMove.Reader := DataReader;
    BatchMove.Writer := DataWriter;
    BatchMove.Execute;
  finally
    DataReader.Free;
    DataWriter.Free;
    BatchMove.Free;
  end;
end;
Lektüre dazu: FireDAC.TFDBatchMove Sample
  Mit Zitat antworten Zitat