sp_execute_external_script 调用 R 脚本文件

sp_execute_external_script invoking a R script file

我有一个很长的 R 脚本文件,我想使用 SQL 服务器 R 服务,阅读它的 documentation,我还没有看到任何使用示例:sp_execute_external_script 允许加载 R 脚本文件。所有示例都旨在使用简单的 r-computation 嵌入在一个 SQL 句子中,例如以下示例:

DROP PROC IF EXISTS get_iris_dataset;  
go  
CREATE PROC get_iris_dataset  
AS  
BEGIN  
EXEC   sp_execute_external_script  
   @language = N'R'  
 , @script = N'iris_data <- iris;'  
 , @input_data_1 = N''  
 , @output_data_1_name = N'iris_data'  
 WITH RESULT SETS (("Sepal.Length" float not null,   
       "Sepal.Width" float not null,  
    "Petal.Length" float not null,   
    "Petal.Width" float not null, "Species" varchar(100)));  
END;  
go  

我需要以某种方式使用 r-sentence source("fileName") 来执行 r-sentences。

注意:我正在尝试使用 SQL 服务器只是因为机器性能比我的个人计算机更好。

提前致谢,

大卫

当然可以使用 source("filename") 执行 R 脚本。 R 脚本应该位于某个地方 SQL 服务器可以访问它。 例如:source("C:/Rscripts/script.R")。请注意,SQL 服务器无法访问您的“我的文档”文件夹...

EXEC sp_execute_external_script
@language = N'R'
,@script = N'
source("C:/Rscripts/script.R");'
,@input_data_1 = N''  
,@output_data_1_name = N'iris_data'  
WITH RESULT SETS (("Sepal.Length" float not null,   
 "Sepal.Width" float not null,  
 "Petal.Length" float not null,   
 "Petal.Width" float not null, "Species" varchar(100)));