OleDbCommand.Parameters Propiedad

Definición

Obtiene la estructura OleDbParameterCollection.

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

Valor de propiedad

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

Atributos

Ejemplos

En el ejemplo siguiente se crea un OleDbCommand objeto y 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

El proveedor OLE DB .NET 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 se establece Texten . 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.

Nota

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