InputParameter: Parameter Input untuk Prosedur Tersimpan SQL: Generator Kelas
InputParameter
: menghasilkan Objek InputParameter, yang menangkap informasi tentang parameter input fungsi R yang akan disematkan ke dalam SQL Server Stored Procesure. Itu akan menjadi parameter input dari prosedur tersimpan. Jenis R yang didukung dari parameter input adalah POSIXct, numerik, karakter, bilangan bulat, logis, dan mentah.
Penggunaan
InputParameter(name, type, defaultValue = NULL, defaultQuery = NULL,
value = NULL, enableOutput = FALSE)
Argumen
name
String karakter, nama objek parameter input.
type
String karakter yang mewakili jenis R dari objek parameter input.
defaultValue
Nilai default parameter. Tidak didukung untuk "mentah".
defaultQuery
String karakter yang menentukan kueri default yang akan mengambil data jika kueri yang berbeda tidak disediakan pada saat eksekusi prosedur tersimpan.
value
Nilai yang akan digunakan untuk parameter dalam menjalankan prosedur tersimpan berikutnya.
enableOutput
Jadikan ini Parameter Input/Output
Nilai
Objek InputParameter
Contoh
## Not run:
# See ?StoredProcedure for creating the `cleandata` table.
# and ?executeStoredProcedure for creating the `rdata` table.
# score1 makes a batch prediction given clean data(indata),
# model object(model_param), and the new name of the variable
# that is being predicted
score1 <- function(indata, model_param, predVarName) {
indata[,"DayOfWeek"] <- factor(indata[,"DayOfWeek"], levels=c("Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"))
# The connection string
conStr <- paste("Driver={ODBC Driver 13 for SQL Server};Server=.;Database=RevoTestDB;",
"Trusted_Connection=Yes;", sep = "")
# The compute context
computeContext <- RxInSqlServer(numTasks=4, connectionString=conStr)
mm <- rxReadObject(as.raw(model_param))
# Predict
result <- rxPredict(modelObject = mm,
data = indata,
outData = NULL,
predVarNames = predVarName,
extraVarsToWrite = c("ArrDelay"),
writeModelVars = TRUE,
overwrite = TRUE)
}
# connections string
conStr <- paste0("Driver={ODBC Driver 13 for SQL Server};Server=.;Database=RevoTestDB;",
"Trusted_Connection=Yes;")
# create InpuData Object for an input parameter that is a data frame
id <- InputData(name = "indata", defaultQuery = "SELECT * from cleanData")
# InputParameter for the model_param input variable
model <- InputParameter("model_param", "raw",
defaultQuery =
"select top 1 value from rdata where [key] = 'linmod.v1'")
# InputParameter for the predVarName variable
name <- InputParameter("predVarName", "character", value = "ArrDelayEstimate")
sp_df_df <- StoredProcedure(score1, "sTest", id, model, name,
filePath = ".")
## End(Not run)