【发布时间】:2019-02-18 17:02:52
【问题描述】:
我试图创建一个包含 R 代码的 SQL Server 存储过程。我使用的是 RTVS -- R Tools for Microsoft Visual Studio 2015。
问题是 Visual Studio 无法识别我安装的 R 包,除了“Base R”。例如,'dplyr',我在执行过程时收到此错误消息:
执行“sp_execute_external_script”期间发生“R”脚本错误 ...
发生外部脚本错误:
库 (dplyr) 中的错误:没有名为“dplyr”的包
调用:source -> withVisible -> eval -> eval -> library ...
但我很确定“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 重新发布了这个 SQL Server 存储过程,执行了它,得到了同样的错误。
事实上,我可以在 Visual Studio 中手动运行具有“dplyr”功能的 R 代码,并让它与 SQL Server 数据库进行交互。我只是无法将整个内容发布为存储过程然后执行它。
我到处搜索,到目前为止没有找到解决方案。任何帮助将不胜感激。
【问题讨论】:
-
听起来你应该去 MS 支持设施。
标签: r sql-server visual-studio stored-procedures rtvs