Hallo,
ich hatte mir schlicht Tutorials im Netz gesucht und mich an den Beispielen entlang gearbeitet. Nachdem ich gestern Office in 64 bit installierte war es sofort möglich mit dem Code-Schnipsel den Treibernamen auszulesen. Mit der korrekten Schreibweise hat das dann auch geklappt. Man kann dann die Daten mit SQL-Statements im Code filtern und in ein Array in Python einlesen. Auf die Art war es problemlos möglich die notwendigen 16k Datensäte aus access auszulesen (geht relativ schnell). Da ich gegen die json API Anfragen mit maximal 50 Datensätzen absetzen darf bastele ich grade daran das entsprechend aufzuteilen. Es ist nur Testcode um überhaupt auf den Weg zu kommen. Ich poste den hier damit andere das auch finden können.
Danke für das Engagement und Interesse an meinem Post
import pyodbc
from itertools import islice
try:
con_string = r'DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=Pfad zu Datei;'
conn = pyodbc.connect(con_string)
cur = conn.cursor()
cur.execute('SQL-Code;')
rows = cur.fetchall()
for i in range(0, len(rows), 50):
batch = list(islice(rows, i, i + 50))
print(f"Split #{i // 50 + 1}") # gibt die aktuelle Nummer des Splits aus
for row in batch:
print(row)
print(f"Total number of rows: {len(rows)}") # gibt die Gesamtanzahl der Zeilen aus
except pyodbc.Error as e:
print("Error in Connection")
PS: Wäre wohl insgesamt sauberer wenn man statt access eine sql oder mysql db nimmt. Aber das ist halt hier grade nicht so....