Auf Englisch lesen

Freigeben über


SqlDataReader.Read Methode

Definition

Setzt den SqlDataReader auf den nächsten Datensatz.

public override bool Read();
public bool Read();

Gibt zurück

true, wenn weitere Zeilen vorhanden sind, andernfalls false.

Implementiert

Ausnahmen

SQL Server hat beim Ausführen des Befehlstexts einen Fehler zurückgegeben.

Beispiele

Im folgenden Beispiel werden ein SqlConnection, ein SqlCommandund ein SqlDataReadererstellt. Im Beispiel werden die Daten gelesen und in das Konsolenfenster geschrieben. Der Code schließt dann die SqlDataReader. Wird SqlConnection automatisch am Ende des using Codeblocks geschlossen.

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 dataRecord)
{
    Console.WriteLine(String.Format("{0}, {1}", dataRecord[0], dataRecord[1]));
}

Hinweise

Die Standardposition des der SqlDataReader steht vor dem ersten Datensatz. Daher müssen Sie aufrufen Read , um mit dem Zugriff auf daten zu beginnen.

Nur eine SqlDataReader pro zugeordnetem SqlConnection Element kann gleichzeitig geöffnet sein, und jeder Versuch, eine andere zu öffnen, schlägt fehl, bis die erste geschlossen ist. Auf ähnliche Weise ist der SqlDataReader zugeordnete SqlConnection während der Verwendung damit beschäftigt, es zu bedienen, bis Sie aufrufen Close.

Gilt für:

Produkt Versionen
.NET Core 1.0, Core 1.1, 6 (package-provided), 7 (package-provided), 8 (package-provided), 9 (package-provided), 10 (package-provided)
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0 (package-provided)

Weitere Informationen