Sdílet prostřednictvím


OleDbCommand.ExecuteReader Metoda

Definice

Odešle do objektu CommandTextConnection a vytvoří OleDbDataReader.

Přetížení

ExecuteReader()

Odešle do objektu CommandTextConnection a vytvoří OleDbDataReader.

ExecuteReader(CommandBehavior)

Odešle do objektu CommandTextConnectiona vytvoří OleDbDataReader objekt pomocí jedné z CommandBehavior hodnot.

ExecuteReader()

Zdroj:
OleDbCommand.cs
Zdroj:
OleDbCommand.cs
Zdroj:
OleDbCommand.cs

Odešle do objektu CommandTextConnection 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

Objekt OleDbDataReader.

Výjimky

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

Příklady

Následující příklad vytvoří OleDbCommanda pak ho spustí předáním řetězce, který je příkazem SQL SELECT, a řetězce 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 CommandText na StoredProcedurehodnotu , měla by být vlastnost nastavena na název uložené procedury. Příkaz spustí tuto uloženou proceduru při volání ExecuteReadermetody .

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

Viz také

Platí pro

ExecuteReader(CommandBehavior)

Zdroj:
OleDbCommand.cs
Zdroj:
OleDbCommand.cs
Zdroj:
OleDbCommand.cs

Odešle do objektu CommandTextConnectiona vytvoří OleDbDataReader objekt pomocí jedné z CommandBehavior hodnot.

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

Objekt OleDbDataReader.

Výjimky

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

Příklady

Následující příklad vytvoří OleDbCommanda pak ho spustí předáním řetězce, který je příkazem Select jazyka Transact-SQL, a řetězce 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 pomocí ExecuteReader metody 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í pouze jeden řádek, může zadání SingleRow také zlepšit výkon aplikace.

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

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.

Před zavřete OleDbConnectionobjekt nejprve zavřete OleDbDataReader . Pokud chcete objekt znovu použítOleDbCommand, musíte objekt také zavřítOleDbDataReader. OleDbDataReader Pokud se vytvoří s CommandBehavior nastavenou na CloseConnection, zavřením OleDbDataReader se připojení automaticky ukončí.

Viz také

Platí pro