Dieser Artikel wurde manuell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen.
Übersetzung
Original
Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

OleDbParameter-Klasse

Stellt einen Parameter für einen OleDbCommand sowie optional dessen Zuordnung zu einer DataSet-Spalte dar. Diese Klasse kann nicht vererbt werden.

System.Object
  System.MarshalByRefObject
    System.Data.Common.DbParameter
      System.Data.OleDb.OleDbParameter

Namespace:  System.Data.OleDb
Assembly:  System.Data (in System.Data.dll)
public sealed class OleDbParameter : DbParameter, 
	ICloneable, IDbDataParameter, IDataParameter

Der OleDbParameter-Typ macht die folgenden Member verfügbar.

  Name Beschreibung
Öffentliche Methode OleDbParameter() Initialisiert eine neue Instanz der OleDbParameter-Klasse.
Öffentliche Methode OleDbParameter(String, OleDbType) Initialisiert eine neue Instanz der OleDbParameter-Klasse, die den Parameternamen und den Datentyp verwendet.
Öffentliche Methode OleDbParameter(String, Object) Initialisiert eine neue Instanz der OleDbParameter-Klasse, die den Parameternamen und den Wert des neuen OleDbParameter verwendet.
Öffentliche Methode OleDbParameter(String, OleDbType, Int32) Initialisiert eine neue Instanz der OleDbParameter-Klasse, die den Parameternamen, den Datentyp und die Länge verwendet.
Öffentliche Methode OleDbParameter(String, OleDbType, Int32, String) Initialisiert eine neue Instanz der OleDbParameter-Klasse, die den Parameternamen, den Datentyp, die Länge und den Quellspaltennamen verwendet.
Öffentliche Methode OleDbParameter(String, OleDbType, Int32, ParameterDirection, Boolean, Byte, Byte, String, DataRowVersion, Object) Initialisiert eine neue Instanz der OleDbParameter-Klasse, die den Parameternamen, den Datentyp, die Länge, den Namen der Quellspalte, die Parameterrichtung, die numerische Genauigkeit sowie andere Eigenschaften verwendet.
Öffentliche Methode OleDbParameter(String, OleDbType, Int32, ParameterDirection, Byte, Byte, String, DataRowVersion, Boolean, Object) Initialisiert eine neue Instanz der OleDbParameter-Klasse, die den Parameternamen, den Datentyp, die Länge, den Namen der Quellspalte, die Parameterrichtung, die numerische Genauigkeit sowie andere Eigenschaften verwendet.
Zum Seitenanfang
  Name Beschreibung
Öffentliche Eigenschaft DbType Ruft die DbType-Enumeration des Parameters ab oder legt diese fest. (Überschreibt DbParameter.DbType.)
Öffentliche Eigenschaft Direction Ruft einen Wert ab, der angibt, ob der Parameter nur zur Eingabe, nur zur Ausgabe oder zu beidem verwendet wird oder ob es sich um einen Parameter für den Rückgabewert einer gespeicherten Prozedur handelt, oder legt diesen Wert fest. (Überschreibt DbParameter.Direction.)
Öffentliche Eigenschaft IsNullable Ruft einen Wert ab, der angibt, ob der Parameter NULL-Werte akzeptiert, oder legt diesen fest. (Überschreibt DbParameter.IsNullable.)
Öffentliche Eigenschaft OleDbType Ruft die OleDbType-Enumeration des Parameters ab oder legt diese fest.
Öffentliche Eigenschaft ParameterName Ruft den Namen des OleDbParameter ab oder legt diesen fest. (Überschreibt DbParameter.ParameterName.)
Öffentliche Eigenschaft Precision Ruft die maximale Anzahl von Ziffern ab, die zur Darstellung der Value-Eigenschaft verwendet werden kann, oder legt diese fest.
Öffentliche Eigenschaft Scale Ruft die Anzahl der Dezimalstellen ab, in die der Value aufgelöst wird, oder legt diese fest.
Öffentliche Eigenschaft Size Ruft die maximale Größe der Daten innerhalb der Spalte in Bytes ab oder legt diese fest. (Überschreibt DbParameter.Size.)
Öffentliche Eigenschaft 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. (Überschreibt DbParameter.SourceColumn.)
Öffentliche Eigenschaft SourceColumnNullMapping Ruft einen Wert ab oder legt einen Wert fest, der angibt, ob die Quellspalte NULL-Werte zulässt. So kann DbCommandBuilder ordnungsgemäß Update-Anweisungen für Spalten generieren, die NULL-Werte zulassen. (Überschreibt DbParameter.SourceColumnNullMapping.)
Öffentliche Eigenschaft SourceVersion Ruft die DataRowVersion ab, die beim Laden von Value verwendet werden soll, oder legt diese fest. (Überschreibt DbParameter.SourceVersion.)
Öffentliche Eigenschaft Value Ruft den Wert des Parameters ab oder legt diesen fest. (Überschreibt DbParameter.Value.)
Zum Seitenanfang
  Name Beschreibung
Öffentliche Methode CreateObjRef Erstellt ein Objekt mit allen relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt erforderlich sind. (Von MarshalByRefObject geerbt.)
Öffentliche Methode Equals(Object) Bestimmt, ob das angegebene Object und das aktuelle Object gleich sind. (Von Object geerbt.)
Geschützte Methode Finalize Gibt einem Objekt Gelegenheit zu dem Versuch, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der automatische Speicherbereinigung freigegeben wird. (Von Object geerbt.)
Öffentliche Methode GetHashCode Fungiert als Hashfunktion für einen bestimmten Typ. (Von Object geerbt.)
Öffentliche Methode GetLifetimeService Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinien für diese Instanz steuert. (Von MarshalByRefObject geerbt.)
Öffentliche Methode GetType Ruft den Type der aktuellen Instanz ab. (Von Object geerbt.)
Öffentliche Methode InitializeLifetimeService Ruft ein Lebensdauerdienstobjekt ab, mit dem die Lebensdauerrichtlinien für diese Instanz gesteuert werden können. (Von MarshalByRefObject geerbt.)
Geschützte Methode MemberwiseClone() Erstellt eine flache Kopie des aktuellen Object. (Von Object geerbt.)
Geschützte Methode MemberwiseClone(Boolean) Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts. (Von MarshalByRefObject geerbt.)
Öffentliche Methode ResetDbType Setzt den diesem OleDbParameter zugeordneten Typ zurück. (Überschreibt DbParameter.ResetDbType().)
Öffentliche Methode ResetOleDbType Setzt den diesem OleDbParameter zugeordneten Typ zurück.
Öffentliche Methode ToString Ruft eine Zeichenfolge ab, die den ParameterName enthält. (Überschreibt Object.ToString().)
Zum Seitenanfang
  Name Beschreibung
Explizite Schnittstellenimplementierung Private Methode ICloneable.Clone Eine Beschreibung dieses Members finden Sie unter der ICloneable.Clone-Methode.
Explizite Schnittstellenimplementierung Private Eigenschaft IDbDataParameter.Precision Gibt die Genauigkeit numerischer Parameter an. (Von DbParameter geerbt.)
Explizite Schnittstellenimplementierung Private Eigenschaft IDbDataParameter.Scale Eine Beschreibung dieses Members finden Sie unter IDbDataParameter.Scale. (Von DbParameter geerbt.)
Zum Seitenanfang

Anstelle benannter Parameter verwendet der OLE DB-.NET Framework-Datenanbieter mit einem Fragezeichen (?) markierte Positionsparameter.

Wenn Sie eine Oracle-Datenbank mit dem Microsoft OLE DB-Anbieter für Oracle (MSDAORA) und dem OLE DB.NET Framework-Datenanbieter abfragen und Sie dabei die LIKE-Klausel zur Abfrage von Werten in Feldern mit fester Länge verwenden, werden möglicherweise nicht alle erwarteten Übereinstimmungen zurückgegeben. Der Grund hierfür ist, dass Oracle beim Abstimmen von Werten für Felder fester Länge in einer LIKE-Klausel die gesamte Länge der Zeichenfolge verwendet einschließlich aller angefügten nachstehenden Leerzeichen. Wenn eine Tabelle in einer Oracle-Datenbank z. B. ein Feld mit dem Namen "Field1" enthält, das als char(3) definiert ist, und Sie den Wert "a" in eine Zeile dieser Tabelle eingeben, kann der folgende Code die Zeile nicht zurückgeben.

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();

Die Ursache hierfür ist, dass Oracle den Spaltenwert als "a " (an "a" sind Leerzeichen angefügt, um die feste Länge von 3 zu erreichen) speichert. Dieser Wert kann von Oracle nicht als Übereinstimmung mit dem Wert von "a" bei einem LIKE-Vergleich von Feldern fester Länge ausgewertet werden.

Zum Beheben dieses Problems, fügen Sie als Platzhalterzeichen ein Prozentzeichen ("%") an den Parameterwert an ("a%") oder verwenden stattdessen einen SQL-=-Vergleich.

Im folgenden Beispiel werden über die OleDbParameterCollection-Auflistung im OleDbDataAdapter mehrere Instanzen von OleDbParameter erstellt. Mithilfe dieser Parameter werden Daten aus der Datenquelle ausgewählt und in der DataSet-Klasse platziert. In diesem Beispiel wird davon ausgegangen, dass mithilfe des entsprechenden Schemas, der entsprechenden Befehle sowie der entsprechenden Verbindung bereits ein DataSet und ein OleDbDataAdapter erstellt wurden.


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;
}


.NET Framework

Unterstützt in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 oder höher, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core wird nicht unterstützt), Windows Server 2008 R2 (Server Core wird mit SP1 oder höher unterstützt), Windows Server 2003 SP2

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.
Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)
Community-Inhalt Hinzufügen
Anmerkungen FAQ
Microsoft führt eine Onlineumfrage durch, um Ihre Meinung zur MSDN-Website zu erfahren. Wenn Sie sich zur Teilnahme entscheiden, wird Ihnen die Onlineumfrage angezeigt, sobald Sie die MSDN-Website verlassen.

Möchten Sie an der Umfrage teilnehmen?