Mit TCustomADODateaSet.Clone Datensatz kopieren



  • Hi,

    ich hab folgendes probiert:

    this->ADOQuery1->Active = false;
    this->ADOQuery2->Active = false;
    this->ADOQuery1->SQL->Clear();
    this->ADOQuery1->SQL->Add("SELECT * FROM " + CloneTable);
    this->ADOQuery2->SQL->Clear();
    this->ADOQuery2->SQL->Add("SELECT * FROM " + NewTable);
    this->ADOQuery1->Active = true;
    this->ADOQuery2->Active = true;
    
    this->ADOQuery2->Clone(this->ADOQuery1,ltOptimistic);
    

    Über entsprechende TDataSource lasse ich mir die Querys in DBGrids anzeigen. Beide sind erwartungsgemäß nach dem Clone() identisch. Aber die Daten stehen nicht in der NewTable drin, sodass diese leer bleibt. Bekomme ich die Daten jetzt irgendwie einfach auch in die Tabelle rein?



  • Hallo,

    das Thema hatten wir doch schon hier besprochen.

    INSERT INTO tab_new (field)
    SELECT (field) FROM tab_old;
    

    VlG



  • Jaha, der feine Unterschied liegt ja darin, dass wir dort ein SQL-Kommando festgestellt haben, hier nutze ich aber eine Funktion meiner ADO-Blöcke. Und die Frage ist, ob sich dieses Thema rein mit diesen Funktionen umsetzen lässt.



  • Hallo,

    ich hab keinen Builder zur Hand, weiß es also nicht!
    Aber wenn ich es bräuchte würde ich nach Copy oder Duplicate suchen.

    VlG



  • Ist ja nich so, dass ich nicht schon gesucht hätte...
    Abgesehen davon, dass ich schon ne andere Lösung für mein Thema gefunden hab, würd mich halt interessieren, wie ich den Datensatz aus dem Query geschlossen in die Datenbank schieben kann.


Anmelden zum Antworten