OleDbCommand.Parameters 属性

定义

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

属性值

SQL 语句或存储过程的参数。 默认值为空集合。

属性

示例

以下示例创建 OleDbCommand 并显示其参数。 为此,向 方法传递了一个 、一个 OleDbConnectionSQL SELECT 语句的查询字符串和一个 对象数组 OleDbParameter

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

注解

当 设置为 TextCommandType,OLE DB .NET 提供程序不支持将参数传递给 SQL 语句或 调用的OleDbCommand存储过程的命名参数。 在这种情况下,必须使用问号 ( ) 占位符。 例如:

SELECT * FROM Customers WHERE CustomerID = ?

因此, OleDbParameter 将 对象添加到 OleDbParameterCollection 的顺序必须与命令文本中 参数的问号占位符的位置直接对应。

注意

如果集合中的参数与要执行的查询的要求不匹配,则可能会导致错误。

有关详细信息,请参阅 配置参数和参数数据类型

适用于

另请参阅