1.ADO.NET操控数据库的工作过程
.NET数据提供程序的工作过程如图4-12所示:
图4-12 .NET数据提供程序的工作过程图
在图4-12中1,2,3步骤是从服务器检索数据的过程,A、B是对数据库修改的过程。在这个过程中1、2步和B过程都是.NET数据提供程序的工作步骤。
2.ADO.NET与MS SQL Server的关联
由于架构在.NET Framework 2.0基础之上的VS2005软件开发系统平台与SQL Server数据库管理信息系统都是出自微软公司旗下产品,所以VS2005与SQL Server的数据通信本身就已经经过了优化,可以直接访问SQL Server而不用添加OLE DB或开放式数据库连接(ODBC)层,并具有良好的性能。
以下代码示例显示如何在应用程序中包含System.Data.SqlClient命名空间。
using System.Data.SqlClient;
注意:
ODBC .NET Framework数据提供程序的结构与OLE DB .NET Framework数据提供程序的结构相似;例如,它调入ODBC服务组件。
3.ADO.NET与OLEDB的关联
OLEDB是Microsoft的一个战略性系统级编程接口,用于管理整个组织内的数据。OLEDB 是建立在ODBC功能之上的一个开放规范,主要用于访问非关系型数据库。表4-4显示已经用ADO.NET进行测试的提供程序。
表4-4 OLEDB数据提供程序所对应的数据源驱动程序表
驱动程序
|
提供程序
|
SQLOLEDB
|
用于SQL Server的Microsoft OLE DB提供程序
|
MSDAORA
|
用于Oracle的Microsoft OLE DB提供程序
|
Microsoft.Jet.OLEDB.4.0
|
用于Microsoft Jet的OLE DB提供程序
|
OLE DB .NET Framework数据提供程序类位于System.Data.OleDb命名空间中。以下代码示例显示如何在应用程序中包含System.Data.OleDb命名空间。
using System.Data.OleDb;
注意:
不推荐将Access (Jet)数据库用作多线程应用程序(如ASP.NET应用程序)的数据源。如果必须将Access数据库用作ASP.NET应用程序的数据源,而且不能使用其他数据库(如SQL Server或MSDE),那么请注意,连接到Access数据库的ASP.NET应用程序可能会遇到连接问题,这些问题通常与安全权限有关。
4.ADO.NET与ODBC的关联
DSN(数据源)是在odbc里设置的,用于连接数据库,ODBC只能用于关系型数据库。作为DSN的数据库连接可分为以前三种:
n 用户DSN:数据源对计算机来说是本地的,并且只能被当前用户访问,所以只有建立该数据源的用户才能访问该数据源,而且不能从网络上访问该数据源。
n 系统DSN:数据源对于计算机来说也是本地的,但并不是用户专用的,任何具有权限的用户都可以访问“系统DSN”,但是它还是不能从网络上来访问。
n 文件DSN:则与前两者不同,它们可以在所有安装了相同驱动程序的用户中共享,这些数据源对于计算机说都是本地的。也就是说可以通过网络上来访问。
表4-5显示了用ADO.NET测试的ODBC驱动程序。
表4-5 ODBC数据提供程序所对应的数据源驱动程序表
驱动程序
|
SQL Server
|
Microsoft ODBC for Oracle
|
Microsoft Access 驱动程序 (*.mdb)
|
ODBC .NET Framework数据提供程序类位于System.Data.Odbc命名空间中。以下代码示例显示如何在您的应用程序中包含System.Data.Odbc命名空间。
using System.Data.Odbc;
5.ADO.NET与Oracle的关联
ADO.NET提供程序通过Oracle客户端连接软件启用对Oracle数据源的数据访问,该数据提供程序支持Oracle客户端软件8.1.7版或更高版本。
ADO.NET为与Oracle数据库关联提供程序类位于System.Data.OracleClient命名空间中,并包含在System.Data.OracleClient.dll程序集中。在编译使用该数据提供程序的应用程序时,需要同时引用System.Data.dll和System.Data.OracleClient.dll。
以下代码示例显示如何在您的应用程序中包含System.Data.OracleClient命名空间。
using System.Data;
using System.Data.OracleClient;