使用PyODBC在表中选择列名

Jam*_*mes 3 python ms-access ms-access-2007 pyodbc

我正在编写一个Python程序,使用PyODBC从Microsoft Access mdb文件中选择一些数据.

我需要发现几个不同表的列名.在SQL Server中,这可以通过使用类似的查询来完成

SELECT c.name FROM sys.columns c, sys.tables t
WHERE c.object_id = t.object_id
AND t.name = tableName
Run Code Online (Sandbox Code Playgroud)

但该查询在Access中不起作用.同

SELECT MSysObjects.Name FROM MSysObjects
WHERE (((MSysObjects.Flags)=0) AND ((MSysObjects.Type)=1))
ORDER BY MSysObjects.Name
Run Code Online (Sandbox Code Playgroud)

我可以获得一个非链接表名列表,但MSysObject似乎不包含列名列表.

有没有办法使用SQL来获取Access数据库中表的列名?

Jam*_*mes 6

我无法找到SQL查询来完成此任务.但是,我确实发现PyODB有一个可以返回列列表的游标方法

# columns in table x
for row in cursor.columns(table='x'):
    print row.column_name
Run Code Online (Sandbox Code Playgroud)