OleDbCommand.Parameters Propiedad

Definición

public:
 property System::Data::OleDb::OleDbParameterCollection ^ Parameters { System::Data::OleDb::OleDbParameterCollection ^ get(); };
[System.Data.DataSysDescription("DbCommand_Parameters")]
public System.Data.OleDb.OleDbParameterCollection Parameters { get; }
public System.Data.OleDb.OleDbParameterCollection Parameters { get; }
[<System.Data.DataSysDescription("DbCommand_Parameters")>]
member this.Parameters : System.Data.OleDb.OleDbParameterCollection
member this.Parameters : System.Data.OleDb.OleDbParameterCollection
Public ReadOnly Property Parameters As OleDbParameterCollection

Valor de propiedad

Parámetros de la instrucción SQL o del procedimiento almacenado. El valor predeterminado es una colección vacía.

Atributos

Ejemplos

En el ejemplo siguiente se crea y OleDbCommand se muestran sus parámetros. Para ello, el método se pasa a , OleDbConnectionuna cadena de consulta que es una instrucción SELECT de SQL y una matriz de OleDbParameter objetos .

public void CreateMyOleDbCommand(OleDbConnection connection,
    string queryString, OleDbParameter[] parameters)
{
    OleDbCommand command = new OleDbCommand(queryString, connection);
    command.CommandText =
        "SELECT CustomerID, CompanyName FROM Customers WHERE Country = ? AND City = ?";
    command.Parameters.Add(parameters);

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

    string message = "";
    for (int i = 0; i < command.Parameters.Count; i++)
    {
        message += command.Parameters[i].ToString() + "\n";
    }
    Console.WriteLine(message);
}
 Public Sub CreateMyOleDbCommand(connection As OleDbConnection, _
   queryString As String, parameters() As OleDbParameter)

    Dim command As New OleDbCommand(queryString, connection)
    command.CommandText = _
       "SELECT CustomerID, CompanyName FROM Customers WHERE Country = ? AND City = ?"
    command.Parameters.Add(parameters)

    Dim j As Integer
    For j = 0 To command.Parameters.Count - 1
       command.Parameters.Add(parameters(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)
End Sub

Comentarios

Ole DB .NET Provider no admite parámetros con nombre para pasar parámetros a una instrucción SQL o a un procedimiento almacenado llamado por un OleDbCommand cuando CommandType está establecido en Text. En este caso, se debe usar el marcador de posición de signo de interrogación (?). Por ejemplo:

SELECT * FROM Customers WHERE CustomerID = ?

Por lo tanto, el orden en el que OleDbParameter se agregan objetos a OleDbParameterCollection debe corresponder directamente a la posición del marcador de posición del signo de interrogación para el parámetro en el texto del comando.

Note

Si los parámetros de la colección no coinciden con los requisitos de la consulta que se van a ejecutar, puede producirse un error.

Para obtener más información, consulte Configuración de parámetros y tipos de datos de parámetros.

Se aplica a

Consulte también