使用Python将数据插入MS Access数据库

0792年

我正在尝试使用Python将值插入Microsoft Access数据库。

我可以按如下所示插入值:

df = pd.read_excel(xlsx, sheets[0])

for i in range(1, len(sheets)):
    data = []
    data = pd.read_excel(xlsx, sheets[i])
    df = df.append(data)

k = (df.iat[3,0])
conn = pyodbc.connect(r'Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ= \\.....\Stat_tracker.accdb;')
cursor = conn.cursor()
cursor.execute("INSERT INTO ABCD (Serial) VALUES ('xxxx')")

cursor.execute('select * from ABCD')
for row in cursor.fetchall():
    print(row)

我想使用循环来遍历多个记录。有没有更好的办法?

当我将cursor.execute代码替换为

cursor.execute("INSERT INTO ABCD (Serial) VALUES (%s)",(k,))

它抛出以下错误:

pyodbc.ProgrammingError :(“ 42000”,“ [42000] [Microsoft] [ODBC Microsoft Access驱动程序]
查询表达式'%s'中的语法错误。(-3100)(SQLPrepare)”)

显然,我缺少使用%s也许还有另一个占位符?

这应该是一个简单的修复程序,我对语法不太熟悉。

帮助新手吗?

克里斯

Python的数据库API规范列出了几种进行参数化的方法

  • qmark:问号样式,例如 ...WHERE name=?
  • numeric:数字,位置样式,例如 ...WHERE name=:1
  • named:命名样式,例如 ...WHERE name=:name
  • format:ANSI C printf格式代码,例如 ...WHERE name=%s
  • pyformat:Python扩展格式代码,例如 ...WHERE name=%(name)s

大多数实现只支持一个或两个。看起来像 pyodbc使用qmark风格的参数,而不是format风格。

尝试以下方法:

cursor.execute("INSERT INTO ABCD (Serial) VALUES (?)", (k,))

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

插入到ms Access数据库

来自分类Dev

使用SQL将数据插入MS Access数据库表

来自分类Dev

使用.NET Core将数据插入Access数据库

来自分类Dev

将记录插入Access数据库

来自分类Dev

使用vb.net将MS Access行插入数据库

来自分类Dev

如何在MS Access中使用VBA将值插入数据库表

来自分类Dev

C#将数据从表单插入Access数据库

来自分类Dev

优化将数据插入Access数据库代码中

来自分类Dev

无法将数据插入数据库ms-access vb

来自分类Dev

Access 数据库的 sql

来自分类Dev

Access数据库事务插入限制

来自分类Dev

MS Access数据库错误

来自分类Dev

MS Access防止数据库锁定

来自分类Dev

MS Access数据库SQL查询

来自分类Dev

MS Access 数据库监控查询

来自分类Dev

无法将电话号码插入数据库(MS Access文件)

来自分类Dev

如何将复选框“ check”插入我的MS Access数据库

来自分类Dev

C#.net 无法将记录插入到 ms access 数据库中

来自分类Dev

如何将值插入数据库(Microsoft Access)?

来自分类Dev

将货币插入 Access 数据库 C#?

来自分类Dev

使用foreach将数据写入Access数据库

来自分类Dev

使用C#,如何使用循环在MS Access数据库中插入递增数字?

来自分类Dev

使用Tuples的Python列表将多行插入数据库

来自分类Dev

使用Tuples的Python列表将多行插入数据库

来自分类Dev

使用c#将数据表插入Access数据库

来自分类Dev

使用C#将数据插入Access数据库无法正常工作

来自分类Dev

MS Access数据库使用VBA和SQL查询在列上插入值

来自分类Dev

使用 NetBeans 在 MS Access 数据库中不会发生插入删除更新

来自分类Dev

Python Pyodbc连接到MS Access数据库

Related 相关文章

热门标签

归档