有人能给我解释一下ADO.NET中面向连接的访问和无连接访问之间的一些主要区别吗?它们是为了什么应用程序而被索引的?谢谢
发布于 2015-06-30 23:13:49
面向连接的模型利用了特定于平台的“数据提供者”,如OLEDB (命名空间:System.Data.Oledb)、Microsoft SQL Server (命名空间:System.Data.SqlClient)、ODBC (命名空间:System.Data.Odbc)等。
当您使用这些数据提供程序时,您的应用程序程序集和数据库使用这些数据提供程序紧密耦合(这意味着每次都是连接的)。
而在断开连接模型中,我们将DataSet、DataAdapter等理解为dataset作为缓冲区,将DataAdaptor理解为连接数据库和此数据集的桥梁。
一旦您创建了DataAdapter(ad)和DataSet(ds)的对象并编写了ad.Fill(ds),这个dataset就会获得它的缓冲区(所有表等)。现在与数据库的连接自动中断。所有未来的查询都会在这个缓冲区(数据集)上执行,然后自动更新数据库。总而言之,您的数据库仅使用两次:
当dataset获取其缓冲区时为
发布于 2015-10-08 14:58:24
面向连接意味着:连接存在,抛出你的进程。示例:在Ado.Net中使用DataReader,您可以获得面向连接的数据库连接类型的数据。连接减少意味着:你的连接不可用,丢弃你的整个过程。示例:在Ado.Net中使用DataAdapter,您可以以无连接的数据库连接类型获取数据。
发布于 2016-12-07 03:50:08
在客户机-服务器模型中,每个客户机在启动时创建自己的数据库连接(con.open),并在程序关闭时释放(con.close)它。尽管该连接只使用了一小部分时间,但客户端将其保持打开。在此过程中使用数据读取器。在连接的数据访问示例中,数据是只读的-电话呼叫-我们连接呼叫并断开呼叫注意-服务器必须为每个客户端维护单独的实时连接。
对于断开连接的数据访问(连接较少),数据适配器在内部管理连接以从数据库中提取数据,一旦它提取进来就会自动关闭。因此,我们不会单独(手动)编写任何con.open或con.close步骤。数据适配器用于此过程。示例-可以对电子邮件数据进行操作,如插入、更新。
https://stackoverflow.com/questions/24207405
复制相似问题