在介绍ADO.Net之前先让我们回想一下在红皮书中学习的ADO的内容。

ADO(ActiveX Data Objects)。我们称它为一种用于数据訪问的对象模型,《VB.Net》视频中称它为用于存取资料库的物件集合

资料库就是数据。物件即对象。这样看来两种说法全然一样。提起ADO。我们仅仅要问自己两个问题:

  • 它是什么?  ——对象的集合
  • 干什么用的?——訪问数据

这样我们对ADO就了解个八九不离十。

我们再来看看ADO所处的地位:

ADO.Net同之前我们学的ADO一样。它和ADO有着同样的本质和地位。管理支持程序,大家听起来有些陌生。可是OLE DB大家都十分熟悉。它就是一种管理支持程序。

它为我们提供了源数据库的接口。什么意思呢?我们能够用它来訪问读写数据库中的数据,可是怎么去訪问。怎么读写。详细的细节我们不知道,仅仅有OLE DB自己知道,它都把这些细节封装起来了。

有了上述的基本知识。我们再来细细说一下ADO和ADO.Net。

通过比較上述的两个表。我们发现了几个易混淆的概念。比較例如以下:

总结:

通过比較。我们能够看出在ADO与ADO.Net的比拼中。ADO.Net更灵活,更强大。尤其是DataSet能够与数据库全然断开,离线处理数据,降低server端对数据库的负载。并且DataSet能够存放多个记录和关系,而Recordset仅仅能存一个表,假设想让两个有关系的表。形成一个新的表。我们仅仅能在数据库中操作,假设在程序中操作Recordset对象来实现。则会十分麻烦,并且效果不佳。

初学ADO.Net时,我们能够简单地把DataSet觉得Recordset,以便于我们的理解,之后再进一步学习,能够让我们更好地去理解DataSet。

ADO与ADO.Net的更多相关文章

  1. ADO与ADO.NET的区别与介绍

    1. ADO与ADO.NET简介ADO与ADO.NET既有相似也有区别,他们都能够编写对数据库服务器中的数据进行访问和操作的应用程序,并且易于使用.高速度.低内存支出和占用磁盘空间较少,支持用于建立基 ...

  2. ADO和ADO.NET的区别

    1. ADO与ADO.NET简介 ADO与ADO.NET既有相似也有区别,他们都能够编写对数据库服务器中的数据进行访问和操作的应用程序,并且易于使用.高速度.低内存支出和占用磁盘空间较少,支持用于建立 ...

  3. ADO和ADO.NET有什么不同?

    1.一些ADO中常见的类型比如RecordSet在ADO.NET中已经没有了,而且在ADO.NET中也新增了许多在传统ADO中找不到的直接对应的新类型(如数据适配器): 2.传统的ADO主要针对紧密连 ...

  4. [转帖]ODBC、OLEDB、ADO、ADO.NET

    一文详解ODBC.OLEDB.ADO.ADO.NET之间的关系 2019年01月16日 21:28:38 LoveMIss-Y 阅读数:66更多 所属专栏: 白话C#高级编程   版权声明:本文为博主 ...

  5. 第19课-数据库开发及ado.net ADO.NET--SQLDataReader使用.SqlProFiler演示.ADoNET连接池,参数化查询.SQLHelper .通过App.Config文件获得连接字符串

    第19课-数据库开发及ado.net ADO.NET--SQLDataReader使用.SqlProFiler演示.ADoNET连接池,参数化查询.SQLHelper .通过App.Config文件获 ...

  6. asp、asp.net、ado、ado.net各自区别和联系?

    asp.net与ado.net 的区别? asp.net是微软公司的.Net技术框架下的B/S(网页方向)框架技术.ado.net则是由asp.net编程语言编写的数据访问层的总括..说白了就是:as ...

  7. ADO.NET (二)—— ADO和ADO .NET对照

     ADO.NET (二)-- ADO和ADO .NET对照       我们知道ADO.NET的两大核心组件各自是Data Provider和DataSet.假设说 DataSet是ADO.NET的心 ...

  8. ADO与ADO.NET的区别

    ADO是使用ole db接口并基于微软的COM技术,ADO.NET使用自己的ADO.NET接口并基于微软的.NET体系架构,所以ADO.NET与ADO是两种数据访问方式. ADO以recordset存 ...

  9. ADO.NET--收藏整理别人的教程

    本文所有内容均从前辈的博客中收集整理而来,仅供自己学习参考的时候快速访问用. ADO.NET入门教程(一) 初识ADO.NET ADO.NET入门教程(二)了解.NET数据提供程序 ADO.NET入门 ...

随机推荐

  1. [转] 实时监听input输入的变化(兼容主流浏览器)

    遇到如此需求,首先想到的是change事件,但用过change的都知道只有在input失去焦点时才会触发,并不能满足实时监测的需求,比如监测用户输入字符数. 在经过查阅一番资料后,欣慰的发现firef ...

  2. Vue开源

    Vue开源 - 为移动而生的Vue JS 2组件框架 vonic ★1494 - 快速构建移动端单页应用 eme ★1390 - 优雅的Markdown编辑器 vue-multiselect ★116 ...

  3. 【LOJ】#2494. 「AHOI / HNOI2018」寻宝游戏

    题面 题解 第\(i\)个数之前的符号是或那么记为0,是与就记为1,得到一个二进数x 然后按位分开考虑,如果这一行是1那么记为1,如果这一位数位0记为0,得到一个二进制数\(b_i\) 第\(N\)行 ...

  4. 【笔试题】在 Java 中,如何跳出当前的多重嵌套循环?

    笔试题 在 Java 中,如何跳出当前的多重嵌套循环? public class Demo { public static void main(String[] args) { System.out. ...

  5. 【LeetCode】65. Valid Number

    Difficulty: Hard  More:[目录]LeetCode Java实现 Description Validate if a given string can be interpreted ...

  6. PowerShell 中使用 mvn 编译报错 Unknown lifecycle phase ".test.skip=true". 解决办法

    nknown lifecycle phase “–Dmaven.test.skip=true”. You must specify a valid lifecycle phase or a goal ...

  7. SSIS组件——Merge、Merge Join、Union All

  8. 004.Autofs自动挂载

    一 安装autofs [root@imxhy data]# yum -y install autofs 二 编辑自动挂载相关配置 2.1 修改master [root@imxhy ~]# vi /et ...

  9. 慎重使用volatile关键字

    volatile关键字相信了解Java多线程的读者都很清楚它的作用.volatile关键字用于声明简单类型变量,如int.float.boolean等数据类型.如果这些简单数据类型声明为volatil ...

  10. python语法(三)— 循环

    上一篇,学习了python的判断语句,了解了python中如何直线分支语句,本文来学习循环语句.python中有两种循环while循环和for循环,当我们不知道循环次数时使用while循环,让我们知道 ...