Класс SqlCeResultSet
Обновляемый, прокручиваемый и связываемый курсор.
Иерархия наследования
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 SqlCeResultSet _
Inherits SqlCeDataReader _
Implements IEnumerable, IListSource
'Применение
Dim instance As SqlCeResultSet
public class SqlCeResultSet : SqlCeDataReader,
IEnumerable, IListSource
public ref class SqlCeResultSet : public SqlCeDataReader,
IEnumerable, IListSource
type SqlCeResultSet =
class
inherit SqlCeDataReader
interface IEnumerable
interface IListSource
end
public class SqlCeResultSet extends SqlCeDataReader implements IEnumerable, IListSource
Тип SqlCeResultSet обеспечивает доступ к следующим элементам.
Конструкторы
Имя | Описание | |
---|---|---|
SqlCeResultSet | Важный элемент безопасности. Не используйте. Чтобы создать SqlCeResultSet, необходимо вызывать метод ExecuteResultSet(ResultSetOptions) объекта SqlCeCommand. |
В начало
Свойства
Имя | Описание | |
---|---|---|
ContainsListCollection | Инфраструктура. | |
Depth | Возвращает значение, показывающее глубину вложенности для текущей строки. (унаследовано из SqlCeDataReader) | |
FieldCount | Возвращает число столбцов в предложении SELECT запроса. (унаследовано из SqlCeDataReader) | |
HasRows | Возвращает значение, указывающее на то, что в модуле чтения данных SqlCeDataReader содержится одна или несколько строк. (унаследовано из SqlCeDataReader) | |
HiddenFieldCount | Инфраструктура. (унаследовано из SqlCeDataReader) | |
IsClosed | Показывает, закрыт ли модуль чтения данных. (унаследовано из SqlCeDataReader) | |
Item[Int32] | Выполняет функцию индексатора для SqlCeResultSet. (Переопределяет SqlCeDataReader.Item[Int32].) | |
Item[String] | Выполняет функцию индексатора для SqlCeResultSet. (Переопределяет SqlCeDataReader.Item[String].) | |
RecordsAffected | Возвращает число строк, которые были изменены, вставлены или удалены инструкцией SQL. (унаследовано из SqlCeDataReader) | |
ResultSetView | Используется при привязке данных SqlCeResultSet с элементом управления. | |
Scrollable | Определяет, является ли объект SqlCeResultSet прокручиваемым. | |
Sensitivity | Определяет чувствительность SqlCeResultSet. | |
Updatable | Определяет, доступны ли значения в SqlCeResultSet для изменения. | |
VisibleFieldCount | (унаследовано из DbDataReader) |
В начало
Методы
Имя | Описание | |
---|---|---|
Close | Закрывает объект SqlCeDataReader. (унаследовано из SqlCeDataReader) | |
CreateObjRef | (унаследовано из MarshalByRefObject) | |
CreateRecord | Создает на сервере новую строку и возвращает объект SqlCeUpdatableRecord. | |
Delete | Удаляет текущую запись из источника данных на сервере. | |
Dispose() | Инфраструктура. Освобождает ресурсы, используемые данным модулем чтения данных SqlCeDataReader. (унаследовано из SqlCeDataReader) | |
Dispose(Boolean) | Освобождает неуправляемые ресурсы, используемые классом SqlCeDataReader, и при необходимости освобождает управляемые ресурсы. (унаследовано из SqlCeDataReader) | |
Equals | (унаследовано из Object) | |
Finalize | Освобождает неуправляемые ресурсы и выполняет другие операции очистки перед обработкой модуля чтения данных SqlCeDataReader сборщиком мусора. (унаследовано из SqlCeDataReader) | |
GetBoolean | Возвращает значение столбца по указанному индексу в виде значения типа Boolean. (Переопределяет SqlCeDataReader.GetBoolean(Int32).) | |
GetByte | Возвращает значение столбца по указанному индексу в виде значения типа byte. (Переопределяет SqlCeDataReader.GetByte(Int32).) | |
GetBytes | Копирует длину байтов в буфер, начиная с указанного положения указанного поля. (Переопределяет SqlCeDataReader.GetBytes(Int32, Int64, array<Byte[], Int32, Int32).) | |
GetChar | Не поддерживается поставщиком данных .NET Compact Framework для SQL Server Compact. (унаследовано из SqlCeDataReader) | |
GetChars | Копирует в буфер строку символов указанной длины, начиная с заданной позиции указанного поля. (Переопределяет SqlCeDataReader.GetChars(Int32, Int64, array<Char[], Int32, Int32).) | |
GetData | (унаследовано из DbDataReader) | |
GetDataTypeName | Получает имя исходного типа данных. (унаследовано из SqlCeDataReader) | |
GetDateTime | Возвращает значение столбца по указанному индексу в виде значения типа DateTime. (Переопределяет SqlCeDataReader.GetDateTime(Int32).) | |
GetDbDataReader | (унаследовано из DbDataReader) | |
GetDecimal | Возвращает значение столбца по указанному индексу в виде значения типа Double. (Переопределяет SqlCeDataReader.GetDecimal(Int32).) | |
GetDouble | Возвращает значение столбца по указанному индексу в виде значения типа Double. (Переопределяет SqlCeDataReader.GetDouble(Int32).) | |
GetEnumerator | Возвращает объект IEnumerator, который может использоваться для просмотра строк в модуле чтения данных. (Переопределяет SqlCeDataReader.GetEnumerator().) | |
GetFieldType | Возвращает значение Type, которое представляет тип данных объекта. (унаследовано из SqlCeDataReader) | |
GetFloat | Возвращает значение столбца по указанному индексу в виде значения типа Float. (Переопределяет SqlCeDataReader.GetFloat(Int32).) | |
GetGuid | Возвращает значение столбца по указанному индексу как значение типа GUID. (Переопределяет SqlCeDataReader.GetGuid(Int32).) | |
GetHashCode | (унаследовано из Object) | |
GetInt16 | Возвращает значение столбца по указанному индексу как значение типа Int16. (Переопределяет SqlCeDataReader.GetInt16(Int32).) | |
GetInt32 | Возвращает значение столбца по указанному индексу как значение типа Int32. (Переопределяет SqlCeDataReader.GetInt32(Int32).) | |
GetInt64 | Возвращает значение столбца по указанному индексу как значение типа Int64. (Переопределяет SqlCeDataReader.GetInt64(Int32).) | |
GetLifetimeService | (унаследовано из MarshalByRefObject) | |
GetList | Возвращает экземпляр объекта ResultSetView. | |
GetName | Возвращает имя заданного столбца. (унаследовано из SqlCeDataReader) | |
GetOrdinal | Возвращает порядковый номер столбца, если известно его имя. (унаследовано из SqlCeDataReader) | |
GetProviderSpecificFieldType | Возвращает объект Object, который представляет базовый тип поля, специфичный для поставщика. (унаследовано из SqlCeDataReader) | |
GetProviderSpecificValue | (унаследовано из DbDataReader) | |
GetProviderSpecificValues | (унаследовано из DbDataReader) | |
GetSchemaTable | Возвращает объект DataTable, описывающий метаданные столбцов модуля чтения данных SqlCeDataReader. (унаследовано из SqlCeDataReader) | |
GetSqlBinary | Возвращает значение столбца по указанному индексу как значение типа SqlBinary. (Переопределяет SqlCeDataReader.GetSqlBinary(Int32).) | |
GetSqlBoolean | Возвращает значение столбца по указанному индексу как значение типа SqlBoolean. (Переопределяет SqlCeDataReader.GetSqlBoolean(Int32).) | |
GetSqlByte | Возвращает значение столбца по указанному индексу как значение типа SqlByte. (Переопределяет SqlCeDataReader.GetSqlByte(Int32).) | |
GetSqlDateTime | Возвращает значение столбца по указанному индексу как значение типа SqlDateTime. (Переопределяет SqlCeDataReader.GetSqlDateTime(Int32).) | |
GetSqlDecimal | Возвращает значение столбца по указанному индексу как значение типа SqlDecimal. (Переопределяет SqlCeDataReader.GetSqlDecimal(Int32).) | |
GetSqlDouble | Возвращает значение столбца по указанному индексу как значение типа SqlDouble. (Переопределяет SqlCeDataReader.GetSqlDouble(Int32).) | |
GetSqlGuid | Возвращает значение столбца по указанному индексу как значение типа SqlGuid. (Переопределяет SqlCeDataReader.GetSqlGuid(Int32).) | |
GetSqlInt16 | Возвращает значение столбца по указанному индексу как значение типа SqlInt16. (Переопределяет SqlCeDataReader.GetSqlInt16(Int32).) | |
GetSqlInt32 | Возвращает значение столбца по указанному индексу как значение типа SqlInt32. (Переопределяет SqlCeDataReader.GetSqlInt32(Int32).) | |
GetSqlInt64 | Возвращает значение столбца по указанному индексу как значение типа SqlInt64. (Переопределяет SqlCeDataReader.GetSqlInt64(Int32).) | |
GetSqlMetaData | Возвращает метаданные, связанные с указанным столбцом. | |
GetSqlMoney | Возвращает значение столбца по указанному индексу как значение типа SqlMoney. (Переопределяет SqlCeDataReader.GetSqlMoney(Int32).) | |
GetSqlSingle | Возвращает значение столбца по указанному индексу как значение типа SqlSingle. (Переопределяет SqlCeDataReader.GetSqlSingle(Int32).) | |
GetSqlString | Возвращает значение столбца по указанному индексу как значение типа SqlString. (Переопределяет SqlCeDataReader.GetSqlString(Int32).) | |
GetString | Возвращает значение столбца по указанному индексу как значение типа String. (Переопределяет SqlCeDataReader.GetString(Int32).) | |
GetType | (унаследовано из Object) | |
GetValue | Возвращает значение указанного поля. (Переопределяет SqlCeDataReader.GetValue(Int32).) | |
GetValues | Производит выборку массива всех полей для указанной записи. (Переопределяет SqlCeDataReader.GetValues(array<Object[]).) | |
InitializeLifetimeService | (унаследовано из MarshalByRefObject) | |
Insert(SqlCeUpdatableRecord) | Вставляет указанную SqlCeUpdatableRecord в базовый набор строк. | |
Insert(SqlCeUpdatableRecord, DbInsertOptions) | Вставляет указанную строку SqlCeUpdatableRecord в базовый набор строк и определяет способ позиционирования курсора. | |
IsCommandBehavior | Определяет, совпадает ли объект CommandBehavior с поведением объекта SqlCeDataReader. (унаследовано из SqlCeDataReader) | |
IsDBNull | Определяет, содержит ли поле по указанной позиции значение NULL. (Переопределяет SqlCeDataReader.IsDBNull(Int32).) | |
IsSetAsDefault | Определяет, помечено ли поле по указанному индексу для использования значения по умолчанию базового объекта. | |
MemberwiseClone() | (унаследовано из Object) | |
MemberwiseClone(Boolean) | (унаследовано из MarshalByRefObject) | |
NextResult | Не поддерживается поставщиком данных .NET Compact Framework для SQL Server Compact. (унаследовано из SqlCeDataReader) | |
OnMove | Инфраструктура. (Переопределяет SqlCeDataReader.OnMove().) | |
Read | Перемещает модуль чтения данных SqlCeDataReader к следующей записи. (унаследовано из SqlCeDataReader) | |
ReadAbsolute | Перемещает модуль чтения на определенную запись в ResultSet. | |
ReadFirst | Позиционирует модуль чтения на первую запись в ResultSet. | |
ReadLast | Позиционирует модуль чтения на последнюю запись в ResultSet. | |
ReadPrevious | Позиционирует модуль чтения на запись, предшествующую текущей. | |
ReadRelative | Перемещает модуль чтения на указанное число записей от текущей позиции. | |
Seek | Позиционирует модуль чтения данных SqlCeDataReader на запись со значениями индекса, совпадающими с заданными параметрами. (унаследовано из SqlCeDataReader) | |
SetBoolean | Присваивает указанному столбцу значение, равное переданному логическому значению Boolean. | |
SetByte | Присваивает указанному столбцу значение, равное переданному байтовому Byte. | |
SetBytes | Копирует указанное число байтов из указанного буфера в указанный столбец, начиная с заданной позиции в этом поле. | |
SetChar | Присваивает указанному столбцу значение, равное переданному значению Char. | |
SetChars | Копирует заданное число символов из указанного буфера в указанный столбец, начиная с заданной позиции в этом поле. | |
SetDateTime | Присваивает указанному столбцу значение, равное переданному значению DateTime. | |
SetDecimal | Присваивает указанному столбцу значение, равное переданному значению Decimal. | |
SetDefault | Присваивает указанному столбцу значение, равное его значению по умолчанию. | |
SetDouble | Присваивает указанному столбцу значение, равное переданному значению Double. | |
SetFloat | Присваивает указанному столбцу значение, равное переданному значению Float. | |
SetGuid | Присваивает указанному столбцу значение, равное переданному значению Guid. | |
SetInt16 | Присваивает указанному столбцу значение, равное переданному значению Int16. | |
SetInt32 | Присваивает указанному столбцу значение, равное переданному значению Int32. | |
SetInt64 | Присваивает указанному столбцу значение, равное переданному значению Int64. | |
SetObjectRef | Связывает объект со столбцом в указанной позиции. | |
SetSqlBinary | Присваивает указанному столбцу значение, равное переданному значению SqlBinary. | |
SetSqlBoolean | Присваивает указанному столбцу значение, равное переданному значению SqlBoolean. | |
SetSqlByte | Присваивает указанному столбцу значение, равное переданному значению SqlByte. | |
SetSqlDateTime | Присваивает указанному столбцу значение, равное переданному значению SqlDateTime. | |
SetSqlDecimal | Присваивает указанному столбцу значение, равное переданному значению SqlDecimal. | |
SetSqlDouble | Присваивает указанному столбцу значение, равное переданному значению SqlDouble. | |
SetSqlGuid | Присваивает указанному столбцу значение, равное переданному значению SqlGuid. | |
SetSqlInt16 | Присваивает указанному столбцу значение, равное переданному значению SqlInt16. | |
SetSqlInt32 | Присваивает указанному столбцу значение, равное переданному значению SqlInt32. | |
SetSqlInt64 | Присваивает указанному столбцу значение, равное переданному значению SqlInt64. | |
SetSqlMoney | Присваивает указанному столбцу значение, равное переданному значению SqlMoney. | |
SetSqlSingle | Присваивает указанному столбцу значение, равное переданному значению SqlSingle. | |
SetSqlString | Присваивает указанному столбцу значение, равное переданному значению SqlString. | |
SetString | Присваивает указанному столбцу значение, равное переданному значению String. | |
SetValue | Присваивает указанному столбцу значение, равное переданному значению. | |
SetValues | Присваивает каждому из полей в указанной записи значение, соответствующее значению в указанном массиве. | |
ToString | (унаследовано из Object) | |
Update | Отправляет изменения из текущей записи в базовую строку на сервере. |
В начало
Явные реализации интерфейса
Имя | Описание | |
---|---|---|
IListSource.ContainsListCollection | ||
IEnumerable.GetEnumerator | ||
IListSource.GetList | ||
IDataRecord.GetData | (унаследовано из DbDataReader) |
В начало
Замечания
В предыдущих версиях SQL Server Compact для связывания элементов управления с данными приходилось пользоваться классом DataSet. Хотя модуль чтения данных SqlCeDataReader позволяет добиться более высокой производительности по сравнению с классом DataSet, он реализует необновляемый курсор с последовательным доступом. В SQL Server Compact класс SqlCeResultSet обеспечивает две важные функции: обновляемость и прокручиваемость DataSet наряду с производительностью, аналогичной модулю чтения данных SqlCeDataReader.
Создание объекта SqlCeResultSet производится методом ExecuteResultSet, а не через конструктор объекта.
Объект ResultSetOptions позволяет задать прокручиваемость, обновляемость и чувствительность (последняя характеристика определяет, обнаруживает ли SqlCeResultSet изменения, внесенные им самим или другими объектами) объекта SqlCeResultSet.
По умолчанию модуль чтения данных SqlCeDataReader позиционируется перед первой записью. Чтобы начать доступ к данным, необходимо вызвать метод Read. При первом вызове Read курсор устанавливается на первую запись. Это поведение отличается от поведения метода SqlCeResultSet.Read. По умолчанию модуль чтения данных SqlCeResultSet позиционируется перед первой записью. Вызов метода SqlCeResultSet.Read сразу после создания SqlCeResultSet переместит курсор ко второй записи.
Примеры
В следующем примере создается новая база данных SQL Server Compact. Затем инициализируется SqlCeResultSet для заполнения набора данных.
Dim conn As SqlCeConnection = Nothing
Try
File.Delete("Test.sdf")
Dim engine As New SqlCeEngine("Data Source = Test.sdf")
engine.CreateDatabase()
conn = New SqlCeConnection("Data Source = Test.sdf")
conn.Open()
Dim cmd As SqlCeCommand = conn.CreateCommand()
cmd.CommandText = "CREATE TABLE myTable (col1 INT, col2 MONEY, col3 NVARCHAR(200))"
cmd.ExecuteNonQuery()
cmd.CommandText = "SELECT * FROM myTable"
Dim rs As SqlCeResultSet = cmd.ExecuteResultSet(ResultSetOptions.Updatable Or ResultSetOptions.Scrollable)
Dim rec As SqlCeUpdatableRecord = rs.CreateRecord()
rec.SetInt32(0, 34)
rec.SetDecimal(1, System.Convert.ToDecimal(44.66))
rec.SetString(2, "Sample text")
rs.Insert(rec)
Catch e As Exception
MessageBox.Show(e.Message)
Finally
conn.Close()
End Try
SqlCeConnection conn = null;
try
{
File.Delete("Test.sdf");
SqlCeEngine engine = new SqlCeEngine("Data Source = Test.sdf");
engine.CreateDatabase();
conn = new SqlCeConnection("Data Source = Test.sdf");
conn.Open();
SqlCeCommand cmd = conn.CreateCommand();
cmd.CommandText = "CREATE TABLE myTable (col1 INT, col2 MONEY, col3 NVARCHAR(200))";
cmd.ExecuteNonQuery();
cmd.CommandText = "SELECT * FROM myTable";
SqlCeResultSet rs = cmd.ExecuteResultSet(ResultSetOptions.Updatable |
ResultSetOptions.Scrollable);
SqlCeUpdatableRecord rec = rs.CreateRecord();
rec.SetInt32(0, 34);
rec.SetDecimal(1, (decimal)44.66);
rec.SetString(2, "Sample text");
rs.Insert(rec);
}
catch (Exception e)
{
MessageBox.Show(e.Message);
}
finally
{
conn.Close();
}
Безопасность многопоточности
Все общие статические члены (Shared в Microsoft Visual Basic) этого типа можно использовать в потокобезопасных операциях. Потокобезопасная работа с членами экземпляров типа не гарантируется.