尝试编写一个简单的程序来解析Excel工作表,然后将数据存储在Access数据库中。
我不确定是什么问题,我尝试重命名参数,仔细检查拼写等。
{{1}}
这给了我错误:
pyodbc.Error :('07002','[07002] [Microsoft] [ODBC Microsoft Access驱动程序]
参数太少。期望值5.(-3010)(SQLExecDirectW)')
答案 0 :(得分:0)
您可以使用
sql = "INSERT INTO MSDB ([SalesOrder], [SiteNumber], [SiteName], [Customer],ShipDate])
VALUES (?,?,?,?,?)"
cursor.execute(sql,(SO, SNM, Custom, SD, SN))
它将为您提供帮助
答案 1 :(得分:0)
由于需要将int转换为float的任何原因,我都可以使用它。 这是最适合我的代码。
params = (SalesO.value, SiteNum.value, SiteN.value, Cust.value, ShipD.value)
params = [float(x) if type(x) is int else x for x in params] #Convert all int items to floats
conn = pyodbc.connect(r'Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=C:\Users\llippincott\Desktop\MS DB_be.accdb;')
cursor = conn.cursor()
cursor.execute('select * from MSDB')
cursor.execute("INSERT INTO MSDB (SalesOrder, SiteNumber, SiteName, Customer, ShipDate) VALUES (?,?,?,?,?)", (params))
conn.commit()