Ich versuche, ein Basis-R-Skript von SQL Server über eine gespeicherte Prozedur auszuführen. Ich gebe ein Dataset zurück und möchte auch eine Variable zurückgeben/ausgeben, bin aber nicht dazu in der Lage.Zurückgeben einer Variablen beim Ausführen von R von SQL Server
Im Folgenden finden Sie die gespeicherte Prozedur I
DROP PROC IF EXISTS get_iris_dataset;
go
CREATE PROC get_iris_dataset
AS
BEGIN
declare @OutName float
EXEC sp_execute_external_script
@language = N'R'
, @script = N'
iris_data <- iris
out = 5.1;'
, @input_data_1 = N''
, @output_data_1_name = N'iris_data'
,@params= N'@out float OUTPUT'
,@out = @OutName OUTPUT
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;
return 0
go
Ich rufe das Verfahren, wie unten haben:
declare @OutputVar float
exec @OutputVar = get_iris_dataset
print @OutputVar
Es tut Ausgang der Datensatz, aber ich bin nicht in der Lage, den Wert der zu speichern, Ausgabevariable
Ich kann den Wert von OutputVar nicht ausgeben, auch wenn ich das Dataset nicht ausgeben und nur versuchen, den Wert von OutputVar zu erfassen. Jede Hilfe wird geschätzt.
Vielen Dank im Voraus!
Ich sehe keinen R-Code hier. –
Es gibt nur 2 Zeilen R-Code. iris_data <- iris, out = 5,1; –