Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Троелсен Э. Язык программирования С# 2010 и п...docx
Скачиваний:
113
Добавлен:
21.09.2019
Размер:
6.92 Mб
Скачать

Поставщики данных Microsoft

В дистрибутив Microsoft .NET 2.0 включен ряд поставщиков данных, в частности для Oracle, SQL Server и ODBC. В табл. 22.2 для поставщиков данных Microsoft ADO.NET указаны пространства имен и содержащие их компоновочные блоки.

Замечание. Специального поставщика данных, обращающегося непосредственно к механизму Jet (т.е. к Microsoft Access), нет. Для взаимодействия с файлами данных Access можно использовать поставщик данных OLE DB или ODBC.

Рис 22.1. Поставщики данных ADO.NET обеспечивают доступ к данным СУБД.

Таблица 22.2. Поставщики данных ADO.NET от Microsoft

Поставщик данных

Пространство имен

Компоновочный блок

OLE DB

System.Data.OleDb

System.Data.dll

Microsoft SQL Server

System.Data.SqlClient

System.Data.dll

Microsoft SQL Server Mobile

System.Data.SqlServerCe

System.Data.SqlServerCe.dll

ODBC

System.Data.Odbc

System.Data.dll

Oracle

System.Data.OracleClient

System.Data.OracleClient.dll

Поставщик данных OLE DB, который скомпонован из типов, определенных в пространстве имен System.Data.OleDb, позволяет получить доступ к данным любого 'хранилища данных, поддерживающего классический протокол OLE DB на основе COM. С помощью этого поставщика данных можно связаться с любой базой данных OLE DB, просто настроив сегмент Provider строки соединения. При этом, однако, следует учитывать то, что поставщик OLE DB в фоновом режиме взаимодействует с различными объектами COM, а это может влиять на производительность приложения. В общем, поставщик данных OLE DB оказывается полезным только в том случае, когда приходится взаимодействовать с СУБД, не определяющей конкретного поставщика данных .NET.

Поставщик данных Microsoft SQL Server предлагает прямой доступ к хранилищам данных Microsoft SQL Server (версий 7.0 и выше) и только к хранилищам данных SQL Server. Пространство имен System.Data.SqlClient содержит типы, используемые поставщиком данных SQL Server и предлагающие, в основном, те же функциональные возможности, что и поставщик данных OLE DB. Ключевым различием является то. что поставщик данных SQL Server действует в обход уровня OLE DB, а это обеспечивает ряд преимуществ с точки зрения производительности системы. Кроме того, поставщик данных Microsoft SQL Server позволяет получить доступ к некоторым уникальным возможностям данной конкретной СУБД.

Замечание. Если вас интересуют особенности использования пространств имен System.Data.SqlServerCe, System.Data.Odbc или System.Data.Oracle, за подробностями обратитесь к документации .NET Framework 2.0 SDK.

Поставщики данных других производителей

Вдобавок к поставщикам данных, предлагаемым компанией Microsoft, существуют поставщики данных других производителей, предназначенные для самых разных, как свободно доступных, так и коммерческих баз данных. В табл. 22.3 указано, где найти некоторые управляемые поставщики данных, не предлагаемые в комплекте инсталляции Microsoft .NET 2.0 (помните о том, что указанные здесь адреса URL могут измениться).

Таблица 22.3. Поставщики данных ADO.NET разных производителей

Поставщик данных

Адрес web-страницы

Firebird Interbase

http://www.mono-project.com/Firebird_Interbase

IBM DB2

http://www-306.ibm.com/software/data/db2

MySQL

http://dev.mysql.com/downloads/connector/net/1.0.html

PostgreSQL

http://www.mono-project.com/PostgreSQL

Sybase

http://www.mono-project.com/Sybase

Замечание. Поскольку число поставщиков данных ADO.NET велико, в примерах этой главы будет использоваться поставщик данных Microsoft SQL Server (System.Data.SqlClient). После освоения материала, представленного на страницах этой главы, у вас не должно возникать проблем при использовании ADO.NET для взаимодействия с другими СУБД.