InputParameter : paramètre d’entrée pour la procédure stockée SQL : générateur de classes
InputParameter
: génère un objet InputParameter qui capture les informations sur les paramètres d’entrée de la fonction R qui doit être incorporée dans une procédure stockée SQL Server. Ils deviendront les paramètres d’entrée de la procédure stockée. Les types R pris en charge des paramètres d’entrée sont POSIXct, numeric, character, integer, logical et raw.
Utilisation
InputParameter(name, type, defaultValue = NULL, defaultQuery = NULL,
value = NULL, enableOutput = FALSE)
Arguments
name
Une chaîne de caractères, nom de l’objet de paramètre d’entrée.
type
Chaîne de caractères représentant le type R de l’objet de paramètre d’entrée.
defaultValue
Valeur par défaut du paramètre. Non pris en charge pour « raw ».
defaultQuery
Chaîne de caractères qui spécifie la requête par défaut qui récupérera les données si une requête différente n’est pas fournie au moment de l’exécution de la procédure stockée.
value
Valeur qui sera utilisée pour le paramètre lors de la prochaine exécution de la procédure stockée.
enableOutput
Utiliser un paramètre d’entrée/sortie
Valeur
Objet InputParameter
Exemples
## 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)