Поставщики данных .Net
.NET Framework Data Provider for SQL Server
Поставщик данных .NET Framework для SQL Server использует собственный протокол для связи с SQL Server. Это простой и высокопроизводительный протокол, оптимизированный для прямого доступа к SQL Server без добавления уровней OLE DB или ODBC.
.NET Framework Data Provider for OLE DB
Поставщик данных .NET Framework для OLE DB обеспечивает доступ к данным с помощью собственной реализации OLE DB через COM (Component Object Model) - взаимодействие. Поставщик данных .NET Framework для OLE DB поддерживает как локальные, так и распределенные транзакции. Для распределенных транзакций поставщик данных .NET Framework для OLE DB по умолчанию автоматически задействуется в транзакции и получает сведения о транзакциях из служб компонентов Windows.
OLE DB - это архитектура баз данных, которая обеспечивает универсальную интеграцию данных по всей сети компании, от сервера до рабочей станции, независимо от типа данных
.NET Framework Data Provider for ODBC
.NET Framework Data Provider for Oracle
Поставщик данных .NET Framework |
Описание |
.NET Framework Data Provider for SQL Server |
Предоставляет доступ к данным для Microsoft SQL Server 7.0 или более поздних версий. Использует пространство имен System.Data.SqlClient. |
.NET Framework Data Provider for OLE DB |
Предоставляет доступ к данным для источников данных OLE DB. Использует пространство имен System.Data.OleDb. |
.NET Framework Data Provider for ODBC |
Предоставляет доступ к данным для источников данных ODBC. Использует пространство имен System.Data.Odbc. |
.NET Framework Data Provider for Oracle |
Предоставляет доступ к данным для источников данных Oracle. Источник данных .NET Framework для Oracle поддерживает клиентское программное обеспечение версии 8.1.7 и старше и использует пространство имен System.Data.OracleClient. |
DataSet
Объект DataSet является центральным элементом поддержки разъединенных распределенных сценариев данных в ADO.NET. Объект DataSet является расположенным в оперативной памяти представлением данных, обеспечивающим согласованную реляционную программную модель, независимо от источника данных. Он может использоваться с несколькими различными источниками данных, XML-данными или для управления данными, локальными по отношению к приложению. Объект DataSet представляет полный набор данных, включая связанные таблицы, ограничения и связи между таблицами.
Рис 2. Модель объектов DataSet
Класс DataTableCollection
Объект ADO.NET DataSet содержит коллекцию, содержащую ноль или более таблиц, представленных объектами DataTable. Коллекция DataTableCollection содержит все объекты DataTable в объекте DataSet.
Объект DataTable определяется в пространстве имен System.Data и представляет собой одну таблицу, находящуюся в оперативной памяти. Он содержит коллекцию столбцов, представленных объектом DataColumnCollection, и ограничений, представленных объектом ConstraintCollection, которые вместе определяют схему таблицы. Объект DataTable также содержит коллекцию строк, представленных объектом DataRowCollection, содержащим данные в таблице. Вместе со своим текущим состоянием объект DataRow сохраняет обе свои версии (текущую и исходную), чтобы определить изменения значений, хранимых в строке.
Класс DataRelationCollection
Объект DataSet содержит связи в своем объекте DataRelationCollection. Связь, представленная объектом DataRelation, связывает строки в одном объекте DataTable со строками в другом объекте DataTable. Связь аналогична пути соединения, который может существовать между столбцами первичного и внешнего ключей реляционной базы данных. Объект DataRelation определяет совпадающие столбцы в двух таблицах объекта DataSet.
Связи позволяют перемещаться в объекте DataSet от одной таблицы к другой. Важными элементами объекта DataRelation являются имя связи, имена связанных таблиц и связанные столбцы в каждой таблице. Связи могут быть построены с более чем одним столбцом для каждой таблицы путем указания массива объектов DataColumn в качестве ключевых столбцов. При добавлении связи к объекту DataRelationCollection дополнительно можно добавить UniqueKeyConstraint и ForeignKeyConstraint, чтобы обеспечить ограничения целостности в случае изменений значений связанных столбцов.
Свойство ExtendedProperties
Объекты DataSet, DataTable и DataColumn имеют свойство ExtendedProperties. Свойство ExtendedProperties является коллекцией PropertyCollection, где можно размещать пользовательские сведения, например инструкцию SELECT, используемую для формирования результирующего набора, или время формирования данных. Коллекция ExtendedProperties сохраняется со сведениями о схеме для объекта DataSet.
