我在 unix 上运行 R,并且正在使用 RODBC 包连接到 MS SQL 服务器。我可以使用包执行返回结果正常的查询,但是如果我在 SQL 查询的某处使用临时表,则会向我返回一个空字符串。查看网络后,我认为问题可能是假设最终用户使用标准 SQL(而不是 MS SQL)编写 RODBC 包。我提供了以下代码作为示例。
有趣的是,如果我使用 RJDBC 包,则不存在临时表问题。但是,即使导入 80,000 行(10 列),RJDBC 包也非常缓慢,并且会经常停止,因此这也不是一种选择。有没有其他人遇到过这个问题?如果有我没有想到的替代解决方案,我很想听听。
看来我不是唯一一个有这个问题的人,也许这是一个 R-Bug? http://r.789695.n4.nabble.com/RODBC-results-from-stored-procedure-td897462.html
谢谢
这是R示例:
library(RODBC)
ch <- odbcConnect(insert your server info here)
qry4 <- "create table #tempTable(
Test int
)
insert into #tempTable
select 2
select * from #tempTable
drop table #tempTable
"
df4 <- sqlQuery(ch, qry4)