Insert Problem
-
Hallo Community,
ich habe ein kleines Problem.
Ich möchte daten in meine Excel-Datei eintragen.
Für diesen Zweck arbeite ich mit der ODBC.
Nun das eigentliche Problem ist das schreiben mit insert.das lesen fluppt:
Database1->Connected=true; Query1->SQL->Clear(); Query1->SQL->Add("Select `Tabelle1$`.`Wert` From `Tabelle1$` group by `Tabelle1$`.`Zählpunkt`"); Query1->Open(); Query1->Active=true;Aber beim schreiben bekomme ich eine fehlermeldung :
Database2->Connected=true; Query2->SQL->Clear(); Query2->SQL->Add("insert into `test2$`"); Query2->SQL->Add("(`wert1`,`wert2`)"); Query2->SQL->Add("values ('E29','8')"); Query2->ExecSQL(); Query2->Active=true;EDBEngineError with message 'Key Violation. [Microsoft][ODBC Excel Driver] Operation muss eine aktualisierbare Abfrage verwenden.'. Process
stopped.Was mache ich falsch ?
Thx
Marek
-
Die Zeile
Query2->Active=true;solltest Du weglassen. Active auf true zu setzen ist dasselbe wie Open() aufzurufen. Und das ist nur für Statements gültig,
die eine Datenmenge zurückliefern, also SELECT-Statements. Kann aber sein, dass das nur ein Teil Deines Problems ist.Warum hast Du eigentlich überall Akzente ("`") verwendet?
Gruß,
Alexander
-
Vielen dank für die Schnelle antwort.
Warum hast Du eigentlich überall Akzente ("`") verwendet?
Weil ich es nicht anders gelernt habe (bzw. gelesen
).Dein Tipp mit den Active weglasen hat leider nichts gebracht selber fehler.
-
Werde mich mal regen... dann kann ich die beiträge editieren.
Das problem löse ich durch ne Access Tabelle, damit geht es (seltsamm).