CSV 文件的 Python 列表必须从 pyodbc 加载到 Access 中。我不明白如何编写 SQL 字符串来容纳一个变量,而不是显式定义 INTO TABLE 和 FROM CSV 文件。
单个 CSV 的全功能 SQL 语句如下所示:
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()
心有法竹
相关分类