OleDbParameter Třída

Definice

Představuje parametr pro OleDbCommand a volitelně také mapování na sloupec DataSet.Represents a parameter to an OleDbCommand and optionally its mapping to a DataSet column. Tuto třídu nelze zdědit.This class cannot be inherited.

public ref class OleDbParameter sealed : System::Data::Common::DbParameter, ICloneable
public ref class OleDbParameter sealed : MarshalByRefObject, ICloneable, System::Data::IDbDataParameter
[System.ComponentModel.TypeConverter(typeof(System.Data.OleDb.OleDbParameter/OleDbParameterConverter))]
public sealed class OleDbParameter : System.Data.Common.DbParameter, ICloneable
[System.ComponentModel.TypeConverter(typeof(System.Data.OleDb.OleDbParameterConverter))]
public sealed class OleDbParameter : MarshalByRefObject, ICloneable, System.Data.IDbDataParameter
type OleDbParameter = class
    inherit DbParameter
    interface IDataParameter
    interface IDbDataParameter
    interface ICloneable
type OleDbParameter = class
    inherit MarshalByRefObject
    interface IDbDataParameter
    interface IDataParameter
    interface ICloneable
type OleDbParameter = class
    inherit DbParameter
    interface ICloneable
    interface IDbDataParameter
    interface IDataParameter
Public NotInheritable Class OleDbParameter
Inherits DbParameter
Implements ICloneable
Public NotInheritable Class OleDbParameter
Inherits MarshalByRefObject
Implements ICloneable, IDbDataParameter
Dědičnost
OleDbParameter
Dědičnost
Dědičnost
OleDbParameter
Atributy
Implementuje

Příklady

Následující příklad vytvoří více instancí OleDbParameter prostřednictvím kolekce OleDbParameterCollection v rámci OleDbDataAdapter.The following example creates multiple instances of OleDbParameter through the OleDbParameterCollection collection within the OleDbDataAdapter. Tyto parametry slouží k výběru dat ze zdroje dat a k umístění dat do DataSet.These parameters are used to select data from the data source and place the data in the DataSet. Tento příklad předpokládá, že DataSet a OleDbDataAdapter již byly vytvořeny pomocí příslušného schématu, příkazů a připojení.This example assumes that a DataSet and an OleDbDataAdapter have already been created by using the appropriate schema, commands, and connection.

public DataSet GetDataSetFromAdapter(
    DataSet dataSet, string connectionString, string queryString)
{
    using (OleDbConnection connection =
               new OleDbConnection(connectionString))
    {
        OleDbDataAdapter adapter =
            new OleDbDataAdapter(queryString, connection);

        // Set the parameters.
        adapter.SelectCommand.Parameters.Add(
            "@CategoryName", OleDbType.VarChar, 80).Value = "toasters";
        adapter.SelectCommand.Parameters.Add(
            "@SerialNum", OleDbType.Integer).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 OleDbConnection(connectionString)
        Dim adapter As New OleDbDataAdapter(queryString, connection)

        ' Set the parameters.
        adapter.SelectCommand.Parameters.Add( _
            "@CategoryName", OleDbType.VarChar, 80).Value = "toasters"
        adapter.SelectCommand.Parameters.Add( _
         "@SerialNum", OleDbType.Integer).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

Rozhraní OLE DB.NET Framework Zprostředkovatel dat používá poziční parametry, které jsou označeny otazníkem (?) namísto pojmenovaných parametrů.The OLE DB.NET Framework Data Provider uses positional parameters that are marked with a question mark (?) instead of named parameters.

Při dotazování databáze Oracle pomocí Zprostředkovatel Microsoft OLE DB pro Oracle (MADAORA) a rozhraní OLE DB.NET Framework Zprostředkovatel dat pomocí klauzule LIKE pro dotazování hodnot v polích s pevnou délkou nemusí vracet všechny očekávané shody.When querying an Oracle database using the Microsoft OLE DB Provider for Oracle (MSDAORA) and the OLE DB.NET Framework Data Provider, using the LIKE clause to query values in fixed-length fields may not return all expected matches. Důvodem je, že když Oracle odpovídá hodnotám pro pole s pevnou délkou v klauzuli LIKE, odpovídá celé délce řetězce, včetně všech koncových mezer odsazení.The reason is that when Oracle matches values for fixed-length fields in a LIKE clause, it matches the entire length of the string, including any padding trailing spaces. 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 nevrátí řádek.For example, if a table in an Oracle database contains a field named "Field1" that is defined as char(3), and you enter the value "a" into a row of that table, the following code does not return the row.

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" (výplň s koncovými mezerami) na pevnou délku pole 3), která Oracle nepovažuje za shodu pro hodnotu parametru "a" v případě LIKE porovnání polí s pevnou délkou.This is because Oracle stores the column value as "a " (padding "a", with trailing spaces, to the fixed field length of 3), which Oracle does not treat as a match for the parameter value of "a" in the case of a LIKE comparison of fixed-length fields.

Chcete-li tento problém vyřešit, přiložte k hodnotě parametru ("a%") zástupný znak ("%") a použijte místo něj porovnání = SQL.To resolve this problem, append a percentage ("%") wildcard character to the parameter value ("a%"), or use an SQL = comparison instead.

Konstruktory

OleDbParameter()

Inicializuje novou instanci třídy OleDbParameter.Initializes a new instance of the OleDbParameter class.

OleDbParameter(String, Object)

Inicializuje novou instanci třídy OleDbParameter, která používá název parametru a hodnotu nového OleDbParameter.Initializes a new instance of the OleDbParameter class that uses the parameter name and the value of the new OleDbParameter.

OleDbParameter(String, OleDbType)

Inicializuje novou instanci třídy OleDbParameter, která používá název parametru a datový typ.Initializes a new instance of the OleDbParameter class that uses the parameter name and data type.

OleDbParameter(String, OleDbType, Int32)

Inicializuje novou instanci třídy OleDbParameter, která používá název parametru, datový typ a délku.Initializes a new instance of the OleDbParameter class that uses the parameter name, data type, and length.

OleDbParameter(String, OleDbType, Int32, ParameterDirection, Boolean, Byte, Byte, String, DataRowVersion, Object)

Inicializuje novou instanci třídy OleDbParameter, která používá název parametru, datový typ, délku, název zdrojového sloupce, směr parametru, číselnou přesnost a další vlastnosti.Initializes a new instance of the OleDbParameter class that uses the parameter name, data type, length, source column name, parameter direction, numeric precision, and other properties.

OleDbParameter(String, OleDbType, Int32, ParameterDirection, Byte, Byte, String, DataRowVersion, Boolean, Object)

Inicializuje novou instanci třídy OleDbParameter, která používá název parametru, datový typ, délku, název zdrojového sloupce, směr parametru, číselnou přesnost a další vlastnosti.Initializes a new instance of the OleDbParameter class that uses the parameter name, data type, length, source column name, parameter direction, numeric precision, and other properties.

OleDbParameter(String, OleDbType, Int32, String)

Inicializuje novou instanci třídy OleDbParameter, která používá název parametru, datový typ, délku a název zdrojového sloupce.Initializes a new instance of the OleDbParameter class that uses the parameter name, data type, length, and source column name.

Vlastnosti

DbType

Získá nebo nastaví DbType parametru.Gets or sets the DbType of the parameter.

Direction

Získává nebo nastavuje hodnotu, která indikuje, jestli je parametr jenom vstupní, obousměrný, obousměrný nebo uložený parametr návratové hodnoty.Gets or sets a value that indicates whether the parameter is input-only, output-only, bidirectional, or a stored procedure return-value parameter.

IsNullable

Získává nebo nastavuje hodnotu, která indikuje, jestli parametr přijímá hodnoty null.Gets or sets a value that indicates whether the parameter accepts null values.

Offset
OleDbType

Získá nebo nastaví OleDbType parametru.Gets or sets the OleDbType of the parameter.

ParameterName

Získá nebo nastaví název OleDbParameter.Gets or sets the name of the OleDbParameter.

Precision

Získá nebo nastaví maximální počet číslic, které slouží k reprezentaci vlastnosti Value.Gets or sets the maximum number of digits used to represent the Value property.

Scale

Získá nebo nastaví počet desetinných míst, na které je Value vyřešen.Gets or sets the number of decimal places to which Value is resolved.

Size

Získá nebo nastaví maximální velikost dat ve sloupci v bajtech.Gets or sets the maximum size, in bytes, of the data within the column.

SourceColumn

Získá nebo nastaví název zdrojového sloupce namapovaného na DataSet a používá se k načtení nebo vrácení Value.Gets or sets the name of the source column mapped to the DataSet and used for loading or returning the Value.

SourceColumnNullMapping

Získává nebo nastavuje hodnotu, která indikuje, jestli zdrojový sloupec může mít hodnotu null.Gets or sets a value which indicates whether the source column is nullable. To umožňuje DbCommandBuilder správně Generovat příkazy aktualizace pro sloupce s možnou hodnotou null.This allows DbCommandBuilder to correctly generate Update statements for nullable columns.

SourceVersion

Získá nebo nastaví DataRowVersion, který se použije při načítání Value.Gets or sets the DataRowVersion to use when you load Value.

Value

Získá nebo nastaví hodnotu parametru.Gets or sets the value of the parameter.

Metody

CreateObjRef(Type)

Vytvoří objekt, který obsahuje všechny relevantní informace požadované pro vygenerování proxy serveru, který se používá ke komunikaci se vzdáleným objektem.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

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

Určí, zda se zadaný objekt rovná aktuálnímu objektu.Determines whether the specified object is equal to the current object.

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

Slouží jako výchozí funkce hash.Serves as the default hash function.

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

Načte aktuální objekt služby životnosti, který řídí zásady životního cyklu pro tuto instanci.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

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

Získá Type aktuální instance.Gets the Type of the current instance.

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

Získá objekt služby životnosti, který řídí zásady životního cyklu pro tuto instanci.Obtains a lifetime service object to control the lifetime policy for this instance.

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

Vytvoří kopii aktuálního Objectbez podstruktury.Creates a shallow copy of the current Object.

(Zděděno od Object)
MemberwiseClone(Boolean)

Vytvoří kopii aktuálního objektu MarshalByRefObject bez podstruktury.Creates a shallow copy of the current MarshalByRefObject object.

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

Obnoví typ přidružený k tomuto OleDbParameter.Resets the type associated with this OleDbParameter.

ResetOleDbType()

Obnoví typ přidružený k tomuto OleDbParameter.Resets the type associated with this OleDbParameter.

ToString()

Načte řetězec, který obsahuje ParameterName.Gets a string that contains the ParameterName.

Explicitní implementace rozhraní

ICloneable.Clone()

Popis tohoto člena naleznete v tématu Clone().For a description of this member, see Clone().

IDataParameter.SourceVersion (Zděděno od DbParameter)
IDbDataParameter.Precision

Určuje přesnost číselných parametrů.Indicates the precision of numeric parameters.

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

Popis tohoto člena naleznete v tématu Scale.For a description of this member, see Scale.

(Zděděno od DbParameter)

Platí pro

Viz také