我试图创建一个包含R代码的Server存储过程。我正在为2015使用RTVS -- R工具。
问题是,除了"Base“之外,Visual无法识别我安装的R包。例如,'dplyr',我在执行过程时收到了以下错误消息:
一个'R‘脚本错误发生在执行'sp_execute_external_script’. 发生了外部脚本错误: 库中的错误(Dplyr):没有名为“dplyr”的包 调用:源-> withVisible -> eval -> ->库。
但我很确定'dplyr‘已经安装好,工作正常。以防万一,我首先做的是:
EXEC sp_execute_external_script @language = N'R',
@script = N' print(normalizePath(R.home())); print(.libPaths());';找到了R包所在的位置。然后我手动重新安装'dplyr‘包:
lib.SQL <- "C:\\Program Files\\Microsoft SQL Server\\MSSQL13.MSSQLSERVER\\R_SERVICES\\library"
install.packages("dplyr", lib = lib.SQL)我重新启动VS,用R重新发布这个Server存储过程,执行它,得到相同的错误。
实际上,我可以在Visual中手动运行具有'dplyr‘功能的R代码,并让它与SQL Server数据库完全交互。我只是不能将整个过程发布为一个存储过程,然后执行它。
我到处都找过了,到目前为止还没有找到解决办法。任何帮助都将受到极大的感谢。
发布于 2019-05-08 16:19:11
实际上,我通过在每个服务器上使用命令行提示符重新安装R包来解决这个问题。只是想把它贴在这里好让其他人看到。
https://stackoverflow.com/questions/52322542
复制相似问题