Export (0) Print
Expand All

OracleCommand.Parameters Property

Namespace:  System.Data.OracleClient
Assembly:  System.Data.OracleClient (in System.Data.OracleClient.dll)

public OracleParameterCollection Parameters { get; }

Property Value

Type: System.Data.OracleClient.OracleParameterCollection
The parameters of the SQL statement or stored procedure. The default is an empty collection.

When the CommandType property is set to StoredProcedure, the CommandText property should be set to the name of the stored procedure. The user may be required to use escape character syntax if the stored procedure name contains any special characters. The command executes this stored procedure when you call one of the Execute methods.

The .NET Framework Data Provider for Oracle does not support the question mark (?) placeholder for passing parameters to an SQL statement called by an OracleCommand of CommandType.Text. In this case, named parameters must be used. For example:

SELECT * FROM Customers WHERE CustomerID = :pCustomerID

When using named parameters in an SQL statement called by an OracleCommand of CommandType.Text, you must precede the parameter name with a colon (:). However, in a stored procedure, or when referring to a named parameter elsewhere in your code (for example, when adding OracleParameter objects to the Parameters property), do not precede the named parameter with a colon (:). The .NET Framework Data Provider for Oracle supplies the colon automatically.

The following example creates an OracleCommand and displays its parameters. To accomplish this, the method is passed an OracleConnection, a query string that is an SQL SELECT statement, and an array of OracleParameter objects.

    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));
            }
        }
    }

.NET Framework

Supported in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft