Lire en anglais

Partager via


Parameters, collection (ADO)

Contient tous les objets Parameter d’un objet Command.

Notes

Un objet Command a une collection Parameters composée d’objets Parameter.

L’utilisation de la méthode Refresh sur la collection Parameters d’un objet Command récupère les informations de paramètre du fournisseur pour la procédure stockée ou la requête paramétrable spécifiée dans l’objet Command. Certains fournisseurs ne prennent pas en charge les appels de procédure stockée ou les requêtes paramétrables ; l’appel de la méthode Refresh sur la collection Parameters lors de l’utilisation d’un tel fournisseur retourne une erreur.

Si vous n’avez pas défini vos propres objets Parameter et que vous accédez à la collection Parameters avant d’appeler la méthode Refresh, ADO appelle automatiquement la méthode et remplit la collection pour vous.

Vous pouvez réduire les appels au fournisseur pour améliorer les performances si vous connaissez les propriétés des paramètres associés à la procédure stockée ou à la requête paramétrable que vous souhaitez appeler. Utilisez la méthode CreateParameter pour créer des objets Parameter avec les paramètres de propriété appropriés et utilisez la méthode Append pour les ajouter à la collection Parameters. Cela vous permet de définir et de retourner des valeurs de paramètre sans avoir à appeler le fournisseur pour les informations de paramètre. Si vous écrivez auprès d’un fournisseur qui ne fournit pas d’informations de paramètre, vous devez remplir manuellement la collection Parameters à l’aide de cette méthode pour pouvoir utiliser des paramètres du tout. Utilisez la méthode Delete pour supprimer des objets Parameters de la collection Parameters si nécessaire.

Les objets de la collection Parameters d’un Recordset sortent de l’étendue (par conséquent, deviennent indisponibles) lorsque le Recordset est fermé.

Lors de l’appel d’une procédure stockée avec Command, le paramètre de retour/sortie d’une procédure stockée est récupéré comme suit :

  1. Lors de l’appel d’une procédure stockée qui n’a aucun paramètre, la méthode Refresh de la collection Parameters doit être appelée avant d’appeler la méthode Execute sur l’objet Command.

  2. Lors de l’appel d’une procédure stockée avec des paramètres et l’ajout explicite d’un paramètre à la collection Parameters avec Append, le paramètre de retour/sortie doit être ajouté à la collection Parameters. La valeur de retour doit d’abord être ajoutée à la collection Parameters. Utilisez Append pour ajouter les autres paramètres à la collection Parameters dans l’ordre de définition. Par exemple, la procédure stockée SPWithParam a deux paramètres. Le premier paramètre, InParam, est un paramètre d’entrée défini comme adVarChar (20) et le deuxième paramètre, OutParam, est un paramètre de sortie défini comme adVarChar (20). Vous pouvez récupérer la valeur/le paramètre de sortie de retour avec le code suivant.

    ' Open Connection Conn  
    set ccmd = CreateObject("ADODB.Command")  
    ccmd.Activeconnection= Conn  
    
    ccmd.CommandText="SPWithParam"  
    ccmd.commandType = 4 'adCmdStoredProc  
    
    ccmd.parameters.Append ccmd.CreateParameter(, adInteger, adParamReturnValue, , NULL)   ' return value  
    ccmd.parameters.Append ccmd.CreateParameter("InParam", adVarChar, adParamInput, 20, "hello world")   ' input parameter  
    ccmd.parameters.Append ccmd.CreateParameter("OutParam", adVarChar, adParamOutput, 20, NULL)   ' output parameter  
    
    ccmd.execute()  
    
    ' Access ccmd.parameters(0) as return value of this stored procedure  
    ' Access ccmd.parameters("OutParam") as the output parameter of this stored procedure.  
    
    
  3. Lors de l’appel d’une procédure stockée avec des paramètres et de la configuration des paramètres en appelant la méthode Item sur la collection Parameters, le paramètre de retour/sortie de la procédure stockée peut être récupéré à partir de la collection Parameters. Par exemple, la procédure stockée SPWithParam a deux paramètres. Le premier paramètre, InParam, est un paramètre d’entrée défini comme adVarChar (20) et le deuxième paramètre, OutParam, est un paramètre de sortie défini comme adVarChar (20). Vous pouvez récupérer la valeur/le paramètre de sortie de retour avec le code suivant.

    ' Open Connection Conn  
    set ccmd = CreateObject("ADODB.Command")  
    ccmd.Activeconnection= Conn  
    
    ccmd.CommandText="SPWithParam"  
    ccmd.commandType = 4 'adCmdStoredProc  
    
    ccmd.parameters.Item("InParam").value = "hello world" ' input parameter  
    ccmd.execute()  
    
    ' Access ccmd.parameters(0) as return value of stored procedure  
    ' Access ccmd.parameters(2) or ccmd.parameters("OutParam") as the output parameter.  
    

Cette section contient la rubrique suivante.

Voir aussi

Append, méthode (ADO)
CreateParameter, méthode (ADO)
Parameter, objet