Результирующие наборы и наборы данных (устройства)
Обновлен: Ноябрь 2007
Мастер Visual Studio Мастер конфигурации источников данных может создавать код источника данных в проектах устройств, которые основаны на DataSet или System.Data.SqlServerCe.SqlCeResultSet. Созданный код представляет источник данных в проекте устройства, который может быть привязан к пользовательским интерфейсам управления, а также может обмениваться данными с базой данных SQL Server Compact 3.5. Однако код, основанный на SqlCeResultSet, работает быстрее, использует меньше памяти и более прост, чем код, основанный на DataSet. Это связано с тем, что SqlCeResultSet использует указатель для работы напрямую с базой данных, а DataSet сохраняет копию данных из базы данных в приложении устройства. В этом разделе обсуждаются источники данных, основанные как на SqlCeResultSet, так и на DataSet.
Примечание. |
---|
По умолчанию Visual Studio создает код, основанный на DataSet, при использовании мастера источников данных для создания нового источника данных. Чтобы создать один из этих классов или оба этих класса, ознакомьтесь с разделом Практическое руководство. Создание кода SqlCeResultSet Code (устройства). |
На следующем рисунке показаны различия в архитектуре между SqlCeResultSets и DataSets.
Результирующие наборы данных
Если мастер создания источника данных создает источника данных, основанный на SqlCeResultSet, вместе с ним создается и класс, которые наследует из SqlCeResultSet. В отличие от источников данных на основе DataSet источники данных, основанные на SqlCeResultSet, не хранят данные. Вместо этого SqlCeResultSet поддерживает указатель на базу данных, а также считывает и обновляет данные в базе данных без использования адаптера таблиц. Возможен прямой доступ к базе данных, потом что SqlCeResultSet является частью поставщика данных .NET Compact Framework для SQL Server Compact 3.5 (SQL Server Mobile в более ранних версиях). Дополнительные сведения см. в разделе Создание типизированных результирующих наборов.
В целом, источники данных, основанные на SqlCeResultSet, требуют меньше памяти, обладают лучшей производительностью, но имеют меньше функциональных возможностей по сравнению с источниками данных, основанными на DataSet.
Наборы данных
Если мастер конфигурации источника данных создает источник данных, основанный на DataSet, вместе с ним создаются классы для представления данных и класс TableAdapter для обмена данными между приложением и базой данных. Классы, которые представляют данные, наследуют из DataSet, Microsoft.Office.Interop.Excel.DataTable и DataRow. Эти классы сохраняют данные из базы данных. Мастер источника данных создает следующие объекты для отражения реляционной структуры и ограничений базы данных:
Класс, производный из DataSet, который содержит Datatable для каждой выбранной таблицы в мастере источника данных. Дополнительные сведения см. в разделе Типизированные объекты DataSet (ADO.NET).
Каждый класс, производный из DataTable, также содержит набор объектов DataColumn, который отражает столбцы в базе данных.
Класс, производный из DataRow, для каждой таблицы.
Реляционные ограничения из базы данных, такие как значение не null, уникальный, первичные ключи, внешние ключи.
Класс TableAdapter для обмена данными между базой данных и объектами данных в приложении устройства. Класс TableAdapter содержит методы для чтения данных из базы данных и записи измененных данных обратно в базу данных. Дополнительные сведения см. в разделе Общие сведения об адаптере таблиц.
Классы, которые были описаны ранее в этом разделе, совместимы с архитектурой ADO.NET. Поэтому модель доступа к данным соответствует данным ADO.NET, которые используют .NET Framework на настольном ПК. Дополнительные сведения см. в разделах Доступ к данным (Visual Studio) и Поддержка доступа к данным и XML в .NET Compact Framework.
В целом, источники данных, основанные на DataSet, имеют больше функциональных возможностей, однако требует больше ресурсов памяти и процессора по сравнению с источниками данных на основе SqlCeResultSet.
См. также
Задачи
Практическое руководство. Создание кода SqlCeResultSet Code (устройства)
Основные понятия
Рекомендации по стратегиям доступа к данным
Другие ресурсы
Домашняя страница электронной документации по SQL Server Compact