Tabellen in Access kopieren
-
Hallo,
ich bin relativ unerfahren in C++ und möchte mit der Komponente TBatchMove eine neue Tabelle in MS-Access anlegen. Laut Hilfe soll das mit der Eigenschaft Mode = batCopy auch funktionieren. Leider verlangt der Objektinspektor für Destination eine bereits bestehende Tabelle. Was kann ich tun, um eine neue Tabelle in einer Access-Datenbank zu erzeugen?
Danke, Carsten
-
Hallo
dir ist schon klar, das "Move" etwas bestehendes bewegen heißt und nicht erzeugen?
Als Basis kannst du immer die SQL-Syntax nehmen, mit CREATE TABLE als Schlüsselwort.
bis bald
akari
-
Klar ist mir das bewusst, dass Move Verschieben bedeutet. In der Hilfe wird aber explizit darauf hingewiesen, dass "...die Zieltabelle mit der Struktur der Quelltabelle erstellt wird, falls sie nicht existiert..." Mit Create Tabelle habe ich es auch versucht, bin aber nicht an die Access-Datenbank herangekommen. Vielleicht weiß jemand, wie das genau geht.
Danke.
-
Carsten1961 schrieb:
Klar ist mir das bewusst, dass Move Verschieben bedeutet. In der Hilfe wird aber explizit darauf hingewiesen, dass "...die Zieltabelle mit der Struktur der Quelltabelle erstellt wird, falls sie nicht existiert..."
Damit ist gemeint, das die Zieltabelle neu erstellt wird, wenn diese nicht existiert. Aber die Quelltabelle muß in jedem Fall vorhanden sein.
Carsten1961 schrieb:
Mit Create Tabelle habe ich es auch versucht, bin aber nicht an die Access-Datenbank herangekommen. Vielleicht weiß jemand, wie das genau geht.
Danke.Du must das SQL-Kommando zusammensetzen und mit einem geeigneten Control/Funktion an des Server schicken. Im allgemeinen wird unter BCB dafür TQuery bzw. verwandte Controls genommen, die das Kommando in der Eigenchaft SQL mit der Methode ExecSQL() ausführen (wenn es ein SELECT-Kommando wäre, Open() nehmen).
bis bald
akari
-
Hallo,
In Destination muss lediglich ein gültiges TTable Objekt angegeben sein (also mit der Datenbank verbunden) eine Table in dieser Datenbank muss nicht existieren.
Ich würde dir aber auch lieber zu SQL raten (vieleicht über TQuery).
Wie wolltest du dich denn mit der Access-Datenbank verbinden.
-
Danke erst einmal. Die Quelltabelle ist natürlich vorhanden und verbinden will ich mich über TDatabase, das klappt soweit auch völlig problemmlos. Wie kann man denn eine Tabelle über TQuery erstellen, ich habe dazu nichts in der Hilfe gefunden?
Bis dann Carsten
-
Mit Hilfe des hier schon erwähnten SQL-Strings "CREATE TABLE ...". Da gibt es hier im Forum sowie im Datenbankforum bestimmt schon was.