Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

CSV per SQL einlesen und auslesen / ADO

Begonnen von Milvus, April 01, 2019, 12:54:32

⏪ vorheriges - nächstes ⏩

Milvus

Guten Tag,

ADO bietet ja die wunderbare Möglichkeit, per SQL direkt auf externe Datenquellen zuzugreifen.

Ich möchte meinen CSV-Standard darauf umstellen und suche noch nach der besten Möglichkeit. Ein Recordset möchte ich vermeiden!

Zurzeit habe ich folgende Lösung, die noch nicht richtig läuft:

Command.CommandText = "SELECT * INTO TBL1 FROM [text;Database=" & Pfad & "].ATB_CSV2.csv"

D.h. ein ADO.Command-Objekt. Der Code läuft fehlerfrei druch, die Tabelle mit der Spalte wird gebildet, ist aber leer. Die INhalte werden also nicht gelesen. Warum?

CSV:
Test1;Test2
Eins;Hallo
Zwei;Hallo


Im gleichen Pfad habe ich eine Shema.INI liegen, in der die Datei spezifiziert ist:

[ATB_CSV2.csv]
ColNameHeader=True
Characterset=UNICODE
Format=Delimited( ;)
Col1="Test1" Char
Col2="Test2" Char

Ergebnis:
Test1;Test2

keine Werte.

Die Shema.Ini wird meiner Meinung nach bereits angesprochen.

Jemand eine Idee?

PhilS

Zitat von: Milvus am April 01, 2019, 12:54:32
ADO bietet ja die wunderbare Möglichkeit, per SQL direkt auf externe Datenquellen zuzugreifen.
Wirklich? Ich dachte das läuft dann über die Jet-Engine.

Zitat von: Milvus am April 01, 2019, 12:54:32Command.CommandText = "SELECT * INTO TBL1 FROM [text;Database=" & Pfad & "].ATB_CSV2.csv"
Ich sehe den Dateinamen mit den zwei Punkten darin hinter der schließenden, eckigen Klammer als potentiell problematisch an.
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

Milvus

Stimmt, die Überschrift müsst Jet heißen.

Wenn ich die Punkte beeinfluse bekomme ich entweder einen Syntaxfehler oder die Meldung, dass die Datenbank nicht gefunden wurde.

Milvus

Aber in der Deklaration:

Dim Comm As New ADODB.Command

Das ist vielleicht auch schon die Antwort? Ich versuche was zu verbinden, das nicht zusammen gehört!?