5

我正在尝试使用 RODBC 连接到 R。但是,当我跑步时

ch <- odbcConnect("rails_dev", uid="skline", pwd="d0gsleep")

我收到此错误:

In odbcDriverConnect("DSN=rails_dev;UID=skline;PWD=d0gsleep") :
  [RODBC] ERROR: state IM002, code 0, message [iODBC][Driver Manager]Data source name not found and no default driver specified. Driver could not be loaded

有什么想法吗?我是新手,不知道下一步该做什么......提前非常感谢你!

注意我使用的是 Mac OSX

4

2 回答 2

2

编辑:下面的答案已经过时,因为某些提到的软件包不再在 CRAN 上可用。我把它留在这里供参考。

可以在以下问题中找到更多最新信息:

如何在 OSX 10.10.2 上将 R 与 PostgreSQL 连接?


要连接到 Mac 上的 PostgreSQL,您可以使用包RpgSQL. 请务必阅读安装说明,因为您的 PostgreSQL 安装必须设置为使用 JDBC。这是迄今为止最简单的方法。如果您安装 PostgreSQL,您会在安装过程结束时启动 Stack Builder(请参阅安装指南)。或者,您可以在安装后使用 Stack Builder(包含在 postgreSQL 安装中)来添加额外的组件。在数据库驱动程序下,您应该找到 postgresql JDBC。

评论中提到的rdbi软件包已从 CRAN 中删除,afaik 不再维护。

如果你真的需要使用 ODBC,你需要一个 PostgreSQL 驱动程序,并且它必须是你计算机上的 ODBC 实现所知道的。Jim M. 给你的驱动程序是一种选择,另一种是 Openlinksw 的驱动程序pgFoundry上的“官方”驱动程序。通常,您应该能够像下载 JDBC 驱动程序一样从 Stack Builder 下载 ODBC 驱动程序:在标题数据库驱动程序下,您也有一个 postgresql ODBC。

对于最新版本的 OSX,您显然需要安装自己的 odbc 管理器。在评论中提到的 Eelke 旁边,你也有来自 Apple。在此管理器中,您可以指定驱动程序位置等,并通过 ODBC 设置与 PostgreSQL 的连接。如何执行此操作取决于您使用的管理器,并在帮助文件中进行了说明。阅读iODBC 的常见问题解答中的相关部分和Mac上的ODBC部分总是很有趣。

odbcDataSources()附注:在 R 中,您可以使用RODBC 包的命令检查可以找到哪些 DSN 。如果那里没有提到 Postgresql,你知道你必须先看看你的设置。

于 2011-05-03T13:10:12.413 回答
0

根据您要连接的数据库,Actual Technologies有适用于开源数据库(MySQL、PostgreSQL)、Oracle 以及 Microsoft Access 等的 Mac OSX 驱动程序,价格约为 35 美元。无论您是想为机器上的所有用户(系统 DSN)还是为用户特定级别创建连接,ODBC 管理员中的设置都非常简单,因为有一个向导可以完成基本步骤。

于 2011-04-28T18:17:22.983 回答