我正在编写一个需要访问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配置对话框,设置数据源名称,并等待用户输入信息并关闭对话框.我怎么能避免这种情况?
为了通过 ODBC 访问 SAS 数据,您需要连接到某种正在运行的 SAS 会话;您无法使用 SAS ODBC 驱动程序直接访问 SAS 数据表文件。
请参阅SAS ODBC 驱动程序指南的“我需要什么软件?”部分。
您的问题并未表明您正在尝试通过正在运行的 SAS 产品访问 SAS 数据。SAS ODBC 驱动程序指南应告诉您如何根据要通过其进行连接的 SAS 产品设置连接。
| 归档时间: |
|
| 查看次数: |
12245 次 |
| 最近记录: |