Список Python CSV-файлов должен быть загружен в Access из pyodbc.Я не понимаю, как написать строку SQL для размещения переменной вместо явного определения INTO TABLE и файла FROM CSV.
Полнофункциональный оператор SQL для одного CSV выглядит следующим образом:
strSQL = "SELECT * INTO [TableName] FROM
[text;HDR=Yes;FMT=Delimited(,);" +
"Database=C:\Path\To\Folder].first.csv;"
Может ли этот оператор быть изменен для размещения переменной, представляющей CSV для импорта (т. Е. Оба INTO [TableName] и базе данных FROM)?
Я понимаю, что это какая-то форма, похожая на эту:
strSQL ="SELECT * INTO ? FROM Database=?",[csv_string, csv]
, но сложный оператор FROM, который ссылается на базу данных, заставляет меня чесать голову.
# DATABASE CONNECTION
access_path = "C:\Path\To\Access\\DB.mdb"
con = pyodbc.connect("DRIVER={{Microsoft Access Driver
(*.mdb,*.accdb)}};DBQ={};".format(access_path))
for csv in csv_list:
# RUN QUERY
strSQL = "SELECT * INTO [TableName] FROM
[text;HDR=Yes;FMT=Delimited(,);" +
"Database=C:\Path\To\Folder].first.csv;"
cur = con.cursor()
cur.execute(strSQL)
con.commit()
con.close()