【问题标题】:Connect to Azure analysis services from python从 python 连接到 Azure 分析服务
【发布时间】:2018-11-19 21:46:51
【问题描述】:

我有 Azure 分析服务实例,使用表格模型,我需要从 python 脚本中通过 DAX 或 MDX 查询数据。

我从 Azure 获得了一个如下所示的连接字符串:

Provider=MSOLAP;Data Source=asazure://eastus.asazure.windows.net/mymodel;Initial Catalog=mycatalog;User ID=myuser@mail.com;Password=mypass;Persist Security Info=True;Impersonation Level=Impersonate

我尝试使用pyodbc 连接到该连接字符串:

import pyodbc

connection_str = "Provider=MSOLAP;Data Source=asazure://eastus.asazure.windows.net/mymodel;" \
                 "Initial Catalog=mycatalog;User ID=myuser@mail.com;Password=mypass;" \
                 "Persist Security Info=True;Impersonation Level=Impersonate"

my_connection = pyodbc.connect(connection_str)

我收到了这个错误:

Traceback (most recent call last):
  File "C:/workspace/test.py", line 7, in <module>
    my_connection = pyodbc.connect(connection_str)
pyodbc.InterfaceError: ('IM002', '[IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (0) (SQLDriverConnect)')

Process finished with exit code 1

【问题讨论】:

  • 这是一个 OLEDB 驱动程序而不是 ODBC。也许试试pypi.org/project/pyoledb
  • 这个库好像不存在了:Could not find a version that satisfies the requirement pyoledb
  • 有解决办法吗?你能把python和azure AS连接起来吗?
  • 很遗憾,我没有找到任何库或接口,我们使用 C# 创建了一个 rest 接口,将 DAX 请求传递给 Analysis Services 并将结果以 JSON 形式返回。
  • @ItzikFriedland 我也有类似的要求。即使两年后,我也无法在 python 中找到连接 Azure 分析服务的方法。您能否分享您的 C# 代码摘要。

标签: python olap azure-analysis-services


【解决方案1】:

从这个答案: https://stackoverflow.com/a/33727190/1198321

adodbapi 库似乎支持连接到 OLEDB。

【讨论】:

    猜你喜欢
    • 2019-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多