Ce sujet n'a pas encore été évalué - Évaluez ce sujet

OleDbDataReader, classe

Fournit un moyen de lire un flux de lignes de données avant uniquement à partir d'une source de données. Cette classe ne peut pas être héritée.

Espace de noms : System.Data.OleDb
Assembly : System.Data (dans system.data.dll)

public sealed class OleDbDataReader : DbDataReader
public final class OleDbDataReader extends DbDataReader
public final class OleDbDataReader extends DbDataReader

Pour créer OleDbDataReader, vous devez appeler la méthode ExecuteReader de l'objet OleDbCommand, plutôt que d'utiliser directement un constructeur.

Lorsque OleDbDataReader est en cours d'utilisation, le OleDbConnection qui lui est associé est occupé à servir OleDbDataReader et aucune autre opération ne peut être effectuée sur OleDbConnection, à l'exception de sa fermeture. Cette situation subsiste jusqu'à ce que la méthode Close de OleDbDataReader soit appelée. Par exemple, vous ne pouvez pas récupérer de paramètres de sortie tant que vous n'avez pas appelé Close.

Les modifications apportées à un jeu de résultats par un autre processus ou thread pendant la lecture des données peuvent être visibles par l'utilisateur de OleDbDataReader. Cependant, le comportement précis dépend du minutage.

IsClosed et RecordsAffected sont les seules propriétés pouvant être appelées après la fermeture de OleDbDataReader. Bien que vous puissiez accéder à la propriété RecordsAffected si OleDbDataReader existe, appelez toujours Close avant de retourner la valeur de RecordsAffected afin de garantir une valeur de retour précise.

L'exemple suivant crée OleDbConnection, OleDbCommand et OleDbDataReader. L'exemple lit les données, en les écrivant dans la console. Pour terminer, l'exemple ferme OleDbDataReader, puis OleDbConnection.

public static void ReadData(string connectionString, string queryString)
{
    using (OleDbConnection connection = new OleDbConnection(connectionString))
    {
        OleDbCommand command = new OleDbCommand(queryString, connection);

        connection.Open();
        OleDbDataReader reader = command.ExecuteReader();

        while (reader.Read())
        {
            Console.WriteLine(reader[0].ToString());
        }
        reader.Close();
    }
}

using System;
using System.Data;
using System.Data.OleDb;

class Class1
{
    static void Main()
    {
        //string x = "Provider=SQLOLEDB;Data Source=(local);Integrated Security=SSPI;Initial Catalog=Northwind";
        //ReadData(x);
    }

    public static void ReadData(string connectionString, string queryString)
    {
        using (OleDbConnection connection = new OleDbConnection(connectionString))
        {
            OleDbCommand command = new OleDbCommand(queryString, connection);

            connection.Open();
            OleDbDataReader reader = command.ExecuteReader();

            while (reader.Read())
            {
                Console.WriteLine(reader[0].ToString());
            }
            reader.Close();
        }
    }

System.Object
   System.MarshalByRefObject
     System.Data.Common.DbDataReader
      System.Data.OleDb.OleDbDataReader
Les membres statiques publics (Shared en Visual Basic) de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.

.NET Framework

Prise en charge dans : 2.0, 1.1, 1.0
Cela vous a-t-il été utile ?
(1500 caractères restants)
Contenu de la communauté Ajouter
Annotations FAQ