温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

ADO.NET是什么

发布时间:2021-11-19 10:51:36 来源:亿速云 阅读:149 作者:小新 栏目:编程语言

小编给大家分享一下ADO.NET是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

什么是ADO.NET

ADO.NET是一组用于和数据源进行交互的面向对象类库。通常情况下,数据源是数据库,但它同样也能够是文本文件、Excel表格或者XML文件。

ADO.NET允许和不同类型的数据源以及数据库进行交互。然而并没有与此相关的一系列类来完成这样的工作。因为不同的数据源采用不同的协议,所以对于不同的数据源必须采用相应的协议。一些老式的数据源使用ODBC协议,许多新的数据源使用OleDb协议,并且现在还不断出现更多的数据源,这些数据源都可以通过.NET的ADO.NET类库来进行连接。

ADO.NET提供与数据源进行交互的相关的公共方法,但是对于不同的数据源采用一组不同的类库。这些类库称为Data Providers,并且通常是以与之交互的协议和数据源的类型来命名的。表1列处了一些常见的data providers,以及它们所使用的API前缀,和允许进行交互的数据源类型。

什么是ADO.NET:ADO.NET包含的对象

SqlConnection 对象

和数据库交互,你必须连接它。连接帮助指明数据库服务器、数据库名字、用户名、密码,和连接数据库所需要的其它参数。connection对象会被command对象使用,这样就能够知道是在哪个数据库上面执行命令。
与数据库交互的过程意味着你必须指明想要发生的操作。这是依靠command对象执行的。你使用command对象来发送SQL语句给数据库。command对象使用connection对象来指出与哪个数据库进行连接。你能够单独使用command对象来直接执行命令,或者将一个command对象的引用传递给SqlDataAdapter,它保存了一组能够操作下面描述的一组数据的命令。

sqlDataReader对象

许多数据操作要求你只是读取一串数据。data reader对象允许你获得从command对象的SELECT语句得到的结果。考虑性能的因素,从data reader返回的数据都是快速的且只是“向前”的数据流。这意味着你只能按照一定的顺序从数据流中取出数据。这对于速度来说是有好处的,但是如果你需要操作数据,更好的办法是使用DataSet。

DataSet对象

DataSet对象是数据在内存中的表示形式。它包括多个DataTable对象,而DataTable包含列和行,就象一个普通的数据库中的表。你甚至能够定义表之间的关系来创建主从关系(parent-child relationships)。DataSet是在特定的场景下使用――帮助管理内存中的数据并支持对数据的断开操作的。DataSet是被所有Data Providers使用的对象,因此它并不像Data Provider一样需要特别的前缀。

SqlDataAdapter对象

某些时候你使用的数据主要是只读的,并且你很少需要将其改变至底层的数据源。同样一些情况要求在内存中缓存数据,以此来减少并不改变的数据被数据库调用的次数。Data adapter通过断开模型来帮助你方便的完成对以上情况的处理。当在一单批次的对数据库的读写操作的持续的改变返回至数据库的时候,Data adapter 填充(fill)DataSet对象。data adapter包含对连接对象以及当对数据库进行读取或者写入的时候自动的打开或者关闭连接的引用。另外,data adapter包含对数据的SELECT,INSERT,UPDATE和DELETE操作的command对象引用。你将为DataSet中的每一个table都定义data adapter,它将为你照顾所有与数据库的连接。所有你将做的工作是告诉data adapter什么时候装载或者写入到数据库。

总结:ADO.NET是与数据源交互的.NET技术。有许多的Data Providers,它将允许与不同的数据源交流――取决于它们所使用的协议或者数据库。然而无论使用什么样的Data Provider,你将使用相似的对象与数据源进行交互。SqlConnection对象管理与数据源的连接。SqlCommand对象允许你与数据源交流并发送命令给它。为了对进行快速的只“向前”地读取数据,使用SqlDataReader。如果想使用断开数据,使用DataSet并实现能进行读取或者写入数据源的SqlDataAdapter。

以上是“ADO.NET是什么”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI