Share via


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)