如何创建与SAS的ODBC连接?

Chr*_* B. 7 python odbc sas

我正在编写一个需要访问SAS数据的程序.我已经下载了SAS的ODBC驱动程序并安装了它们,但我需要能够以编程方式动态创建ODBC连接.以下代码(在Python中)似乎应该工作:

import ctypes

ODBC_ADD_DSN = 1        

def add_dsn(name, driver, **kw):
    nul, attrib = chr(0), []
    kw['DSN'] = name
    for attr, val in kw.iteritems():
        attrib.append('%s=%s' % (attr, val))

    return ctypes.windll.ODBCCP32.SQLConfigDataSource(0, ODBC_ADD_DSN, driver, nul.join(attrib)) == 1

print add_dsn('SAS Test', 'SAS', description = 'Testing SAS')
Run Code Online (Sandbox Code Playgroud)

但它会弹出SAS ODBC配置对话框,设置数据源名称,并等待用户输入信息并关闭对话框.我怎么能避免这种情况?

Mar*_*und 3

为了通过 ODBC 访问 SAS 数据,您需要连接到某种正在运行的 SAS 会话;您无法使用 SAS ODBC 驱动程序直接访问 SAS 数据表文件。

请参阅SAS ODBC 驱动程序指南的“我需要什么软件?”部分。

您的问题并未表明您正在尝试通过正在运行的 SAS 产品访问 SAS 数据。SAS ODBC 驱动程序指南应告诉您如何根据要通过其进行连接的 SAS 产品设置连接。