OdbcParameter Třída
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í.
Představuje parametr pro OdbcCommand parametr a volitelně jeho mapování na .DataColumn Tato třída se nemůže dědit.
public ref class OdbcParameter sealed : System::Data::Common::DbParameter, ICloneable
public ref class OdbcParameter sealed : MarshalByRefObject, ICloneable, System::Data::IDbDataParameter
public sealed class OdbcParameter : System.Data.Common.DbParameter, ICloneable
[System.ComponentModel.TypeConverter(typeof(System.Data.Odbc.OdbcParameterConverter))]
public sealed class OdbcParameter : MarshalByRefObject, ICloneable, System.Data.IDbDataParameter
[System.ComponentModel.TypeConverter(typeof(System.Data.Odbc.OdbcParameter+OdbcParameterConverter))]
public sealed class OdbcParameter : System.Data.Common.DbParameter, ICloneable
type OdbcParameter = class
inherit DbParameter
interface IDataParameter
interface IDbDataParameter
interface ICloneable
[<System.ComponentModel.TypeConverter(typeof(System.Data.Odbc.OdbcParameterConverter))>]
type OdbcParameter = class
inherit MarshalByRefObject
interface IDbDataParameter
interface IDataParameter
interface ICloneable
[<System.ComponentModel.TypeConverter(typeof(System.Data.Odbc.OdbcParameter+OdbcParameterConverter))>]
type OdbcParameter = class
inherit DbParameter
interface ICloneable
interface IDbDataParameter
interface IDataParameter
Public NotInheritable Class OdbcParameter
Inherits DbParameter
Implements ICloneable
Public NotInheritable Class OdbcParameter
Inherits MarshalByRefObject
Implements ICloneable, IDbDataParameter
- Dědičnost
- Dědičnost
- Dědičnost
- Atributy
- Implementuje
Příklady
Následující příklad vytvoří více instancí OdbcParameter prostřednictvím OdbcParameterCollection uvnitř .OdbcDataAdapter Tyto parametry slouží k výběru dat ze zdroje dat a umístění dat do objektu DataSet. V tomto příkladu se předpokládá, že již DataSetOdbcDataAdapter byla vytvořena pomocí příslušného schématu, příkazů a připojení.
public DataSet GetDataSetFromAdapter(
DataSet dataSet, string connectionString, string queryString)
{
using (OdbcConnection connection =
new OdbcConnection(connectionString))
{
OdbcDataAdapter adapter =
new OdbcDataAdapter(queryString, connection);
// Set the parameters.
adapter.SelectCommand.Parameters.Add(
"@CategoryName", OdbcType.VarChar, 80).Value = "toasters";
adapter.SelectCommand.Parameters.Add(
"@SerialNum", OdbcType.Int).Value = 239;
// Open the connection and fill the DataSet.
try
{
connection.Open();
adapter.Fill(dataSet);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
// The connection is automatically closed when the
// code exits the using block.
}
return dataSet;
}
Public Function GetDataSetFromAdapter( _
ByVal dataSet As DataSet, ByVal connectionString As String, _
ByVal queryString As String) As DataSet
Using connection As New OdbcConnection(connectionString)
Dim adapter As New OdbcDataAdapter(queryString, connection)
' Set the parameters.
adapter.SelectCommand.Parameters.Add( _
"@CategoryName", OdbcType.VarChar, 80).Value = "toasters"
adapter.SelectCommand.Parameters.Add( _
"@SerialNum", OdbcType.Int).Value = 239
' Open the connection and fill the DataSet.
Try
connection.Open()
adapter.Fill(dataSet)
Catch ex As Exception
Console.WriteLine(ex.Message)
End Try
' The connection is automatically closed when the
' code exits the Using block.
End Using
Return dataSet
End Function
Poznámky
V názvech parametrů se nerozlišují malá a velká písmena.
Při dotazování databáze Oracle pomocí zprostředkovatele Microsoft OLE DB pro Oracle (MSDAORA) a rozhraní ODBC .NET Framework Zprostředkovatel dat, použití klauzule LIKE k dotazování hodnot v polích s pevnou délkou nemusí vrátit všechny očekávané shody. Důvodem je, že když Oracle odpovídá hodnotám pro pole s pevnou délkou LIKE v klauzuli, odpovídá celé délce řetězce, včetně všech odsazení koncových mezer. Pokud například tabulka v databázi Oracle obsahuje pole s názvem "Field1", které je definováno jako char(3), a zadáte hodnotu "a" do řádku této tabulky, následující kód řádek nevrátí.
Dim queryString As String = "SELECT * FROM Table1 WHERE Field1 LIKE ?"
Dim command As OleDbCommand = New OleDbCommand(queryString, connection)
command.Parameters.Add("@p1", OleDbType.Char, 3).Value = "a"
Dim reader As OleDbDataReader = command.ExecuteReader()
string queryString = "SELECT * FROM Table1 WHERE Field1 LIKE ?";
OleDbCommand command = new OleDbCommand(queryString, connection);
command.Parameters.Add("@p1", OleDbType.Char, 3).Value = "a";
OleDbDataReader reader = command.ExecuteReader();
Je to proto, že Oracle ukládá hodnotu sloupce jako "a" (odsazení "a" s koncovými mezerami na pevnou délku pole 3), kterou Oracle nechová jako shodu s hodnotou parametru "a" v případě LIKE porovnání polí s pevnou délkou.
Chcete-li tento problém vyřešit, připojte k hodnotě"a%" parametru zástupný znak ("%") nebo místo toho použijte porovnání SQL = .
Konstruktory
| Name | Description |
|---|---|
| OdbcParameter() |
Inicializuje novou instanci OdbcParameter třídy. |
| OdbcParameter(String, Object) |
Inicializuje novou instanci OdbcParameter třídy, která používá název parametru OdbcParameter a objekt. |
| OdbcParameter(String, OdbcType, Int32, ParameterDirection, Boolean, Byte, Byte, String, DataRowVersion, Object) |
Inicializuje novou instanci třídy, která používá název parametru OdbcParameter , datový typ, délku, název zdrojového sloupce, směr parametru, číselnou přesnost a další vlastnosti. |
| OdbcParameter(String, OdbcType, Int32, ParameterDirection, Byte, Byte, String, DataRowVersion, Boolean, Object) |
Inicializuje novou instanci třídy, která používá název parametru OdbcParameter , datový typ, délku, název zdrojového sloupce, směr parametru, číselnou přesnost a další vlastnosti. |
| OdbcParameter(String, OdbcType, Int32, String) |
Inicializuje novou instanci třídy, která používá název parametru, datový typ, délku a název zdrojového OdbcParameter sloupce. |
| OdbcParameter(String, OdbcType, Int32) |
Inicializuje novou instanci OdbcParameter třídy, která používá název parametru, datový typ a délku. |
| OdbcParameter(String, OdbcType) |
Inicializuje novou instanci OdbcParameter třídy, která používá název parametru a datový typ. |
Vlastnosti
| Name | Description |
|---|---|
| DbType |
Získá nebo nastaví DbType parametr. |
| Direction |
Získá nebo nastaví hodnotu, která určuje, zda je parametr pouze vstup, výstup-pouze, obousměrný nebo uložená procedura návratový parametr hodnoty. |
| IsNullable |
Získá nebo nastaví hodnotu, která určuje, zda parametr přijímá hodnoty null. |
| OdbcType |
Získá nebo nastaví OdbcType parametr. |
| ParameterName |
Získá nebo nastaví název OdbcParameter. |
| Precision |
Získá nebo nastaví počet číslic použitých k reprezentaci Value vlastnosti. |
| Scale |
Získá nebo nastaví počet desetinných míst, na které Value se přeloží. |
| Size |
Získá nebo nastaví maximální velikost dat v rámci sloupce. |
| SourceColumn |
Získá nebo nastaví název zdrojového sloupce mapovaného na DataSet a používá se k načtení nebo vrácení Value. |
| SourceColumnNullMapping |
Získá nebo nastaví hodnotu, která označuje, zda zdrojový sloupec má hodnotu null. To umožňuje DbCommandBuilder správně generovat příkazy Update pro sloupce s možnou hodnotou null. |
| SourceVersion |
Získá nebo nastaví DataRowVersion použití při načítání Value. |
| Value |
Získá nebo nastaví hodnotu parametru. |
Metody
| Name | Description |
|---|---|
| CreateObjRef(Type) |
Vytvoří objekt, který obsahuje všechny relevantní informace potřebné k vygenerování proxy serveru sloužícího ke komunikaci se vzdáleným objektem. (Zděděno od MarshalByRefObject) |
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetLifetimeService() |
Zastaralé.
Načte objekt služby aktuální životnosti, který řídí zásady životnosti pro tuto instanci. (Zděděno od MarshalByRefObject) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| InitializeLifetimeService() |
Zastaralé.
Získá objekt služby životnosti pro řízení zásad životnosti pro tuto instanci. (Zděděno od MarshalByRefObject) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| MemberwiseClone(Boolean) |
Vytvoří mělkou kopii aktuálního MarshalByRefObject objektu. (Zděděno od MarshalByRefObject) |
| ResetDbType() |
Obnoví typ přidružený k tomuto OdbcParameter. |
| ResetOdbcType() |
Obnoví typ přidružený k tomuto OdbcParameter. |
| ToString() |
Získá řetězec, který obsahuje ParameterName. |
Explicitní implementace rozhraní
| Name | Description |
|---|---|
| ICloneable.Clone() |
Popis tohoto člena naleznete v tématu Clone(). |
| IDbDataParameter.Precision |
Určuje přesnost číselných parametrů. (Zděděno od DbParameter) |
| IDbDataParameter.Scale |
Popis tohoto člena naleznete v tématu Scale. (Zděděno od DbParameter) |