首页 > 解决方案 > 通过 OBC 将 SAS 连接到 Oracle 数据库时为空库

问题描述

我正在尝试通过 ODBC 连接将 SAS 连接到 Oracle 上的新数据库。我无法直接连接到引擎,因为我没有此许可证。

我已正确设置数据库,并且可以通过 Oracle 连接访问 Power BI 上的视图。

我的下一步是将其添加到 ODBC 数据源管理器中。当我将它添加到系统 DSN 并在此处测试连接时,它工作正常。

下一步是将 SAS 连接到此 ODBC,我已尝试通过 libname 语句执行此操作。

libname mylib odbc datasrc="DATASRC" USER="userid" password="password" schema=XXDATAXX;

此语句返回库的正确分配并建立连接。我已经通过输入错误的用户 ID/密码测试了它实际上是有效的,它确实没有分配。

我的问题是,当它正确分配时,SAS 库是空的,我什么也看不到。有没有人以前发生过这个错误或有一些想法?

我也尝试过的事情是:

标签: sas

解决方案


您可能需要在 ACCESS 引擎NOPROMPT=选项中指定驱动程序特定的名称值对。Oracle 驱动程序应该识别参数名称Initial Catalog=。有效的参数名称和值取决于您使用的 ODBC 驱动程序和它连接到的数据库系统。

未经测试:

libname mylib odbc 
  datasrc="DATASRC" 
  USER="userid" 
  password="password"  
  schema=XXDATAXX
  NOPROMPT='Provider=OraOLEDB.Oracle;Initial Catalog=myDataBase;'
;

请参阅 SAS 文档“ODBC 引擎的 LIBNAME 语句”

NOPROMPT=<'> ODBC 连接选项<'>

  • 指定数据源或数据库的连接选项。用分号分隔多个选项。如果您没有指定足够多的正确连接选项,则会返回错误。不显示帮助您完成连接字符串的对话框。

https://www.connectionstrings.com/oracle/也是尝试不同 noprompt 连接字符串的一个很好的参考。


推荐阅读