Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

SqlDataReader-Klasse

 

Veröffentlicht: Oktober 2016

Stellt ein Verfahren zum Lesen eines Vorwärtsstreams von Zeilen aus einer SQL Server-Datenbank bereit. Diese Klasse kann nicht vererbt werden.

Namespace:   System.Data.SqlClient
Assembly:  System.Data (in System.Data.dll)

System.Object
  System.MarshalByRefObject
    System.Data.Common.DbDataReader
      System.Data.SqlClient.SqlDataReader

public class SqlDataReader : DbDataReader, IDataReader, IDisposable, 
	IDataRecord

NameBeschreibung
System_CAPS_protpropertyConnection

Ruft den SqlConnection ab, der dem SqlDataReader zugeordnet ist.

System_CAPS_pubpropertyDepth

Ruft einen Wert, der die Tiefe der Schachtelung für die aktuelle Zeile angibt.(Überschreibt DbDataReader.Depth.)

System_CAPS_pubpropertyFieldCount

Ruft die Anzahl der Spalten in der aktuellen Zeile ab.(Überschreibt DbDataReader.FieldCount.)

System_CAPS_pubpropertyHasRows

Ruft einen Wert, der angibt, ob die SqlDataReader eine oder mehrere Zeilen enthält.(Überschreibt DbDataReader.HasRows.)

System_CAPS_pubpropertyIsClosed

Ruft einen booleschen Wert, der angibt, ob das angegebene SqlDataReader -Instanz geschlossen wurde.(Überschreibt DbDataReader.IsClosed.)

System_CAPS_pubpropertyItem[Int32]

Ruft den Wert der angegebenen Spalte im systemeigenen Format Ordnungszahl der Spalte ab.(Überschreibt DbDataReader.Item[Int32].)

System_CAPS_pubpropertyItem[String]

Ruft den Wert der angegebenen Spalte im systemeigenen Format erhält den Namen der Spalte ab.(Überschreibt DbDataReader.Item[String].)

System_CAPS_pubpropertyRecordsAffected

Ruft die Anzahl der Zeilen geändert, eingefügt oder gelöscht werden, durch die Ausführung der Transact-SQL-Anweisung ab.(Überschreibt DbDataReader.RecordsAffected.)

System_CAPS_pubpropertyVisibleFieldCount

Ruft die Anzahl der nicht ausgeblendeten Felder im SqlDataReader ab.(Überschreibt DbDataReader.VisibleFieldCount.)

NameBeschreibung
System_CAPS_pubmethodClose()

Schließt das SqlDataReader-Objekt.(Überschreibt DbDataReader.Close().)

System_CAPS_pubmethodCreateObjRef(Type)

Erstellt ein Objekt, das alle relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt verwendet die enthält.(Geerbt von „MarshalByRefObject“.)

System_CAPS_pubmethodDispose()

Gibt alle von der aktuellen Instanz der DbDataReader-Klasse verwendeten Ressourcen frei.(Geerbt von „DbDataReader“.)

System_CAPS_protmethodDispose(Boolean)

Die vom verwendeten verwalteten Ressourcen frei der DbDataReader und optional die nicht verwalteten Ressourcen frei.(Geerbt von „DbDataReader“.)

System_CAPS_pubmethodEquals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.(Geerbt von „Object“.)

System_CAPS_protmethodFinalize()

Gibt einem Objekt Gelegenheit, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Geerbt von „Object“.)

System_CAPS_pubmethodGetBoolean(Int32)

Ruft den Wert der angegebenen Spalte als booleschen Wert ab.(Überschreibt DbDataReader.GetBoolean(Int32).)

System_CAPS_pubmethodGetByte(Int32)

Ruft den Wert der angegebenen Spalte als ein Byte ab.(Überschreibt DbDataReader.GetByte(Int32).)

System_CAPS_pubmethodGetBytes(Int32, Int64, Byte[], Int32, Int32)

Liest einen Stream von Bytes aus dem angegebenen Spaltenoffset in den Puffer, der ein Array beginnend am angegebenen Pufferoffset.(Überschreibt DbDataReader.GetBytes(Int32, Int64, Byte[], Int32, Int32).)

System_CAPS_pubmethodGetChar(Int32)

Ruft den Wert der angegebenen Spalte als ein einzelnes Zeichen ab.(Überschreibt DbDataReader.GetChar(Int32).)

System_CAPS_pubmethodGetChars(Int32, Int64, Char[], Int32, Int32)

Liest einen Zeichenstream aus dem angegebenen Spaltenoffset in den Puffer als ein Array, beginnend am angegebenen Pufferoffset.(Überschreibt DbDataReader.GetChars(Int32, Int64, Char[], Int32, Int32).)

System_CAPS_pubmethodGetData(Int32)

Gibt ein DbDataReader -Objekt für die angeforderte Spaltenordnungszahl.(Geerbt von „DbDataReader“.)

System_CAPS_pubmethodGetDataTypeName(Int32)

Ruft eine Zeichenfolge, die den Datentyp der angegebenen Spalte darstellt.(Überschreibt DbDataReader.GetDataTypeName(Int32).)

System_CAPS_pubmethodGetDateTime(Int32)

Ruft den Wert der angegebenen Spalte als DateTime-Objekt ab.(Überschreibt DbDataReader.GetDateTime(Int32).)

System_CAPS_pubmethodGetDateTimeOffset(Int32)

Ruft den Wert der angegebenen Spalte als ein DateTimeOffset Objekt.

System_CAPS_protmethodGetDbDataReader(Int32)

Gibt ein DbDataReader-Objekt für die angeforderte Spaltenordnungszahl zurück, das mit einer anbieterspezifischen Implementierung überschrieben werden kann.(Geerbt von „DbDataReader“.)

System_CAPS_pubmethodGetDecimal(Int32)

Ruft den Wert der angegebenen Spalte als Decimal-Objekt ab.(Überschreibt DbDataReader.GetDecimal(Int32).)

System_CAPS_pubmethodGetDouble(Int32)

Ruft den Wert der angegebenen Spalte als Gleitkommazahl mit doppelter Genauigkeit ab.(Überschreibt DbDataReader.GetDouble(Int32).)

System_CAPS_pubmethodGetEnumerator()

Gibt einen IEnumerator zurück, der SqlDataReader durchläuft.(Überschreibt DbDataReader.GetEnumerator().)

System_CAPS_pubmethodGetFieldType(Int32)

Ruft die Type dass der Datentyp des Objekts.(Überschreibt DbDataReader.GetFieldType(Int32).)

System_CAPS_pubmethodGetFieldValue<T>(Int32)

Synchron Ruft den Wert der angegebenen Spalte als Typ. GetFieldValueAsync<T> ist die asynchrone Version dieser Methode.(Überschreibt DbDataReader.GetFieldValue<T>(Int32).)

System_CAPS_pubmethodGetFieldValueAsync<T>(Int32)

Ruft den Wert der angegebenen Spalte als Typ.(Geerbt von „DbDataReader“.)

System_CAPS_pubmethodGetFieldValueAsync<T>(Int32, CancellationToken)

Ruft den Wert der angegebenen Spalte als Typ. GetFieldValue<T> ist die synchrone Version dieser Methode.(Überschreibt DbDataReader.GetFieldValueAsync<T>(Int32, CancellationToken).)

System_CAPS_pubmethodGetFloat(Int32)

Ruft den Wert der angegebenen Spalte als Gleitkommazahl mit einfacher Genauigkeit ab.(Überschreibt DbDataReader.GetFloat(Int32).)

System_CAPS_pubmethodGetGuid(Int32)

Ruft den Wert der angegebenen Spalte als global eindeutiger Bezeichner (GUID) ab.(Überschreibt DbDataReader.GetGuid(Int32).)

System_CAPS_pubmethodGetHashCode()

Fungiert als die Standardhashfunktion.(Geerbt von „Object“.)

System_CAPS_pubmethodGetInt16(Int32)

Ruft den Wert der angegebenen Spalte als eine 16-Bit-Ganzzahl mit Vorzeichen ab.(Überschreibt DbDataReader.GetInt16(Int32).)

System_CAPS_pubmethodGetInt32(Int32)

Ruft den Wert der angegebenen Spalte als eine 32-Bit-Ganzzahl mit Vorzeichen ab.(Überschreibt DbDataReader.GetInt32(Int32).)

System_CAPS_pubmethodGetInt64(Int32)

Ruft den Wert der angegebenen Spalte als 64-Bit-Ganzzahl mit Vorzeichen ab.(Überschreibt DbDataReader.GetInt64(Int32).)

System_CAPS_pubmethodGetLifetimeService()

Ruft das Dienstobjekt für aktuellen Lebensdauer, das steuert, die lebensdauerrichtlinie für diese Instanz ab.(Geerbt von „MarshalByRefObject“.)

System_CAPS_pubmethodGetName(Int32)

Ruft den Namen der angegebenen Spalte ab.(Überschreibt DbDataReader.GetName(Int32).)

System_CAPS_pubmethodGetOrdinal(String)

Ruft die erhält den Namen der Spalte die Spalte Ordinalzahl ab.(Überschreibt DbDataReader.GetOrdinal(String).)

System_CAPS_pubmethodGetProviderSpecificFieldType(Int32)

Ruft eine Object eine Darstellung der zugrunde liegenden anbieterspezifischen Feldtyp.(Überschreibt DbDataReader.GetProviderSpecificFieldType(Int32).)

System_CAPS_pubmethodGetProviderSpecificValue(Int32)

Ruft eine Object eine Darstellung der zugrunde liegende Anbieter spezifischen Wert.(Überschreibt DbDataReader.GetProviderSpecificValue(Int32).)

System_CAPS_pubmethodGetProviderSpecificValues(Object[])

Ruft ein Array von Objekten, die eine Darstellung der zugrunde liegenden Anbieter bestimmte Werte sind.(Überschreibt DbDataReader.GetProviderSpecificValues(Object[]).)

System_CAPS_pubmethodGetSchemaTable()

Gibt eine DataTable zurück, die die Spaltenmetadaten des SqlDataReader beschreibt.(Überschreibt DbDataReader.GetSchemaTable().)

System_CAPS_pubmethodGetSqlBinary(Int32)

Ruft den Wert der angegebenen Spalte als ein SqlBinary.

System_CAPS_pubmethodGetSqlBoolean(Int32)

Ruft den Wert der angegebenen Spalte als ein SqlBoolean.

System_CAPS_pubmethodGetSqlByte(Int32)

Ruft den Wert der angegebenen Spalte als ein SqlByte.

System_CAPS_pubmethodGetSqlBytes(Int32)

Ruft den Wert der angegebenen Spalte als SqlBytes.

System_CAPS_pubmethodGetSqlChars(Int32)

Ruft den Wert der angegebenen Spalte als SqlChars.

System_CAPS_pubmethodGetSqlDateTime(Int32)

Ruft den Wert der angegebenen Spalte als ein SqlDateTime.

System_CAPS_pubmethodGetSqlDecimal(Int32)

Ruft den Wert der angegebenen Spalte als ein SqlDecimal.

System_CAPS_pubmethodGetSqlDouble(Int32)

Ruft den Wert der angegebenen Spalte als ein SqlDouble.

System_CAPS_pubmethodGetSqlGuid(Int32)

Ruft den Wert der angegebenen Spalte als ein SqlGuid.

System_CAPS_pubmethodGetSqlInt16(Int32)

Ruft den Wert der angegebenen Spalte als ein SqlInt16.

System_CAPS_pubmethodGetSqlInt32(Int32)

Ruft den Wert der angegebenen Spalte als ein SqlInt32.

System_CAPS_pubmethodGetSqlInt64(Int32)

Ruft den Wert der angegebenen Spalte als ein SqlInt64.

System_CAPS_pubmethodGetSqlMoney(Int32)

Ruft den Wert der angegebenen Spalte als ein SqlMoney.

System_CAPS_pubmethodGetSqlSingle(Int32)

Ruft den Wert der angegebenen Spalte als ein SqlSingle.

System_CAPS_pubmethodGetSqlString(Int32)

Ruft den Wert der angegebenen Spalte als ein SqlString.

System_CAPS_pubmethodGetSqlValue(Int32)

Gibt den Wert in der angegebenen Spalte als SQL Server-Typ zurück.

System_CAPS_pubmethodGetSqlValues(Object[])

Füllt ein Array von Object enthält die Werte aller Spalten im Datensatz als SQL Server-Typen.

System_CAPS_pubmethodGetSqlXml(Int32)

Ruft den Wert der angegebenen Spalte als ein XML-Wert ab.

System_CAPS_pubmethodGetStream(Int32)

Ruft ab, Binary, Image, Varbinary, UDT und variant-Datentypen als eine Stream.(Überschreibt DbDataReader.GetStream(Int32).)

System_CAPS_pubmethodGetString(Int32)

Ruft den Wert der angegebenen Spalte als Zeichenfolge ab.(Überschreibt DbDataReader.GetString(Int32).)

System_CAPS_pubmethodGetTextReader(Int32)

Ruft ab, Char, NChar, NText, NVarChar, Text, VarChar und Variant-Datentypen als eine TextReader.(Überschreibt DbDataReader.GetTextReader(Int32).)

System_CAPS_pubmethodGetTimeSpan(Int32)

Ruft den Wert der angegebenen Spalte als ein TimeSpan Objekt.

System_CAPS_pubmethodGetType()

Ruft den Type der aktuellen Instanz ab.(Geerbt von „Object“.)

System_CAPS_pubmethodGetValue(Int32)

Ruft den Wert der angegebenen Spalte im systemeigenen Format ab.(Überschreibt DbDataReader.GetValue(Int32).)

System_CAPS_pubmethodGetValues(Object[])

Füllt ein Array von Objekten mit den Spaltenwerten der aktuellen Zeile.(Überschreibt DbDataReader.GetValues(Object[]).)

System_CAPS_pubmethodGetXmlReader(Int32)

Ruft Daten von Geben Sie XML als ein XmlReader.

System_CAPS_pubmethodInitializeLifetimeService()

Ruft ein Lebensdauerdienstobjekt zur Steuerung der Lebensdauerrichtlinie für diese Instanz ab.(Geerbt von „MarshalByRefObject“.)

System_CAPS_protmethodIsCommandBehavior(CommandBehavior)

Bestimmt, ob das angegebene CommandBehavior übereinstimmt, die von der SqlDataReader .

System_CAPS_pubmethodIsDBNull(Int32)

Ruft einen Wert, der angibt, ob die Spalte nicht vorhandene oder fehlende Werte enthält.(Überschreibt DbDataReader.IsDBNull(Int32).)

System_CAPS_pubmethodIsDBNullAsync(Int32)

Eine asynchrone Version der IsDBNull, der einem Wert abruft, der angibt, ob die Spalte nicht vorhandene oder fehlende Werte enthält.(Geerbt von „DbDataReader“.)

System_CAPS_pubmethodIsDBNullAsync(Int32, CancellationToken)

Eine asynchrone Version der IsDBNull, der einem Wert abruft, der angibt, ob die Spalte nicht vorhandene oder fehlende Werte enthält.

Das Abbruchtoken kann verwendet werden, um anzufordern, dass der Vorgang abgebrochen wird, bevor das Timeout des Befehls abläuft. Ausnahmen werden über das zurückgegebene Aufgabenobjekt gemeldet.(Überschreibt DbDataReader.IsDBNullAsync(Int32, CancellationToken).)

System_CAPS_protmethodMemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.(Geerbt von „Object“.)

System_CAPS_protmethodMemberwiseClone(Boolean)

Erstellt eine flache Kopie des aktuellen MarshalByRefObject Objekt.(Geerbt von „MarshalByRefObject“.)

System_CAPS_pubmethodNextResult()

Setzt den Datenleser auf das nächste Ergebnis, beim Lesen der Ergebnisse von Batchanweisungen Transact-SQL.(Überschreibt DbDataReader.NextResult().)

System_CAPS_pubmethodNextResultAsync()

Eine asynchrone Version der NextResult, die verschiebt den Reader zum nächsten Ergebnis beim Lesen der Ergebnisse von Batchanweisungen.

Ruft NextResultAsync mit CancellationToken.None.(Geerbt von „DbDataReader“.)

System_CAPS_pubmethodNextResultAsync(CancellationToken)

Eine asynchrone Version der NextResult, setzt der Datenleser auf das nächste Ergebnis beim Lesen der Ergebnisse von Transact-SQL Anweisungen.

Das Abbruchtoken kann verwendet werden, um anzufordern, dass der Vorgang abgebrochen wird, bevor das Timeout des Befehls abläuft. Ausnahmen werden über das zurückgegebene Taskobjekt gemeldet.(Überschreibt DbDataReader.NextResultAsync(CancellationToken).)

System_CAPS_pubmethodRead()

Setzt den SqlDataReader auf den nächsten Datensatz.(Überschreibt DbDataReader.Read().)

System_CAPS_pubmethodReadAsync()

Eine asynchrone Version der Read, die verschiebt den Reader auf den nächsten Datensatz in einem Resultset. Diese Methode ruft ReadAsync mit CancellationToken.None.(Geerbt von „DbDataReader“.)

System_CAPS_pubmethodReadAsync(CancellationToken)

Eine asynchrone Version der Read, welche Fortschritte das SqlDataReader auf den nächsten Datensatz.

Das Abbruchtoken kann verwendet werden, um anzufordern, dass der Vorgang abgebrochen wird, bevor das Timeout des Befehls abläuft. Ausnahmen werden über das zurückgegebene Taskobjekt gemeldet.(Überschreibt DbDataReader.ReadAsync(CancellationToken).)

System_CAPS_pubmethodToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.(Geerbt von „Object“.)

NameBeschreibung
System_CAPS_pubinterfaceSystem_CAPS_privmethodIDataRecord.GetData(Int32)

Gibt eine IDataReader für die angegebene Ordnungszahl der Spalte.

NameBeschreibung
System_CAPS_pubmethodAsParallel()

Überladen. Ermöglicht die Parallelisierung einer Abfrage.(Definiert durch ParallelEnumerable.)

System_CAPS_pubmethodAsQueryable()

Überladen. Konvertiert ein IEnumerable zu einer IQueryable.(Definiert durch Queryable.)

System_CAPS_pubmethodCast<TResult>()

Wandelt die Elemente einer IEnumerable in den angegebenen Typ.(Definiert durch Enumerable.)

System_CAPS_pubmethodOfType<TResult>()

Filtert die Elemente einer IEnumerable auf Grundlage eines angegebenen Typs.(Definiert durch Enumerable.)

To create a T:System.Data.SqlClient.SqlDataReader, you must call the M:System.Data.SqlClient.SqlCommand.ExecuteReader method of the T:System.Data.SqlClient.SqlCommand object, instead of directly using a constructor.

While the T:System.Data.SqlClient.SqlDataReader is being used, the associated T:System.Data.SqlClient.SqlConnection is busy serving the T:System.Data.SqlClient.SqlDataReader, and no other operations can be performed on the T:System.Data.SqlClient.SqlConnection other than closing it. This is the case until the M:System.Data.SqlClient.SqlDataReader.Close method of the T:System.Data.SqlClient.SqlDataReader is called. For example, you cannot retrieve output parameters until after you call M:System.Data.SqlClient.SqlDataReader.Close.

Changes made to a result set by another process or thread while data is being read may be visible to the user of the SqlDataReader. However, the precise behavior is timing dependent.

IsClosed and RecordsAffected are the only properties that you can call after the SqlDataReader is closed. Although the RecordsAffected property may be accessed while the SqlDataReader exists, always call Close before returning the value of RecordsAffected to guarantee an accurate return value.

When using sequential access (F:System.Data.CommandBehavior.SequentialAccess), an T:System.InvalidOperationException will be raised if the T:System.Data.SqlClient.SqlDataReader position is advanced and another read operation is attempted on the previous column.

System_CAPS_noteHinweis

For optimal performance, T:System.Data.SqlClient.SqlDataReader avoids creating unnecessary objects or making unnecessary copies of data. Therefore, multiple calls to methods such as M:System.Data.SqlClient.SqlDataReader.GetValue(System.Int32) return a reference to the same object. Use caution if you are modifying the underlying value of the objects returned by methods such as M:System.Data.SqlClient.SqlDataReader.GetValue(System.Int32).

The following example creates a T:System.Data.SqlClient.SqlConnection, a T:System.Data.SqlClient.SqlCommand, and a T:System.Data.SqlClient.SqlDataReader. The example reads through the data, writing it out to the console window. The code then closes the T:System.Data.SqlClient.SqlDataReader. The T:System.Data.SqlClient.SqlConnection is closed automatically at the end of the using code block.

using System;
using System.Data;
using System.Data.SqlClient;


class Program
{
    static void Main()
    {
        string str = "Data Source=(local);Initial Catalog=Northwind;"
            + "Integrated Security=SSPI";
        ReadOrderData(str);
    }

    private static void ReadOrderData(string connectionString)
    {
        string queryString =
            "SELECT OrderID, CustomerID FROM dbo.Orders;";

        using (SqlConnection connection =
                   new SqlConnection(connectionString))
        {
            SqlCommand command =
                new SqlCommand(queryString, connection);
            connection.Open();

            SqlDataReader reader = command.ExecuteReader();

            // Call Read before accessing data.
            while (reader.Read())
            {
                ReadSingleRow((IDataRecord)reader);
            }

            // Call Close when done reading.
            reader.Close();
        }
    }

    private static void ReadSingleRow(IDataRecord record)
    {
        Console.WriteLine(String.Format("{0}, {1}", record[0], record[1]));
    }

}

.NET Framework
Verfügbar seit 1.1

Alle öffentlichen statischen Member ( Shared in Visual Basic) dieses Typs sind threadsicher. Die Threadsicherheit für Instanzmember ist nicht garantiert.

Zurück zum Anfang
Anzeigen: