OdbcParameter Klasse

Definition

Stellt einen Parameter für einen OdbcCommand und optional für seine Zuordnung zu einer DataColumn dar.Represents a parameter to an OdbcCommand and optionally, its mapping to a DataColumn. Diese Klasse kann nicht vererbt werden.This class cannot be inherited.

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
Vererbung
OdbcParameter
Vererbung
Vererbung
OdbcParameter
Attribute
Implementiert

Beispiele

Im folgenden Beispiel werden mehrere Instanzen von OdbcParameter über das OdbcParameterCollection in der erstellt OdbcDataAdapter .The following example creates multiple instances of OdbcParameter through the OdbcParameterCollection within the OdbcDataAdapter. Diese Parameter werden verwendet, um Daten aus der Datenquelle auszuwählen und die Daten in der zu platzieren DataSet .These parameters are used to select data from the data source and place the data in the DataSet. In diesem Beispiel wird davon ausgegangen, dass ein DataSet und ein OdbcDataAdapter bereits mithilfe des entsprechenden Schemas, der Befehle und der Verbindung erstellt wurden.This example assumes that a DataSet and an OdbcDataAdapter have already been created by using the appropriate schema, commands, and connection.

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

Hinweise

Bei Parameternamen wird die Groß- und Kleinschreibung nicht berücksichtigt.Parameter names are not case sensitive.

Beim Abfragen einer Oracle-Datenbank mithilfe der Microsoft OLE DB-Anbieter für Oracle (MSDAORA) und der ODBC-.NET Framework Datenanbieter werden bei Verwendung der- LIKE Klausel zum Abfragen von Werten in Feldern mit fester Länge möglicherweise nicht alle erwarteten Übereinstimmungen zurückgegeben.When querying an Oracle database using the Microsoft OLE DB Provider for Oracle (MSDAORA) and the ODBC .NET Framework Data Provider, using the LIKE clause to query values in fixed-length fields might not return all expected matches. Der Grund hierfür ist, dass Oracle bei der Übereinstimmung mit Werten für Felder mit fester Länge in einer- LIKE Klausel mit der gesamten Zeichenfolge übereinstimmt, einschließlich der Leerzeichen, die nach gestellte Leerzeichen stehen.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. Wenn eine Tabelle in einer Oracle-Datenbank z. b. ein Feld mit dem Namen "Field1" enthält, das als definiert ist char(3) , und Sie den Wert "a" in eine Zeile dieser Tabelle eingeben, gibt der folgende Code die Zeile nicht zurück.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 will 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();  

Der Grund hierfür ist, dass Oracle den Spaltenwert als "a" (Auffüll Zeichen "a" mit nachfolgenden Leerzeichen in der festen Feldlänge 3 speichert), die Oracle nicht als eine Entsprechung für den Parameterwert "a" im Fall eines LIKE Vergleichs von Feldern mit fester Länge behandelt.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.

Um dieses Problem zu beheben, fügen Sie ein Prozentzeichen ("%") als Platzhalter Zeichen an den Parameterwert ( "a%" ) an, oder verwenden Sie stattdessen einen SQL- = Vergleich.To resolve this problem, append a percentage ("%") wildcard character to the parameter value ("a%"), or use an SQL = comparison instead.

Konstruktoren

OdbcParameter()

Initialisiert eine neue Instanz der OdbcParameter-Klasse.Initializes a new instance of the OdbcParameter class.

OdbcParameter(String, Object)

Initialisiert eine neue Instanz der OdbcParameter-Klasse, die den Parameternamen und ein OdbcParameter-Objekt verwendet.Initializes a new instance of the OdbcParameter class that uses the parameter name and an OdbcParameter object.

OdbcParameter(String, OdbcType)

Initialisiert eine neue Instanz der OdbcParameter-Klasse, die den Parameternamen und den Datentyp verwendet.Initializes a new instance of the OdbcParameter class that uses the parameter name and data type.

OdbcParameter(String, OdbcType, Int32)

Initialisiert eine neue Instanz der OdbcParameter-Klasse, die den Parameternamen, den Datentyp und die Länge verwendet.Initializes a new instance of the OdbcParameter class that uses the parameter name, data type, and length.

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

Initialisiert eine neue Instanz der OdbcParameter-Klasse, die Parametername, Datentyp, Länge, Quellspaltenname, Richtung des Parameters, numerische Genauigkeit und andere Eigenschaften verwendet.Initializes a new instance of the OdbcParameter class that uses the parameter name, data type, length, source column name, parameter direction, numeric precision, and other properties.

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

Initialisiert eine neue Instanz der OdbcParameter-Klasse, die Parametername, Datentyp, Länge, Quellspaltenname, Richtung des Parameters, numerische Genauigkeit und andere Eigenschaften verwendet.Initializes a new instance of the OdbcParameter class that uses the parameter name, data type, length, source column name, parameter direction, numeric precision, and other properties.

OdbcParameter(String, OdbcType, Int32, String)

Initialisiert eine neue Instanz der OdbcParameter-Klasse, die den Parameternamen, den Datentyp, die Länge und den Quellspaltennamen verwendet.Initializes a new instance of the OdbcParameter class that uses the parameter name, data type, length, and source column name.

Eigenschaften

DbType

Ruft den DbType des Parameters ab oder legt ihn fest.Gets or sets the DbType of the parameter.

Direction

Ruft einen Wert ab oder legt einen Wert fest, der angibt, ob der Parameter nur zur Eingabe, nur zur Ausgabe oder bidirektional verwendet wird oder ob es sich um einen Parameter für den Rückgabewert einer gespeicherten Prozedur handelt.Gets or sets a value that indicates whether the parameter is input-only, output-only, bidirectional, or a stored procedure return value parameter.

IsNullable

Ruft einen Wert ab, der angibt, ob der Parameter NULL-Werte akzeptiert, oder legt diesen fest.Gets or sets a value that indicates whether the parameter accepts null values.

OdbcType

Ruft den OdbcType des Parameters ab oder legt ihn fest.Gets or sets the OdbcType of the parameter.

Offset

Ruft den Offset der Daten innerhalb der Spalte ab oder legt diesen fest.Gets or sets the offset of the data within the column.

ParameterName

Ruft den Namen der OdbcParameter ab oder legt diesen fest.Gets or sets the name of the OdbcParameter.

Precision

Ruft die Anzahl von Ziffern ab, die zur Darstellung der Value-Eigenschaft verwendet werden kann, oder legt diese fest.Gets or sets the number of digits used to represent the Value property.

Scale

Ruft die Anzahl der Dezimalstellen ab, in die Value aufgelöst wird, oder legt diese fest.Gets or sets the number of decimal places to which Value is resolved.

Size

Ruft die maximale Größe der Daten innerhalb der Spalte ab oder legt diese fest.Gets or sets the maximum size of the data within the column.

SourceColumn

Ruft den Namen der Quellspalte ab, die dem DataSet zugeordnet ist und zum Laden oder Zurückgeben des Value verwendet wird, oder legt diesen fest.Gets or sets the name of the source column mapped to the DataSet and used for loading or returning the Value.

SourceColumnNullMapping

Ruft einen Wert ab, der angibt, ob die Quellspalte NULL-Werte zulässt, oder legt diesen fest.Gets or sets a value which indicates whether the source column is nullable. Auf diese Weise kann DbCommandBuilder Update-Anweisungen für Spalten, die NULL-Werte zulassen, ordnungsgemäß generieren.This lets DbCommandBuilder correctly generate Update statements for nullable columns.

SourceVersion

Ruft die DataRowVersion ab, die beim Laden von Value verwendet werden soll, oder legt diese fest.Gets or sets the DataRowVersion to use when you load Value.

Value

Ruft den Wert des Parameters ab oder legt diesen fest.Gets or sets the value of the parameter.

Methoden

CreateObjRef(Type)

Erstellt ein Objekt mit allen relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt erforderlich sind.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Geerbt von MarshalByRefObject)
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.Determines whether the specified object is equal to the current object.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Geerbt von Object)
GetLifetimeService()
Veraltet.

Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinien für diese Instanz steuert.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Geerbt von MarshalByRefObject)
GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Geerbt von Object)
InitializeLifetimeService()
Veraltet.

Ruft ein Lebensdauerdienstobjekt zur Steuerung der Lebensdauerrichtlinie für diese Instanz ab.Obtains a lifetime service object to control the lifetime policy for this instance.

(Geerbt von MarshalByRefObject)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Geerbt von Object)
MemberwiseClone(Boolean)

Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts.Creates a shallow copy of the current MarshalByRefObject object.

(Geerbt von MarshalByRefObject)
ResetDbType()

Setzt den diesem OdbcParameter zugeordneten Typ zurück.Resets the type associated with this OdbcParameter.

ResetOdbcType()

Setzt den diesem OdbcParameter zugeordneten Typ zurück.Resets the type associated with this OdbcParameter.

ToString()

Ruft eine Zeichenfolge ab, die den ParameterName enthält.Gets a string that contains the ParameterName.

Explizite Schnittstellenimplementierungen

ICloneable.Clone()

Eine Beschreibung dieses Elements finden Sie unter Clone().For a description of this member, see Clone().

IDataParameter.SourceVersion

Ruft die DataRowVersion ab, die beim Laden von Value verwendet werden soll, oder legt diese fest.Gets or sets the DataRowVersion to use when loading Value.

(Geerbt von DbParameter)
IDbDataParameter.Precision

Gibt die Genauigkeit numerischer Parameter an.Indicates the precision of numeric parameters.

(Geerbt von DbParameter)
IDbDataParameter.Scale

Eine Beschreibung dieses Elements finden Sie unter Scale.For a description of this member, see Scale.

(Geerbt von DbParameter)

Gilt für: