使用 R.Net 使用 RODBC 运行 R 脚本:“第一个参数不是开放的 RODBC 通道”

Using R.Net running an R-script using RODBC: "first argument is not an open RODBC channel"

提问人:pan054 提问时间:10/10/2023 更新时间:10/10/2023 访问量:5

问:

从 R 中运行此脚本工作正常。

library(RODBC)
con<- RODBC::odbcConnect("NewEHMP", uid = "", pwd = "")
arr<-RODBC::sqlFetch(con, "AllEHMPSites", max = 10)
odbcCloseAll()

使用 R.Net 从 VS20129 VB.Net 运行相同的脚本:

m_REngine.Evaluate("source('" + scriptpath + "')")

捕获以下错误: 'RDotNet.EvaluationException: 'Error in RODBC::sqlFetch(con, “AllEHMPSites”, max = 10) : first argument is not an open RODBC channel'

请注意,通过 R.Net 运行的其他脚本只要不使用 RODBC 连接即可正常工作。 任何建议将非常受欢迎。 干杯

尝试了不同的连接字符串和不同的 RODBC sql 方法(sqlQuery、sqlFetch)。 由于脚本在 R 中运行良好,但使用 R.Net 为 false,这对我来说似乎是一个 R.Net 问题。

RODBC r.net

评论

0赞 pan054 10/11/2023
朝着正确方向迈出的一步是仅为 X86 CPU 编译代码。

答: 暂无答案