OleDbCommand.Parameters Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
OleDbParameterCollectionZíská .
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
Hodnota vlastnosti
Parametry příkazu SQL nebo uložené procedury. Výchozí hodnota je prázdná kolekce.
- Atributy
Příklady
Následující příklad vytvoří OleDbCommand a zobrazí jeho parametry. K tomu je metoda předána OleDbConnection, řetězec dotazu, který je příkaz SQL SELECT a pole OleDbParameter objektů.
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
Poznámky
Zprostředkovatel .NET OLE DB nepodporuje pojmenované parametry pro předávání parametrů příkazu SQL nebo uložené procedury volané OleDbCommand při CommandType je nastavena na Text. V tomto případě se musí použít zástupný symbol otazníku (?). Příklad:
SELECT * FROM Customers WHERE CustomerID = ?
Proto pořadí, ve kterém OleDbParameter jsou objekty přidány do OleDbParameterCollection musí přímo odpovídat pozici zástupného symbolu otazníku pro parametr v textu příkazu.
Note
Pokud parametry v kolekci neodpovídají požadavkům dotazu, které se mají provést, může dojít k chybě.
Další informace naleznete v tématu Konfigurace parametrů a datových typů parametrů.