Я пытался создать хранимую процедуру SQL Server, содержащую код R. Я использовал RTVS - R Tools для Microsoft Visual Studio 2015.
Проблема в том, что Visual Studio не распознает установленные мной пакеты R, кроме «Base R». Например, «dplyr», я получил это сообщение об ошибке при выполнении процедуры:
Ошибка скрипта 'R' во время исполнения скрипта sp_execute_external_script
...
Произошла внешняя ошибка скрипта:
Ошибка в библиотеке (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, переиздал эту хранимую процедуру SQL Server с R, выполнил ее, получил ту же ошибку.
Фактически, я могу вручную запустить код R с функциональностью 'dplyr' в Visual Studio и заставить его нормально взаимодействовать с базами данных SQL Server. Я просто не могу опубликовать все это как хранимую процедуру, а затем выполнить ее.
Я искал буквально везде, но пока не нашел решения. Любая помощь будет высоко оценена.