对于ADO.NET程序提供一个类的集合,专门设计用来同特定类型的数据存储区进行通信。.NET Framework包括4种此类提供程序:SQL Client .NET数据提供程序、Oracle Client .NET数据提供程序。
SQL Client和Oracle Client .NET数据提供程序设计用于分别同特定数据库——SQL Server和Oracle进行通信。ODBC和OLE DB .NET数据提供程序经常被称为“桥梁”组件,因为它们用作通向早期技术——ODBC和OLE DB的桥梁。这些提供程序使开发人员能够分别通过ODBC驱动程序和OLE DB提供程序同各种数据存储区进行通信。#t#
每种.NET数据提供程序都实现相同的基类—— ProviderFactory,Connection,ConnectionStringBuilder,Command,DataReader,Parameter和Transaction,只是其实际名称取决于该数据提供程序。例如,SQL Client .NET数据提供程序具有SqlConnection类,ADO.NET程序而ODBC .NET数据提供程序包括OdbcConnection类。无论使用哪种.NET数据提供程序,此数据提供程序的Connection类都通过相同的基接口实现相同的基本特性。
- Visual C#
- //打开和关闭一个OdbcConnection
- OdbcConnection cnOdbc = new OdbcConnection();
- cnOdbc.ConnectionString = "Driver={SQL Server};" +
- @"Server=.\SQLExpress" +
- "Database=Northwind;...";
- cnOleDb.Open();
- ...
- cnOleDb.Close();
- //打开和关闭一个SqlConnection
- SqlConnection cnSql = new SqlConnection();
- cnSql.ConnectionString = @"Data Source=.\SQLExpress;" +
- "Initial Catalog=Northwind;...";
- cnSql.Open();
- ...
- cnSql.Close();
要对数据存储区打开一个连接,可创建此提供程序连接类的一个实例,设置此对象的ConnectionString属性,然后调用其Open方法即可。每个.NET数据提供程序都有自己的命名空间。.NET Framework中所包括的4个提供程序是System.Data命名空间的一个子集,非连接对象就位于System .Data命名空间之中。
SQL Client数据提供程序位于System.Data.SqlClient命名空间中,ADO.NET程序据提供程序位于System.Data.Odbc命名空间中;OLE DB .NET数据提供程序位于System.Data.OleDb命名空间中;Oracle Client .NET数据提供程序则位于ADO.NET程序命名空间中。