1

我有一个 SAP HANA 服务器和一个运行 R 2.15 和 R studio 服务器的 SLES 11 服务器。

我能够使用 isql 通过 ODBC 从 de SLES 服务器与 HANA 服务器进行通信,没有任何问题。

我使用 RODBC 和连接字符串从 R 连接:

    library(RODBC)
    ch <- odbcDriverConnect("DSN=hana;SERVERNODE=HDB.IP.ADD.RES:30015;UID=MYUSER;PWD=****")

到目前为止一切顺利,但是在尝试运行 sqlQuery 时出现以下错误:

    a <- sqlQuery(ch,"SELECT TOP 100 *, F FROM \"SOME_HANA_TABLE\"")
    Error in odbcQuery(channel, query, rows_at_time) : 
    Calloc could not allocate memory (18446744073709551616 of 22816 bytes)

乍一看,我认为查询表很大,但事实并非如此,因为我只要求前 100 行。我搜索了互联网,只在建议重新安装 RODBC 的 R 邮件列表中找到了这个链接。我会试一试,但我对它的工作没有那么自信......

有没有人遇到过这个错误?你有能力克服它吗?

注意:我已经能够使用上面提到的代码从本地 Windows 机器连接到 HANA 服务器。所以我认为这个错误与 RODBC 如何与 SLES hana 驱动程序交互有关......或类似的东西。

编辑:尝试重新安装 RODBC,没有工作,错误仍然存​​在。

4

0 回答 0