Ich habe ein Problem mit der Aktualisierung einer vorhandenen Access-Tabelle. Ich habe eine Access-Datenbank, die einige .log-Dateien mit zwei Spalten sortieren soll: filename
und filedate
. Ich habe den Dateinamen und Dateidatum in einer Excel-Datei, die ich aus dem Sortieren durch 100+ LOG-Dateien vorgenommen haben, so gibt es mehr als 100 Dateien, die verbunden werden sollenAktualisieren der vorhandenen Access-Datei Syntaxfehler
ich einen Fehler für den Zugriff auf alle Zeit und habe viele verschiedene Dinge ausprobiert. Das Problem ist, dass ich nicht weiß, wie man die Syntax schreibt. Kann mir bitte jemand damit helfen? Ich möchte A -> filename
und B -> filedate
, so dass jedes Paar seine eigene ID bekommt
import pypyodbc
UDC = r'C:\Users\Kaiser\Documents\Access\UDC.accdb'
# DSN Connection
#constr = " DSN=MS Access Database; DBQ={0};".format(UDC)
# DRIVER connection
constr = "DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};UID=admin;UserCommitSync=Yes;Threads=3;SafeTransactions=0;PageTimeout=5;MaxScanRows=8;MaxBufferSize=2048;FIL={MS Access};DriverId=25;DefaultDir=C:/USERS/DOCUMENTS/ACCESS;DBQ=C:/USERS/DOCUMENTS/ACCESS/UDC.accdb"
# Connect to database UDC and open cursor
db = pypyodbc.connect(constr)
cursor = db.cursor()
sql = "UPDATE * INTO [tblLogfile]" + \
"FROM [Excel 8.0;HDR=YES;Database=C:/Users/Documents/Access/Excel.xls].[Tab$];"
cursor.execute(sql)
db.commit()
cursor.close()
db.close()
Fehler
pypyodbc.ProgrammingError: ('42000', '[42000] [Microsoft][ODBC Microsoft Access Driver] Syntax error in UPDATE statement.')
zunächst entscheiden, was Sie tun möchten: https://stackoverflow.com/questions/2002500/what-are-differences-between-insert-and-update-in-mysql - Lesen Sie dann die entsprechende Syntax nach. – Andre
@andre Ich habe über die UPDATE-Anweisung gelesen, aber ich verstehe nicht, wie ich es in meine SGL-Variable schreiben sollte, es gibt keine Beispiele, wie man die Excel-Datei mit dem Zugriff verbindet, und das versuche ich zu tun. – fili
Aber dann weiß ich nicht, ob es mein Weg ist der beste Weg, um diese Übertragung zu tun, so, wenn Sie einige Vorschläge haben, ist froh, zu hören – fili