TADOTable zur Laufzeit ändern!
-
Hallo,
ich möchte zur Laufzeit in einer AccessDB eine neue Spalte in eine Tabelle einführen! Nur leider will es nicht so wie ich

2 Komponeten meiner DB bestehen aus,
TADOQuery -> Query_Auftrag
TADOTable -> Table_Auftragmit ...
DataModule1->Query_Auftrag->SQL->Clear(); DataModule1->Query_Auftrag->SQL->Add("ALTER TABLE Auftrag ADD WebAuftrag CHAR(1)"); DataModule1->Query_Auftrag->ExecSQL();füge ich meiner DB in der AccessTabelle Auftrag eine neue Spalte "WebAuftrag" hinzu!
Soweit alles kein Thema. In der Access DB ist eine neuer Eintrag hinzugekommen.Nur sobald ich jetzt über..
DataModule1->Table_Auftrag->FieldByName("WebAuftrag")->As...darauf zugreifen möchte erhalte ich die Meldung, dass "WebAuftrag" nicht in Table_Auftrag enthalten ist. Da ich zwar in Query_Auftrag eine Spalte hinzugefügt habe, aber Table_Auftrag offensichtlich davon noch nichts weiß, suche ich nach einer Möglichkeit Table_auftrag beizubiegen das eine neue Spalte hinzugekommen ist.
Wenn ich in der "FormAnsicht" meiner DatenModule bin, wo Table_Auftrag und Query_Auftrag liegen, doppelt auf Table_Auftrag klicke und in der Attribusansicht (rechte Maustaste -> Alle Felder hinzufügen ... ) klicke erscheint das neue Attribut "WebAuftrag" in der Tablelle! Also muss es ja irgendwie gehen!
Ich hoffe jemand hat einen guten Tip für mich!thx a lot Sven
-
eigentlich sollte es reichen die Tabelle mal zu schließen und dann wieder zu öffnen
noch ein Tip: vergiss ADOTable und nimm stattdessen lieber ADOCommand und ADODataset, da ADOTable (und ADOQuery) nur für den Umstieg von den BDE-Komponenten auf ADO mit dabei ist
dem ADODataSet kann man mit CommandType = cmdTable und CommandText = "Tabellename" auch eine Tabelle zuordnen
und ADOCommand eignet sich für alle SQL-Befehle
-
cool danke das ging aber fix!
werd ich gleich mal testen.Der Tip hört sich gut an. Doch da ich das Programm hier nicht selber geschrieben habe, sondern nur einige Änderungen vornehmen muss. Könnte es doch wohl ein wenig aufwendiger werden! Aber trotzdem danke

Sven