.net 数据适配器和数据读取器有什么区别?

t5zmwmid  于 2022-12-01  发布在  .NET
关注(0)|答案(7)|浏览(139)

数据适配器和数据读取器有什么区别?

mum43rcc

mum43rcc1#

DataReader是从数据库检索记录的更快方法。DataReader读取列。DataReader需要活动连接,但DataAdapter需要断开连接的方法。

b1payxdu

b1payxdu2#

下面是一个很好的文章,上面的主题:Difference Between DataReader, DataSet, DataAdapter and DataTable in C#

简单地说,主要区别在于:

Unlike classic ADO, which was primarily designed for tightly coupled client/server systems,ADO.NET was built with the disconnected world in mind, using DataSets/DataAdapter.

  • DataAdapter遵循面向无连接的体系结构,这仅仅意味着您不需要连接到数据源,而DataReader是面向连接的体系结构,这意味着它需要到数据源的活动连接才能运行。
  • DataAdapter是一个中间层/中间件,充当数据集和数据库之间的桥梁,而DataReader使用服务器端游标提供对数据的只进、只读访问(* 简单地说,它用于读取数据 *)。
  • 使用DataSet,我们可以在与数据源断开连接时操作和更新DataSet's内容,并将任何修改的数据发送回使用相关的DataAdapter进行处理,而DataReader只能从数据库读取数据,不能修改它。
  • DataAdapter对象用于从数据库读取数据并将该数据填充到DataSet,而DataReader只是使用Read() method读取数据。
  • DataAdapter相对较慢,而使用DataReader可以提高应用程序性能,因为它可以在数据可用时立即检索数据,并且(默认情况下)在内存中一次只存储一行,从而减少系统开销。
a6b3iqyw

a6b3iqyw3#

数据读取器是一个对象,通过它你可以读取一个连续的数据流。它是一个只向前的数据,其中你不能回去读取以前的数据。数据集和数据适配器对象帮助我们在断开连接的模式下工作。数据集是一个在高速缓存中的表的表示。数据是通过数据适配器从数据源填充到数据集。一旦数据集中的表被修改,这些更改被广播到数据库;数据适配器。

oaxa6hgo

oaxa6hgo4#

数据适配器

DataAdapter将充当DataSet与数据库之间得桥梁.此datadapter对象用于从数据库读取数据并将该数据绑定到数据集. Dataadapter是一种面向断开连接得体系结构.

数据读取器

DataReader用于从数据库中读取数据,在从数据库中提取数据时,它是一个面向只读和转发连接的体系结构。与数据集相比,DataReader提取数据的速度非常快。通常我们将使用ExecuteReader对象将数据绑定到DataReader

pjngdqdw

pjngdqdw5#

请参见DataReader, DataAdapter & DataSet - When to use?
ADO.NET提供了两个中心数据访问组件。最好的地方是,它们在所有数据库中都是通用的,无论是SQL Server还是其他竞争数据库。当使用SQL Server以外的数据库时,唯一不同的是要使用的命名空间。

hlswsv35

hlswsv356#

DataReader是从DbCommand对象的ExecuteReader方法返回的对象。它是每个结果集中的行上的只进游标。使用DataReader,可以访问结果集的每一列、读取结果集中的所有行,以及前进到下一个结果集(如果有多个结果集)。
DataAdapter是包含四个DbCommand对象的对象:SELECT、INSERT、DELETE和UPDATE命令各有一个。2它通过Fill和Update方法在这些命令和数据集之间起中介作用。

z2acfund

z2acfund7#

数据读取器是在连接环境中使用的对象。数据适配器是在使用数据集的断开连接环境中使用的对象。

相关问题