Класс SqlCeDataReader
Указывает способ считывания потока строк данных из источника данных с возможностью перемещения только вперед. Этот класс не может быть унаследован.
Иерархия наследования
System.Object
System.MarshalByRefObject
System.Data.Common.DbDataReader
System.Data.SqlServerCe.SqlCeDataReader
System.Data.SqlServerCe.SqlCeResultSet
Пространство имен: System.Data.SqlServerCe
Сборка: System.Data.SqlServerCe (в System.Data.SqlServerCe.dll)
Синтаксис
'Декларация
Public Class SqlCeDataReader _
Inherits DbDataReader
'Применение
Dim instance As SqlCeDataReader
public class SqlCeDataReader : DbDataReader
public ref class SqlCeDataReader : public DbDataReader
type SqlCeDataReader =
class
inherit DbDataReader
end
public class SqlCeDataReader extends DbDataReader
Тип SqlCeDataReader обеспечивает доступ к следующим элементам.
Свойства
Имя | Описание | |
---|---|---|
Depth | Возвращает значение, показывающее глубину вложенности для текущей строки. (Переопределяет DbDataReader.Depth.) | |
FieldCount | Возвращает число столбцов в предложении SELECT запроса. (Переопределяет DbDataReader.FieldCount.) | |
HasRows | Возвращает значение, указывающее на то, что в модуле чтения данных SqlCeDataReader содержится одна или несколько строк. (Переопределяет DbDataReader.HasRows.) | |
HiddenFieldCount | Инфраструктура. | |
IsClosed | Показывает, закрыт ли модуль чтения данных. (Переопределяет DbDataReader.IsClosed.) | |
Item[Int32] | Возвращает значение указанного столбца по порядковому номеру в его собственном формате. (Переопределяет DbDataReader.Item[Int32].) | |
Item[String] | Возвращает значение указанного столбца по имени в его собственном формате. (Переопределяет DbDataReader.Item[String].) | |
RecordsAffected | Возвращает число строк, которые были изменены, вставлены или удалены инструкцией SQL. (Переопределяет DbDataReader.RecordsAffected.) | |
VisibleFieldCount | (унаследовано из DbDataReader) |
В начало
Методы
Имя | Описание | |
---|---|---|
Close | Закрывает объект SqlCeDataReader. (Переопределяет DbDataReader.Close().) | |
CreateObjRef | (унаследовано из MarshalByRefObject) | |
Dispose() | Инфраструктура. Освобождает ресурсы, используемые данным модулем чтения данных SqlCeDataReader. | |
Dispose(Boolean) | Освобождает неуправляемые ресурсы, используемые классом SqlCeDataReader, и при необходимости освобождает управляемые ресурсы. (Переопределяет DbDataReader.Dispose(Boolean).) | |
Equals | (унаследовано из Object) | |
Finalize | Освобождает неуправляемые ресурсы и выполняет другие операции очистки перед обработкой модуля чтения данных SqlCeDataReader сборщиком мусора. (Переопределяет Object.Finalize().) | |
GetBoolean | Возвращает значение указанного столбца в виде логического значения. (Переопределяет DbDataReader.GetBoolean(Int32).) | |
GetByte | Возвращает значение указанного столбца в виде байта. (Переопределяет DbDataReader.GetByte(Int32).) | |
GetBytes | Считывает поток байтов с указанного смещения столбца в буфер в виде массива, начинающегося с заданного смещения. (Переопределяет DbDataReader.GetBytes(Int32, Int64, array<Byte[], Int32, Int32).) | |
GetChar | Не поддерживается поставщиком данных .NET Compact Framework для SQL Server Compact. (Переопределяет DbDataReader.GetChar(Int32).) | |
GetChars | Считывает поток символов с указанного смещения столбца в буфер в виде массива, начиная с заданного смещения. (Переопределяет DbDataReader.GetChars(Int32, Int64, array<Char[], Int32, Int32).) | |
GetData | (унаследовано из DbDataReader) | |
GetDataTypeName | Получает имя исходного типа данных. (Переопределяет DbDataReader.GetDataTypeName(Int32).) | |
GetDateTime | Возвращает значение указанного столбца в виде объекта DateTime. (Переопределяет DbDataReader.GetDateTime(Int32).) | |
GetDbDataReader | (унаследовано из DbDataReader) | |
GetDecimal | Возвращает значение указанного столбца в виде объекта Decimal. (Переопределяет DbDataReader.GetDecimal(Int32).) | |
GetDouble | Возвращает значение заданного столбца в виде числа с плавающей запятой двойной точности. (Переопределяет DbDataReader.GetDouble(Int32).) | |
GetEnumerator | Инфраструктура. (Переопределяет DbDataReader.GetEnumerator().) | |
GetFieldType | Возвращает значение Type, которое представляет тип данных объекта. (Переопределяет DbDataReader.GetFieldType(Int32).) | |
GetFloat | Возвращает значение заданного столбца в виде числа с плавающей запятой одиночной точности. (Переопределяет DbDataReader.GetFloat(Int32).) | |
GetGuid | Возвращает значение заданного столбца в виде идентификатора GUID. (Переопределяет DbDataReader.GetGuid(Int32).) | |
GetHashCode | (унаследовано из Object) | |
GetInt16 | Возвращает значение указанного столбца в виде 16-разрядного целого числа со знаком. (Переопределяет DbDataReader.GetInt16(Int32).) | |
GetInt32 | Возвращает значение указанного столбца в виде 32-разрядного целого числа со знаком. (Переопределяет DbDataReader.GetInt32(Int32).) | |
GetInt64 | Возвращает значение указанного столбца в виде 64-разрядного целого числа со знаком. (Переопределяет DbDataReader.GetInt64(Int32).) | |
GetLifetimeService | (унаследовано из MarshalByRefObject) | |
GetName | Возвращает имя заданного столбца. (Переопределяет DbDataReader.GetName(Int32).) | |
GetOrdinal | Возвращает порядковый номер столбца, если известно его имя. (Переопределяет DbDataReader.GetOrdinal(String).) | |
GetProviderSpecificFieldType | Возвращает объект Object, который представляет базовый тип поля, специфичный для поставщика. (Переопределяет DbDataReader.GetProviderSpecificFieldType(Int32).) | |
GetProviderSpecificValue | (унаследовано из DbDataReader) | |
GetProviderSpecificValues | (унаследовано из DbDataReader) | |
GetSchemaTable | Возвращает объект DataTable, описывающий метаданные столбцов модуля чтения данных SqlCeDataReader. (Переопределяет DbDataReader.GetSchemaTable().) | |
GetSqlBinary | Возвращает значение указанного столбца как SqlBinary. | |
GetSqlBoolean | Возвращает значение указанного столбца как SqlBoolean. | |
GetSqlByte | Возвращает значение указанного столбца как SqlByte. | |
GetSqlDateTime | Возвращает значение указанного столбца как SqlDateTime. | |
GetSqlDecimal | Возвращает значение указанного столбца как SqlDecimal. | |
GetSqlDouble | Возвращает значение указанного столбца как SqlDouble. | |
GetSqlGuid | Возвращает значение указанного столбца как SqlGuid. | |
GetSqlInt16 | Возвращает значение указанного столбца как SqlInt16. | |
GetSqlInt32 | Возвращает значение указанного столбца как SqlInt32. | |
GetSqlInt64 | Возвращает значение указанного столбца как SqlInt64. | |
GetSqlMoney | Возвращает значение указанного столбца как SqlMoney. | |
GetSqlSingle | Возвращает значение указанного столбца как SqlSingle. | |
GetSqlString | Возвращает значение указанного столбца как SqlString. | |
GetString | Возвращает значение указанного столбца в виде строки. (Переопределяет DbDataReader.GetString(Int32).) | |
GetType | (унаследовано из Object) | |
GetValue | Возвращает значение столбца по указанному порядковому номеру в его собственном формате. (Переопределяет DbDataReader.GetValue(Int32).) | |
GetValues | Возвращает все столбцы атрибутов в текущей строке. (Переопределяет DbDataReader.GetValues(array<Object[]).) | |
InitializeLifetimeService | (унаследовано из MarshalByRefObject) | |
IsCommandBehavior | Определяет, совпадает ли объект CommandBehavior с поведением объекта SqlCeDataReader. | |
IsDBNull | Возвращает значение, указывающее, содержатся ли в столбце несуществующие или отсутствующие значения. (Переопределяет DbDataReader.IsDBNull(Int32).) | |
MemberwiseClone() | (унаследовано из Object) | |
MemberwiseClone(Boolean) | (унаследовано из MarshalByRefObject) | |
NextResult | Не поддерживается поставщиком данных .NET Compact Framework для SQL Server Compact. (Переопределяет DbDataReader.NextResult().) | |
OnMove | Инфраструктура. | |
Read | Перемещает модуль чтения данных SqlCeDataReader к следующей записи. (Переопределяет DbDataReader.Read().) | |
Seek | Позиционирует модуль чтения данных SqlCeDataReader на запись со значениями индекса, совпадающими с заданными параметрами. | |
ToString | (унаследовано из Object) |
В начало
Явные реализации интерфейса
Имя | Описание | |
---|---|---|
IDataRecord.GetData | (унаследовано из DbDataReader) |
В начало
Замечания
Создание модуля чтения данных SqlCeDataReader необходимо производить не прямым использованием конструктора, а вызовом метода ExecuteReader объекта SqlCeCommand.
Если SqlCeDataReader занят, то связанное соединение SqlCeConnection занято обслуживанием SqlCeDataReader. В этом состоянии в одном и том же соединении может быть создано несколько модулей чтения.
Изменения, которые были сделаны в результирующем наборе другим процессом или потоком во время считывания данных, с некоторой вероятностью могут быть видны пользователю модуля чтения данных SqlCeDataReader, хотя это зависит от того, когда именно эти изменения произошли.
IsClosed и RecordsAffected являются единственными свойствами, к которым могут производиться обращения после закрытия SqlCeDataReader. Хотя к свойству RecordsAffected можно обращаться в любое время, пока существует модуль чтения данных SqlCeDataReader, рекомендуется всегда вызывать метод Close перед получением значения свойства RecordsAffected, чтобы гарантировать точность возвращаемых значений.
Примеры
Следующий пример демонстрирует создание SqlCeConnection, SqlCeCommand и SqlCeDataReader. В примере данные сначала считываются, а затем выводятся на консоль. После этого закрываются модуль чтения данных SqlCeDataReader и соединение SqlCeConnection.
Dim conn As SqlCeConnection = Nothing
Dim cmd As SqlCeCommand = Nothing
Dim rdr As SqlCeDataReader = Nothing
Try
' Open the connection and create a SQL command
'
conn = New SqlCeConnection("Data Source = AdventureWorks.sdf")
conn.Open()
cmd = New SqlCeCommand("SELECT * FROM DimEmployee", conn)
rdr = cmd.ExecuteReader()
' Iterate through the results
'
While rdr.Read()
Dim employeeID As Integer = rdr.GetInt32(0) ' or: rdr["EmployeeKey"];
Dim lastName As String = rdr.GetString(5) ' or: rdr["FirstName"];
End While
' Always dispose data readers and commands as soon as practicable
'
rdr.Close()
cmd.Dispose()
Finally
' Close the connection when no longer needed
'
conn.Close()
End Try
SqlCeConnection conn = null;
SqlCeCommand cmd = null;
SqlCeDataReader rdr = null;
try
{
// Open the connection and create a SQL command
//
conn = new SqlCeConnection("Data Source = AdventureWorks.sdf");
conn.Open();
cmd = new SqlCeCommand("SELECT * FROM DimEmployee", conn);
rdr = cmd.ExecuteReader();
// Iterate through the results
//
while (rdr.Read())
{
int employeeID = rdr.GetInt32(0); // or: rdr["EmployeeKey"];
string lastName = rdr.GetString(5); // or: rdr["FirstName"];
}
// Always dispose data readers and commands as soon as practicable
//
rdr.Close();
cmd.Dispose();
}
finally
{
// Close the connection when no longer needed
//
conn.Close();
}
Безопасность многопоточности
Все общие статические члены (Shared в Microsoft Visual Basic) этого типа можно использовать в потокобезопасных операциях. Потокобезопасная работа с членами экземпляров типа не гарантируется.