Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: Milvus am Februar 28, 2019, 16:26:29

Titel: ADO Zugriff auf Text per Connection
Beitrag von: Milvus am Februar 28, 2019, 16:26:29
Tach in die Runde:

Folgendes ist mir gelungen:

eine Schema.ini für eine CSV festzulegen und die Daten per ADO mittels SQL-Syntax direkt in ein Recordset einzulesen.

Nun möchte ich die Daten nach Access importieren...
(Aber halt!!! Ich suche keine Alternative, die kenne ich)

Ich frage mich, ob man mit reiner SQL-Syntax hier arbeiten kann.

Hier mal das Auslesen in ein RS (bestechend simpel):

rs.Open "SELECT * FROM [Test.csv] WHERE [Feld1] = 'Hallo'"

Ich suche nach etwas, wie diesem Klassiker:

SELECT INTO TBL1 FROM TBL2

Der Befehl über ein Command-Objekt läuft (natürlich) so nicht, da dieses nur eine Connection kennt, und das ist entweder der Provider für die Textdatei (die Quelle) oder eben die Access-DB (das Ziel).

Vermute, ADO.NET kann sowas aber wie siehts bei Access aus und kann man so ne Bib evtl. einbinden?

Danke für Hilfe
Titel: Re: ADO Zugriff auf Text per Connection
Beitrag von: PhilS am Februar 28, 2019, 16:42:19
Zitat von: Milvus am Februar 28, 2019, 16:26:29
eine Schema.ini für eine CSV festzulegen und die Daten per ADO mittels SQL-Syntax direkt in ein Recordset einzulesen.
[....]
Ich frage mich, ob man mit reiner SQL-Syntax hier arbeiten kann.
Denke Schon. Schau dir mal die IN-Clause (https://docs.microsoft.com/en-us/office/vba/access/concepts/miscellaneous/in-clause-microsoft-access-sql) in der Jet-SQL-Dokumentation an.
Titel: Re: ADO Zugriff auf Text per Connection
Beitrag von: ebs17 am Februar 28, 2019, 17:01:05
Für eine Tabellenerstellungsabfrage wäre Dein Recordset ungeeignet.
SELECT * INTO NeueTabelle
FROM [Text;;FMT=Delimited;HDR=yes;IMEX=2;CharacterSet=850;DATABASE=C:\temp\].[datei01.txt]

Das sollte mit Unterstützung durch die Schema.ini sowohl per DAO als auch für ADODB funktionieren.
Titel: Re: ADO Zugriff auf Text per Connection
Beitrag von: Milvus am März 01, 2019, 13:49:53
Danke für die Tipps, ich melde mich mit Rückmeldung, sobald ich dazu gekommen bin