OracleCommand.Parameters Propriété

Définition

public:
 property System::Data::OracleClient::OracleParameterCollection ^ Parameters { System::Data::OracleClient::OracleParameterCollection ^ get(); };
public System.Data.OracleClient.OracleParameterCollection Parameters { get; }
member this.Parameters : System.Data.OracleClient.OracleParameterCollection
Public ReadOnly Property Parameters As OracleParameterCollection

Valeur de propriété

Les paramètres de la procédure stockée ou de l’instruction SQL. La valeur par défaut est une collection vide.

Exemples

L’exemple suivant crée un OracleCommand et affiche ses paramètres. Pour ce faire, la méthode est passée à un OracleConnection, une chaîne de requête qui est une instruction SQL SELECT et un tableau d’objets OracleParameter .

public void CreateOracleCommand(OracleConnection connection,
    string queryString, OracleParameter[] myParamArray)
{

    OracleCommand command = new OracleCommand(queryString, connection);
    command.CommandText =
        "SELECT * FROM Emp WHERE Job = :pJob AND Sal = :pSal";

    for (int j = 0; j < myParamArray.Length; j++)
        command.Parameters.Add(myParamArray[j]);

    string message = "";

    for (int i = 0; i < command.Parameters.Count; i++)
        message += command.Parameters[i].ToString() + "\n";

    Console.WriteLine(message);

    using (OracleDataReader row = command.ExecuteReader())
    {
        while(row.Read())
        {
            Console.WriteLine(row.GetValue(0));
        }
    }
}
Public Sub CreateOracleCommand(ByVal connection As OracleConnection, _
ByVal queryString As String, ByVal prmArray() As OracleParameter)

    Dim command As New OracleCommand(queryString, connection)
    command.CommandText = _
        "SELECT * FROM Emp WHERE Job = :pJob AND Sal = :pSal"

    Dim j As Integer
    For j = 0 To prmArray.Length - 1
        command.Parameters.Add(prmArray(j))
    Next j

    Dim message As String = ""
    Dim i As Integer
    For i = 0 To command.Parameters.Count - 1
        message += command.Parameters(i).ToString() + ControlChars.Cr
    Next i

    Console.WriteLine(message)

    Dim reader As OracleDataReader = command.ExecuteReader
    While reader.Read
        Console.WriteLine(reader.GetValue(0))
    End While

End Sub

Remarques

Lorsque la propriété a la CommandTypeStoredProcedurevaleur , la CommandText propriété doit être définie sur le nom de la procédure stockée. L’utilisateur peut être amené à utiliser la syntaxe des caractères d’échappement si le nom de la procédure stockée contient des caractères spéciaux. La commande exécute cette procédure stockée lorsque vous appelez l'une des méthodes Execute.

Le fournisseur de données .NET Framework pour Oracle ne prend pas en charge l’espace réservé de point d’interrogation ( ?) pour passer des paramètres à une instruction SQL appelée par un OracleCommand de CommandType.Text. Dans ce cas, des paramètres nommés doivent être utilisés. Exemple :

SELECT * FROM Customers WHERE CustomerID = :pCustomerID  

Lorsque vous utilisez des paramètres nommés dans une instruction SQL appelée par un OracleCommand de CommandType.Text, vous devez faire précéder le nom du paramètre d’un signe deux-points (:). Toutefois, dans une procédure stockée, ou lorsque vous faites référence à un paramètre nommé ailleurs dans votre code (par exemple, lors de l’ajout OracleParameter d’objets à la Parameters propriété), ne faites pas précéder le paramètre nommé d’un signe deux-points (:). Le fournisseur de données .NET Framework pour Oracle fournit automatiquement les deux-points.

S’applique à

Voir aussi