OleDbCommand.ExecuteReader Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Отправляет свойство CommandText свойству Connection и создает объект OleDbDataReader.
Перегрузки
ExecuteReader() |
Отправляет свойство CommandText свойству Connection и создает объект OleDbDataReader. |
ExecuteReader(CommandBehavior) |
Отправляет CommandText в Connection и создает OleDbDataReader, используя одно из значений CommandBehavior. |
ExecuteReader()
- Исходный код:
- OleDbCommand.cs
- Исходный код:
- OleDbCommand.cs
Отправляет свойство CommandText свойству Connection и создает объект 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
Возвращаемое значение
Объект OleDbDataReader.
Исключения
Не удается выполнить команду в контексте транзакции, отличающемся от контекста, в котором подключение было изначально зарегистрировано.
Примеры
В следующем примере создается OleDbCommand, а затем выполняется путем передачи строки, которая является инструкцией SQL SELECT, и строки, используемой для подключения к источнику данных.
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
Комментарии
Если свойству CommandType присвоено значение StoredProcedure
, свойству CommandText должно быть присвоено имя хранимой процедуры. Команда выполняет эту хранимую процедуру при вызове ExecuteReader.
Прежде чем закрыть OleDbConnection, сначала закройте OleDbDataReader объект . Кроме того, необходимо закрыть объект , OleDbDataReader если планируется повторное использование OleDbCommand объекта .
См. также раздел
Применяется к
ExecuteReader(CommandBehavior)
- Исходный код:
- OleDbCommand.cs
- Исходный код:
- OleDbCommand.cs
Отправляет CommandText в Connection и создает OleDbDataReader, используя одно из значений CommandBehavior.
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
Параметры
- behavior
- CommandBehavior
Одно из значений перечисления CommandBehavior.
Возвращаемое значение
Объект OleDbDataReader.
Исключения
Не удается выполнить команду в контексте транзакции, отличающемся от контекста, в котором подключение было изначально зарегистрировано.
Примеры
В следующем примере создается OleDbCommand, а затем выполняется путем передачи строки, которая является инструкцией Transact-SQL SELECT, и строки, используемой для подключения к источнику данных. Параметру CommandBehavior задается значение 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
Комментарии
При указании SingleRowExecuteReaderOleDbCommand с помощью метода объекта поставщик данных платформа .NET Framework для OLE DB выполняет привязку с помощью интерфейса OLE DB IRow, если он доступен. В противном случае используется интерфейс IRowset . Если оператор SQL должен вернуть только одну строку, рекомендуется указать SingleRow для повышения производительности приложения.
Если свойству CommandType присвоено значение StoredProcedure
, свойству CommandText должно быть присвоено имя хранимой процедуры. Команда выполняет эту хранимую процедуру при вызове ExecuteReader.
поддерживает OleDbDataReader специальный режим, позволяющий эффективно считывать большие двоичные значения. Дополнительные сведения см. в параметре SequentialAccess
для CommandBehavior.
Прежде чем закрыть OleDbConnection, сначала закройте OleDbDataReader объект . Кроме того, необходимо закрыть объект , OleDbDataReader если планируется повторное использование OleDbCommand объекта .
OleDbDataReader Если создается с CommandBehavior параметром , то CloseConnection
при закрытии OleDbDataReader соединение закрывается автоматически.