OleDbCommand.ExecuteReader Metoda

Definice

Odešle do CommandText objektu Connection a vytvoří OleDbDataReader.

Přetížení

ExecuteReader()

Odešle do CommandText objektu Connection a vytvoří OleDbDataReader.

ExecuteReader(CommandBehavior)

Odešle objekt CommandText do a vytvoří OleDbDataReader objekt pomocí jedné z CommandBehaviorConnectionhodnot.

ExecuteReader()

Odešle do CommandText objektu Connection a vytvoří OleDbDataReader.

public:
 System::Data::OleDb::OleDbDataReader ^ ExecuteReader();
public System.Data.OleDb.OleDbDataReader ExecuteReader ();
override this.ExecuteReader : unit -> System.Data.OleDb.OleDbDataReader
member this.ExecuteReader : unit -> System.Data.OleDb.OleDbDataReader
Public Function ExecuteReader () As OleDbDataReader

Návraty

OleDbDataReader

Objekt OleDbDataReader.

Výjimky

Nelze spustit příkaz v kontextu transakce, který se liší od kontextu, ve kterém bylo připojení původně zapsáno.

Příklady

Následující příklad vytvoří a pak ho OleDbCommandspustí předáním řetězce, který je příkazem SQL SELECT, a řetězce, který se má použít pro připojení ke zdroji dat.

public void CreateReader(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();
    }
}
Public Sub CreateReader(ByVal connectionString As String, _
    ByVal queryString As String)

    Using connection As New OleDbConnection(connectionString)
        Dim command As New OleDbCommand(queryString, connection)

        connection.Open()

        Dim reader As OleDbDataReader = command.ExecuteReader()
        While reader.Read()
            Console.WriteLine(reader(0).ToString())
        End While
        reader.Close()
    End Using
End Sub

Poznámky

CommandType Pokud je vlastnost nastavena na StoredProcedure, CommandText vlastnost by měla být nastavena na název uložené procedury. Příkaz spustí tuto uloženou proceduru při volání ExecuteReaderpříkazu .

Než zavřete OleDbConnectionobjekt , nejprve objekt zavřete OleDbDataReader . Pokud chcete objekt znovu použítOleDbCommand, musíte objekt také zavřítOleDbDataReader.

Viz také

Platí pro

ExecuteReader(CommandBehavior)

Odešle objekt CommandText do a vytvoří OleDbDataReader objekt pomocí jedné z CommandBehaviorConnectionhodnot.

public:
 System::Data::OleDb::OleDbDataReader ^ ExecuteReader(System::Data::CommandBehavior behavior);
public System.Data.OleDb.OleDbDataReader ExecuteReader (System.Data.CommandBehavior behavior);
override this.ExecuteReader : System.Data.CommandBehavior -> System.Data.OleDb.OleDbDataReader
member this.ExecuteReader : System.Data.CommandBehavior -> System.Data.OleDb.OleDbDataReader
Public Function ExecuteReader (behavior As CommandBehavior) As OleDbDataReader

Parametry

behavior
CommandBehavior

Jedna z CommandBehavior hodnot.

Návraty

OleDbDataReader

Objekt OleDbDataReader.

Výjimky

Nelze spustit příkaz v kontextu transakce, který se liší od kontextu, ve kterém bylo připojení původně zapsáno.

Příklady

Následující příklad vytvoří a pak ho OleDbCommandspustí předáním řetězce, který je příkazem Transact-SQL SELECT, a řetězce, který se má použít pro připojení ke zdroji dat. CommandBehavior je nastavená na CloseConnectionhodnotu .

public void CreateMyOleDbDataReader(string queryString,string connectionString)
{
   OleDbConnection connection = new OleDbConnection(connectionString);
   OleDbCommand command = new OleDbCommand(queryString, connection);
   connection.Open();
   OleDbDataReader reader = command.ExecuteReader(CommandBehavior.CloseConnection);
   while(reader.Read())
   {
      Console.WriteLine(reader.GetString(0));
   }
   reader.Close();
   //Implicitly closes the connection because CommandBehavior.CloseConnection was specified.
}
Public Sub CreateMyOleDbDataReader(queryString As String, _
    connectionString As String)
    Dim connection As New OleDbConnection(connectionString)
    Dim command As New OleDbCommand(queryString, connection)
    connection.Open()
    Dim reader As OleDbDataReader = command.ExecuteReader(CommandBehavior.CloseConnection)
    While reader.Read()
        Console.WriteLine(reader.GetString(0))
    End While
    reader.Close()
    'Implicitly closes the connection because CommandBehavior.CloseConnection was specified.
 End Sub

Poznámky

Pokud zadáte SingleRow metodou ExecuteReader objektu OleDbCommand , zprostředkovatel dat rozhraní .NET Framework pro OLE DB provede vazbu pomocí rozhraní OLE DB IRow , pokud je k dispozici. V opačném případě používá rozhraní IRowset . Pokud se očekává, že příkaz SQL vrátí jenom jeden řádek, může zadání SingleRow také zvýšit výkon aplikace.

CommandType Pokud je vlastnost nastavena na StoredProcedure, CommandText vlastnost by měla být nastavena na název uložené procedury. Příkaz spustí tuto uloženou proceduru při volání ExecuteReaderpříkazu .

Podporuje OleDbDataReader speciální režim, který umožňuje efektivní čtení velkých binárních hodnot. Další informace najdete v SequentialAccess nastavení pro CommandBehavior.

Než zavřete OleDbConnectionobjekt , nejprve objekt zavřete OleDbDataReader . Pokud chcete objekt znovu použítOleDbCommand, musíte objekt také zavřítOleDbDataReader. OleDbDataReader Pokud je objekt vytvořený s nastaveným CommandBehavior na CloseConnection, zavře se OleDbDataReader připojení automaticky zavře.

Viz také

Platí pro