OleDbCommand.ExecuteReader Método

Definición

Envía una propiedad CommandText a la propiedad Connection y compila un objeto OleDbDataReader.Sends the CommandText to the Connection and builds an OleDbDataReader.

Sobrecargas

ExecuteReader()

Envía una propiedad CommandText a la propiedad Connection y compila un objeto OleDbDataReader.Sends the CommandText to the Connection and builds an OleDbDataReader.

ExecuteReader(CommandBehavior)

Envía CommandText a Connection y crea un objeto OleDbDataReader con uno de los valores de CommandBehavior.Sends the CommandText to the Connection, and builds an OleDbDataReader using one of the CommandBehavior values.

ExecuteReader()

Envía una propiedad CommandText a la propiedad Connection y compila un objeto OleDbDataReader.Sends the CommandText to the Connection and builds an 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

Devoluciones

OleDbDataReader

Un objeto OleDbDataReader.An OleDbDataReader object.

Excepciones

No se puede ejecutar un comando en un contexto de transacción distinto al contexto en que se incorporó la conexión originalmente.Cannot execute a command within a transaction context that differs from the context in which the connection was originally enlisted.

Ejemplos

En el ejemplo siguiente se crea un OleDbCommand y, a continuación, se ejecuta pasando una cadena que es una instrucción SELECT de SQL y una cadena que se utiliza para conectarse al origen de datos.The following example creates an OleDbCommand, and then executes it by passing a string that is an SQL SELECT statement, and a string to use to connect to the data source.

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

Comentarios

Cuando la CommandType propiedad está establecida en StoredProcedure , la CommandText propiedad debe establecerse en el nombre del procedimiento almacenado.When the CommandType property is set to StoredProcedure, the CommandText property should be set to the name of the stored procedure. El comando ejecuta este procedimiento almacenado cuando se llama a ExecuteReader .The command executes this stored procedure when you call ExecuteReader.

Antes de cerrar el OleDbConnection , primero cierre el OleDbDataReader objeto.Before you close the OleDbConnection, first close the OleDbDataReader object. También debe cerrar el OleDbDataReader objeto si va a reutilizar un OleDbCommand objeto.You must also close the OleDbDataReader object if you plan to reuse an OleDbCommand object.

Se aplica a

ExecuteReader(CommandBehavior)

Envía CommandText a Connection y crea un objeto OleDbDataReader con uno de los valores de CommandBehavior.Sends the CommandText to the Connection, and builds an OleDbDataReader using one of the CommandBehavior values.

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

Parámetros

behavior
CommandBehavior

Uno de los valores de CommandBehavior.One of the CommandBehavior values.

Devoluciones

OleDbDataReader

Un objeto OleDbDataReader.An OleDbDataReader object.

Excepciones

No se puede ejecutar un comando en un contexto de transacción distinto al contexto en que se incorporó la conexión originalmente.Cannot execute a command within a transaction context that differs from the context in which the connection was originally enlisted.

Ejemplos

En el ejemplo siguiente se crea un OleDbCommand y, a continuación, se ejecuta pasando una cadena que es una instrucción SELECT de Transact-SQL y una cadena que se utiliza para conectar con el origen de datos.The following example creates an OleDbCommand, and then executes it by passing a string that is a Transact-SQL SELECT statement, and a string to use to connect to the data source. El valor de CommandBehavior está establecido en CloseConnection.CommandBehavior is set to CloseConnection.

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

Comentarios

Cuando se especifica SingleRow con el ExecuteReader método del OleDbCommand objeto, el proveedor de datos de .NET Framework para OLE DB realiza el enlace utilizando la interfaz OLE DB IRow si está disponible.When you specify SingleRow with the ExecuteReader method of the OleDbCommand object, the .NET Framework Data Provider for OLE DB performs binding using the OLE DB IRow interface if it is available. De lo contrario, utiliza la interfaz IRowset .Otherwise, it uses the IRowset interface. Además, si se espera que la instrucción SQL devuelva una única fila, se puede mejorar el rendimiento de la aplicación especificando SingleRow.If your SQL statement is expected to return only a single row, specifying SingleRow can also improve application performance.

Cuando la CommandType propiedad está establecida en StoredProcedure , la CommandText propiedad debe establecerse en el nombre del procedimiento almacenado.When the CommandType property is set to StoredProcedure, the CommandText property should be set to the name of the stored procedure. El comando ejecuta este procedimiento almacenado cuando se llama a ExecuteReader .The command executes this stored procedure when you call ExecuteReader.

OleDbDataReaderAdmite un modo especial que permite leer de forma eficaz valores binarios grandes.The OleDbDataReader supports a special mode that enables large binary values to be read efficiently. Para obtener más información, vea la SequentialAccess configuración de CommandBehavior .For more information, see the SequentialAccess setting for CommandBehavior.

Antes de cerrar el OleDbConnection , primero cierre el OleDbDataReader objeto.Before you close the OleDbConnection, first close the OleDbDataReader object. También debe cerrar el OleDbDataReader objeto si va a reutilizar un OleDbCommand objeto.You must also close the OleDbDataReader object if you plan to reuse an OleDbCommand object. Si OleDbDataReader se crea con CommandBehavior establecido en CloseConnection , al cerrar se OleDbDataReader cierra automáticamente la conexión.If the OleDbDataReader is created with CommandBehavior set to CloseConnection, closing the OleDbDataReader closes the connection automatically.

Se aplica a