How can I create an ODBC connection to SAS?(如何创建与 SAS 的 ODBC 连接?)
问题描述
我正在编写一个需要访问 SAS 数据的程序.我已经下载了 SAS 的 ODBC 驱动程序并安装了它们,但我需要能够以编程方式即时创建 ODBC 连接.以下代码(在 Python 中)似乎应该可以工作:
I'm writing a program that needs to access SAS data. I've downloaded the ODBC drivers for SAS and installed them, but I need to be able to create ODBC connections on the fly, programmatically. The following code (in Python) seems like it should work:
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')
但它会弹出SAS ODBC配置对话框,设置数据源名称,并等待用户输入信息并关闭对话框.我怎样才能避免这种情况?
But it pops up the SAS ODBC configuration dialog, sets the datasource name, and waits for the user to enter the information and dismiss the dialog. How can I avoid that?
推荐答案
为了获得对 SAS 数据的 ODBC 访问,您需要连接到某种正在运行的 SAS 会话;您无法使用 SAS ODBC 驱动程序直接访问 SAS 数据表文件.
In order to get ODBC access to SAS data, you need to connect to a running SAS session of some kind; you can't access SAS data table files directly with the SAS ODBC drivers.
请参阅 SAS ODBC 驱动程序指南,我需要什么软件?"部分.
See the SAS ODBC drivers guide, section "What Software Do I Need?".
您的问题并未说明您正在尝试通过正在运行的 SAS 产品访问 SAS 数据.SAS ODBC 驱动程序指南应告诉您如何根据您将通过的 SAS 产品建立连接.
Your question doesn't state that you are trying to access SAS data through a running SAS product. The SAS ODBC drivers guide should tell you how to set up the connection based on the SAS product you will make the connection through.
这篇关于如何创建与 SAS 的 ODBC 连接?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何创建与 SAS 的 ODBC 连接?
基础教程推荐
- 求两个直方图的卷积 2022-01-01
- 在同一图形上绘制Bokeh的烛台和音量条 2022-01-01
- 在Python中从Azure BLOB存储中读取文件 2022-01-01
- PermissionError: pip 从 8.1.1 升级到 8.1.2 2022-01-01
- 使用大型矩阵时禁止 Pycharm 输出中的自动换行符 2022-01-01
- 包装空间模型 2022-01-01
- 无法导入 Pytorch [WinError 126] 找不到指定的模块 2022-01-01
- Plotly:如何设置绘图图形的样式,使其不显示缺失日期的间隙? 2022-01-01
- 修改列表中的数据帧不起作用 2022-01-01
- PANDA VALUE_COUNTS包含GROUP BY之前的所有值 2022-01-01
