在ADO.NET中可以把类分为.NET数据提供者对象和用户对象。提供者对象专用于每一种类型的数据源;专用于提供者的用户对象完全在数据源中实际的读取和写入工作。用户对象是将数据读取到内存中后用来访问和操纵数据的对象。用户对象以非连接方式使用;甚至在数据库连接关闭之后,也可以使用内存中的数据。提供者对象要求活动的连接,您可以使用它们首先读取数据,然后根据需要,通过用户对象使用内存中的数据,或通过使用提供者对象更新数据源中的数据,并将变动写回到数据源中。ADO.NET类在System.Data.dll中,并且与System.Xml.dll中的XML类集成。当编译使用System.Data命名空间的代码时,将引用System.Data.dll和System.Xml.dll。 1.提供者对象提供者对象是在每一个.NET数据提供者中定义的对象,其名称前带有专用于提供者的名称。因此,用于OLE DB提供者的实际连接对象就是OleDBConnection;用于SQL Server.NET提供者的类就是SqlConnection,ODBC.NET提供者的连接类就是OdbcConnection。提供者对象详见表8-1所示。表8-1 提供者对象列表 对象 说 明 连接对象 该对象是您要使用的第一个对象,被要求用于任何其他ADO.NET对象之前。它提供了到数据源的基本连接。如果您所使用的是要求用户名和密码的数据库,或者是位于远程网络服务器上的数据库,则连接对象就可以提供建立连接并登录的细节。 命令对象 可以使用此对象发出命令,比如数据源的SQL查询,如“SELECT * FROM Students”查询在Students表中的所有数据。专用于提供者的名称包括用于SQL Server的SqlCommand和用于OLE DB的OleDbCommand。 CommandBuilder对象 此对象用于构建SQL命令,可以在基于单一表查询的对象中进行数据修改。专用于提供者的名称包括用于SQL Server的SqlCommadnBuider和用于OLE DB 的OleDbCommandBuilder。 DataReader对象 这是一个快速而易于使用的对象,可以从数据源中读取仅能前向和只读的数据流。此对象具有最好的功能,可以简单地读取数据;专用于提供者的名称包括用于SQL Server的SqlDataReader和用于OLE DB的OleDbDataReader。 DataAdapter对象 这是一个通用的类,可以执行针对数据源的各种操作,包括更新变动的数据,填充数据集以及其他操作,专用于提供者的名称包括用于SQL Server的SqlDataAdapter和用于OLE DB的OleDbAdapter。 如果您非常熟悉传统的ADO,您可能注意到,在传统的ADO中起类似作用的Connetiont和其他对象具有与ADO.NET对应对象类似的名称。 2.用户对象用户对象即为用于定义ADO.NET断开的、用户端的对象。用户对象详见表8-2所示。表8-1 提供者对象列表 对象 说 明 DataSet对象 此对象表示一组相关表,在应用程序中这些表作为一个单元被引用。使用此对象可以快速从每一个表中获取所需的数据,当与服务器断开时检查并修改数据,然后在一次操作中就使用这些修改的数据更新服务器。 DataTable对象 此对象代表在DataSet中的一个表。 DataColumn对象 此对象代表表中的一列。 DataRow对象 此对象代表来自表的关联数据的一行 DataRelation对象 此对象代表通过共享列而发生关系的两个表之间的关系。 3.使用System.Data命名空间在ASP.NET代码中使用ADO.NET的第一步是引用System.Data命名空间,其中含有所有的ADO.NET类。将下面的using指令放置在使用ADO.NET的程序的开端: using System.Data; 由于ADO.NET存在多种不同的数据提供者,而不同的数据提供者又对应不同的命名空间,因此在使用数据提供者时要根据不同情况选择对应最佳的命名空间,关于数据提供者、命名空间及命名空间的适用性如表8-3所示。表8-3数据提供者、命名空间一览表 数据提供者 命名空间 说 明 SQL Server .NET数据提供者 System.Data.SqlClient 如果您使用的是SQL Server(版本7或更高级的)或MSDE,则可通过使用SQL Server专用的.NET数据提供者工,以获得最好的性能和对基础性的功能的最直接的访问 OLE DB .NET提供者 System.Data.OleDb 对于不是SQL Server的大多数数据源(Microsoft Access,Oracle以及其他数据源)而言,可以使用OLE DB.NET数据提供者 ODBC .NET数据提供者 System.Data.Odbc 如果您的数据源没有自己的或OLE DB提供者(比如PostgrsSQL或其他一些第三方数据库),则可以使用ODBC.NET数据提供者。 除以上数据提供者外,还存在其他数据提供者(例如Oracle.NET),如果有适合您的数据库的.NET数据提供者,则您可能希望使用这种.NET数据提供者,它有自己的using指令,但在引入命名空间时可能需要添加引用。
ADO.NET的基本命名空间和类
最新推荐文章于 2021-04-19 20:25:46 发布