OracleCommand.Parameters OracleCommand.Parameters OracleCommand.Parameters OracleCommand.Parameters Property

Определение

Возвращает набор OracleParameterCollection.Gets the OracleParameterCollection.

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

Значение свойства

Параметры инструкции SQL или хранимой процедуры.The parameters of the SQL statement or stored procedure. По умолчанию является пустой коллекцией.The default is an empty collection.

Примеры

В следующем примере создается объект OracleCommand и отображаются его параметры.The following example creates an OracleCommand and displays its parameters. Для этого методу передается OracleConnection, строка запроса, которая является инструкцией SQL SELECT, и OracleParameter массив объектов.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));
        }
    }
}

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

Комментарии

Если свойство имеет StoredProcedureзначение, то CommandText свойству должно быть присвоено имя хранимой процедуры. CommandTypeWhen the CommandType property is set to StoredProcedure, the CommandText property should be set to the name of the stored procedure. Пользователю может потребоваться использовать синтаксис escape-символов, если имя хранимой процедуры содержит какие-либо специальные символы.The user may be required to use escape character syntax if the stored procedure name contains any special characters. Команда выполняет эту хранимую процедуру при вызове одного из методов Execute.The command executes this stored procedure when you call one of the Execute methods.

Поставщик данных .NET Framework для Oracle не поддерживает заполнитель вопросительного знака (?) для передачи параметров в инструкцию SQL, OracleCommand вызываемую из. CommandType.TextThe .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  

При использовании именованных параметров в инструкции SQL, OracleCommand вызываемой CommandType.Textиз, перед именем параметра необходимо ставить двоеточие (:).When using named parameters in an SQL statement called by an OracleCommand of CommandType.Text, you must precede the parameter name with a colon (:). Однако в хранимой процедуре или при ссылке на именованный параметр в другой части кода (например, при добавлении OracleParameter объектов Parameters в свойство) не следует указывать именованный параметр с двоеточием (:).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 (:). Поставщик данных .NET Framework для Oracle предоставляет двоеточие автоматически.The .NET Framework Data Provider for Oracle supplies the colon automatically.

Применяется к

Дополнительно