如何使用Python遍历MS Access表

莫方戈
from win32com.client import Dispatch

oAccess = Dispatch("Access.Application")
oAccess.Visible = False
oAccess.OpenCurrentDatabase(my_db)
oDB = oAccess.CurrentDB

for tbl in oDB.TableDefs:
     print(table.Name)
     tbl.RefreshLink

我也做了:

for tbl in oAccess.TableDefs:
     print(table.Name)
     tbl.RefreshLink

错误:“函数”对象没有属性“ TableDefs”

我开始了解如何使用win32com操作Windows,但是由于某种原因,似乎无法识别“ .TableDefs”。我会以错误的方式处理吗?

我知道这可以在VBA中完成。我的任务是将所有内容切换到Python。

埃里克·A

在这里,您的第一个错误是VBA知道CurrentDb是一个方法,并且无法将方法分配给变量,因此它将调用该方法。

但是,Python在将方法分配给变量方面存在0个问题,因此就这样做了。这意味着您需要括号才能调用该方法:

oDB = oAccess.CurrentDb()

这样可以解决当前的问题(同样适用tbl.RefreshLink,这可能应该是tbl.RefreshLink())。

此外,您永远不会table定义tbl,因此您可能想要print(tbl.Name)

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Access VBA遍历表

来自分类Dev

如何使用 Java 访问 MS Access 查询(非普通表)?

来自分类Dev

如何使用 .net 在 ms access 中锁定表

来自分类Dev

如何使用例如pypyodbc将MS Access表导出到Python中的csv文件中

来自分类Dev

如何使用例如pypyodbc将MS Access表导出到Python中的csv文件中

来自分类Dev

MS Access中的临时表

来自分类Dev

MS ACCESS交叉表数据

来自分类Dev

MS Access表写入冲突

来自分类Dev

MS Access表写入冲突

来自分类Dev

如何使用Access VBA定义要从Excel导出到MS Access表的列数?

来自分类Dev

如何使用pyodbc将MS Access连接到Python

来自分类Dev

如何循环访问MS Access DB中的所有表

来自分类Dev

如何在MS Access中联接3个表

来自分类Dev

如何引用MS Access表的某些列字段

来自分类Dev

如何同步两个 MS Access 表?

来自分类Dev

使用SQL查询在MS Access中获取表结构?

来自分类Dev

在MS-ACCESS中使用“查找”表进行更新查询

来自分类Dev

使用SQL查询在MS Access中获取表结构?

来自分类Dev

在MS ACCESS 2010中创建表-使用Oracle SQL查询

来自分类Dev

使用C#在MS Access中选择多个表

来自分类Dev

在 MS Access 中使用 VBA 查询转置表

来自分类Dev

带VBA的MS Access链接表

来自分类Dev

MS Access:选择表的最大列值

来自分类Dev

MS Access合并两个表

来自分类Dev

将JSON文件导入MS Access表

来自分类Dev

MS Access 2013:多次联接表

来自分类Dev

不带主键的MS Access查询表

来自分类Dev

插入数据时,MS Access锁定表

来自分类Dev

来自Access MS DB的表查询