Python odbc; 如何在odbc中查找所有表

use*_*103 8 python odbc

有没有办法通过odbc连接获取所有可用表的列表.

我必须从沿途生成的表中获取数据,因此我事先不知道这些名称.

Syl*_*oux 13

(此答案时ODBC驱动程序未指定)
来自PyODBC文档:

大多数ODBC目录函数都可用作Cursor对象的方法.结果以SELECT结果的形式显示在正常获取的行中.将光标页面介绍这些,但它可能有助于指微软的ODBC文档了解更多详情.

cnxn   = pyodbc.connect(...)
cursor = cnxn.cursor()
for row in cursor.tables():
    print row.table_name
Run Code Online (Sandbox Code Playgroud)

编辑:使用"Anaconda ODBC"指定的OP:

据我所知,没有从PyWin32-odbc直接访问这些数据(因为我认为这是Anacondas使用的).根据您的基础数据库,它们可能是您可能查询的"系统表".喜欢sys.objects或者dbo.sysobjects或者information_schema.tables......(RDBMS供应商在该领域非常有创意).

有关更多信息,请参阅底层RDBMS的文档.或者(就我自己而言,我会强烈推动),提出安装更多功能的ODBC驱动程序的请求...