Поставщик данных | Адрес 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 для взаимодействия с другими СУБД.
Дополнительные пространства имен ADO.NET
В дополнение к пространствам имен .NET, определяющим типы конкретного поставщика данных, библиотеки базовых классов предлагают ряд дополнительных пространств имен, связанных с ADO.NET (табл. 22.4).
Следует понимать, что эта глава не предполагает рассмотрение абсолютно всех типов из каждого пространства имен ADO.NET (для этого потребовалась бы отдельная книга). Но очень важно, чтобы вы поняли суть и возможности типов, предлагаемых в рамках пространства имен System.Data.
Таблица 22.4. Дополнительные пространства имен, имеющие отношение к ADO.NET
Пространство имен | Описание |
---|---|
Misrosoft.SqlServer.Server | Новое пространство имен .NET 2.0; предлагает типы, позволяющие с помощью управляемых языков создавать хранимые процедуры для SQL Server 2005 |
System.Data | Определяет базовые типы ADO.NET, используемые всеми поставщиками данных |
System.Data.Common | Содержит типы, совместно используемые поставщиками данных, включая типы соответствующие модели источника поставщика данных .NET 2.0 |
System.Data.Design | Новое пространство имен .NET 2.0; предлагает различные типы, используемые при настройке пользовательских компонентов данных в режиме проектирования |
System.Data.Sql | Новое пространство имен .NET 2.0; предлагает типы, позволяющие выявлять экземпляры Microsoft SQL Server, установленные в локальной сети |
System.Data.SqlTypes | Содержит "собственные" типы данных Microsoft SQL Server. Хотя вы всегда можете использовать соответствующие типы данных CLR, типы SqlTypes оптимизированы специально для работы с SQL Server |
Типы System.Data
Пространство имен System.Data является, так сказать, общим знаменателем для всех пространств имен ADO.NET. Вы просто не можете построить приложение ADO.NET, не указав это пространство имен в приложении доступа к данным. Эта пространство имен содержит типы, совместно используемые всеми поставщиками данных ADO.NET, независимо от лежащего в их основе типа хранилища данных. В дополнение к целому ряду исключений (NoNullAllowedException, RowNotInTableException, MissingPrimaryKeyExceeption и т.д.), связанных с доступом к базам данных. System.Data содержит типы, соответствующие как раз-личным примитивам (таблицам, строкам, столбцам, ограничениям и т.д.) базы данных, так и общим интерфейсам, реализуемым объектами поставщика данных, В табл. 22.5 предлагаются описания некоторых базовых типов этого пространства имен, о которых вам следует знать.
Роль пространства имен DataSet, a также DataTable.DataRelation.DataRow и т.д. будет рассмотрена в этой главе позже. Нашей ближайшей задачей будет рассмотрение базовых интерфейсов System.Datа, так сказать, с общей точки зрения. чтобы лучше понять общие функциональные возможности, предлагаемые всеми поставщиками данных. Конкретные детали будут обсуждаться в процессе изложения материала этой главы, а сейчас мы сосредоточимся на общем поведении каждого из имеющихся типов интерфейса.
Таблица 22.5. Базовые члены пространства имен System.Data