Sdílet prostřednictvím


OdbcParameter Třída

Definice

Představuje parametr a OdbcCommand 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
type OdbcParameter = class
    inherit DbParameter
    interface ICloneable
    interface IDataParameter
    interface IDbDataParameter
[<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
OdbcParameter
Dědičnost
Dědičnost
OdbcParameter
Atributy
Implementuje

Příklady

Následující příklad vytvoří více instancí objektu OdbcParameter prostřednictvím objektu OdbcParameterCollection v rámci objektu OdbcDataAdapter. Tyto parametry slouží k výběru dat ze zdroje dat a umístění dat do DataSet. V tomto příkladu se předpokládá, že DataSet objekty a a OdbcDataAdapter již byly vytvořeny 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 malá písmena.

Při dotazování databáze Oracle pomocí Zprostředkovatel Microsoft OLE DB pro Oracle (MSDAORA) a zprostředkovatele dat ROZHRANÍ ODBC .NET Framework nemusí použití LIKE klauzule k dotazování na hodnoty v polích s pevnou délkou vrátit všechny očekávané shody. Důvodem je to, že když Oracle porovná hodnoty polí s pevnou délkou LIKE v klauzuli, odpovídá celé délce řetězce, včetně všech koncových mezer odsazení. Pokud například tabulka v databázi Oracle obsahuje pole s názvem "Pole1", které je definováno jako char(3)a zadáte hodnotu "a" do řádku této tabulky, následující kód tento řá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 v případě porovnání polí s pevnou délkou LIKE nebere jako shodu pro hodnotu parametru "a".

Chcete-li tento problém vyřešit, připojte k hodnotě parametru () zástupný znak procenta ("a%""%") nebo místo toho použijte porovnání SQL = .

Konstruktory

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)

Inicializuje novou instanci OdbcParameter třídy, která používá název parametru a datový typ.

OdbcParameter(String, OdbcType, Int32)

Inicializuje novou instanci OdbcParameter třídy, která používá název parametru, datový typ a délku.

OdbcParameter(String, OdbcType, Int32, ParameterDirection, Boolean, Byte, Byte, String, DataRowVersion, Object)

Inicializuje novou instanci třídy, která používá název parametru, datový typ, délku, název zdrojového OdbcParameter sloupce, směr parametru, přesnost čísel 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, datový typ, délku, název zdrojového OdbcParameter sloupce, směr parametru, přesnost čísel a další vlastnosti.

OdbcParameter(String, OdbcType, Int32, String)

Inicializuje novou instanci OdbcParameter třídy, která používá název parametru, datový typ, délku a název zdrojového sloupce.

Vlastnosti

DbType

Získá nebo nastaví DbType parametr.

Direction

Získá nebo nastaví hodnotu, která označuje, zda parametr je pouze vstup, pouze výstup, obousměrný nebo uložená procedura vrátit hodnotu parametru.

IsNullable

Získá nebo nastaví hodnotu, která označuje, zda parametr přijímá hodnoty null.

OdbcType

Získá nebo nastaví OdbcType parametr.

Offset

Představuje parametr a OdbcCommand volitelně jeho mapování na DataColumn. Tato třída se nemůže dědit.

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 ve sloupci.

SourceColumn

Získá nebo nastaví název zdrojového sloupce mapovaného na DataSet a použije se k načtení nebo vrácení Value.

SourceColumnNullMapping

Získá nebo nastaví hodnotu, která označuje, zda zdrojový sloupec je null. To umožňuje DbCommandBuilder správně vygenerovat příkazy Update pro sloupce s možnou hodnotou null.

SourceVersion

Získá nebo nastaví DataRowVersion na použití při načtení Value.

Value

Získá nebo nastaví hodnotu parametru.

Metody

CreateObjRef(Type)

Vytvoří objekt, který obsahuje všechny relevantní informace potřebné k vygenerování proxy používaného ke komunikaci se vzdáleným objektem.

(Zděděno od MarshalByRefObject)
Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(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á aktuální Type instanci.

(Zděděno od Object)
InitializeLifetimeService()
Zastaralé.

Získá objekt služby životnosti, který řídí zásady životnosti pro tuto instanci.

(Zděděno od MarshalByRefObject)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(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í

ICloneable.Clone()

Popis tohoto člena najdete v tématu Clone().

IDbDataParameter.Precision

Označuje přesnost číselných parametrů.

(Zděděno od DbParameter)
IDbDataParameter.Scale

Popis tohoto člena najdete v tématu Scale.

(Zděděno od DbParameter)

Platí pro

Viz také