0
我有一個過程生成兩個表作爲輸出,但它運行時會生成一個錯誤。我想將兩個表傳遞給局部變量。如何處理SQL過程中多個表的輸出?
DECLARE @model_data_stats TABLE (var VARCHAR(150), center FLOAT, scale FLOAT);
DECLARE @model_log_stats TABLE (var VARCHAR(150), zero INT, plusone INT, plustwo INT);
DECLARE @model_logit VARBINARY(MAX);
EXEC sp_execute_external_script @language = N'R',
@script = N'
#R script, irrelevant to question
#the following variables are assigned:
data_stats <- table
log_stats <- table
trained_model <- varbinary(max) data type
',
@input_data_1 = N'SELECT * FROM dbo.Table',
@params = N'@data_stats TABLE (var VARCHAR(150), center FLOAT, scale FLOAT) OUTPUT,
@log_stats TABLE (var VARCHAR(150), zero INT, plusone INT, plustwo INT) OUTPUT,
@trained_model VARBINARY(MAX)',
@data_stats = @model_data_stats OUTPUT,
@log_stats = @model_log_stats OUTPUT,
@trained_model = @model_logit OUTPUT;
這是我的錯誤,當我運行代碼:
Msg 156, Level 15, State 1, Line 1
Incorrect syntax near the keyword 'TABLE'.
它甚至不是特別清楚,我這的TABLE
次數生成錯誤,但我的猜測是部分在輸出變量被定義(在@params
之後)。 DECLARE
聲明自己運行得很好。
我的猜測是我以錯誤的方式聲明瞭過程的輸出。我不確定什麼是正確的方式。幫助將不勝感激!