ADO.NET从概念上来说是指定义一种与数据源进行交互的面向对象类库。类库即类的集合,也就是说ADO.NET主要是提供一了一些实现与数据源进行交互的一些类和接口。

其实就我个人看来,我觉得ADO.NET更多的是定义了一套访问数据源的接口。接口的作用主要是用于指定规范,让别人去实现,自己本身并不去实现。在做机房收费系统项目的时候,我们用到的sqlconnection,sqlcommand 等只是针对SQL Sever实现接口的一些类。

ADO.NET中主要是包括以下几个对象:

下面讲解它们之间的相互关系:

1.Connection对象,是ADO.NET中最底层的对象,主要是程序和数据的连接桥梁。Connection对象有两个属性:ConnectionString,打开数据库连接字符串,和State,数据库连接状态,主要有Open和Close两种状态。

方法:open() 打开数据库连接  close()关闭数据库连接

注意:数据库是否连接是保证其他对象进行的前提

2.Command对象,主要是执行对数据进行添加,删除,修改,查询的Sql命令,也可以执行存储过程。但在执行存储过程的是,需要将Command属性设置为command.StoredProcedure.执行sql语句的时候,设置为CommandType.Text.

主要方法:ExcuteNonQuery():执行一个sql语句,返回受影响的行数,主要是用于添加,删除,修改操作,不用于查询。                                                 ExcuteReader():执行一个sql语句,返回DataReader。

ExcuteScalar():检索单个值,主要用于统计操作。

3.DataReader对象:是一种读取行的只读方式,一般来说读取的是单条记录,一般来说性能比DataAdapter要高,但是DataAdapter返回的是多条记录,例如我们常用到的Dategridew控件绑定数据,就经常要用DataAdapter来返回一个Datatable。

4.DataAdapter对象:主要是利用Connection对象,执行Command的操作,从数据源中检索出来的数据,送往到Dataset中进行存储,主要是利用Fill()方法进行填充,Update()方法进行更新。

5.DataSet对象:包括DataTable和DataGridew对象,主要是负责管理存储在内存中的数据以及断开操作。

6.DataTable对象,是DataSet中的虚拟表,包括数据行和数据列。从数据行中可以得到指定的一条记录,从数据列中可以定义数据类型,大小,以及设置是否为空,是否为主键,是否只读等属性。

ADO.NET改进版是上一篇博客《ADO.NET理论+实践》的一个版本,主要是上一篇博客,总结的过于形式化,而没有把对它的总结与自己结合起来,所以对它进行改进。

ADO.NET改进版的更多相关文章

  1. ADO.NET数据访问技术

    ADO.NET数据访问技术 就是将C#和MSSQLl连接起来的纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中,也可以将数据库中的数据提取到内存中供程序调用.是所有数据访问技术的基础. A ...

  2. ADO.NET 快速入门(一):ADO.NET 概述

    ADO.NET 概述 ADO.NET是改进的ADO数据访问模型用于开发可扩展应用程序.他是专门为可伸缩性.无状态和XML核心的web而设计的.   ADO.NET使用一些ADO对象,如Connecti ...

  3. ADO.NET对象的详解

    1. Connection 类 和数据库交互,必须连接它.连接帮助指明数据库服务器.数据库名字.用户名.密码,和连接数据库所需要的其它参数.Connection对象会被Command对象使用,这样就能 ...

  4. WebForm获取GET或者POST参数到实体的转换,ADO.NET数据集自动转换实体

    最近在修改维护以前的webform项目(维护别人开发的.....)整个aspx没有用到任何的控件,这个我也比较喜欢不用控件所以在提交信息的时候需要自己手动的去Request.QueryString[] ...

  5. ADO.NET编程之美----数据访问方式(面向连接与面向无连接)

    最近,在学习ADO.NET时,其中提到了数据访问方式:面向连接与面向无连接.于是,百度了一下,发现并没有很好的资料,然而,在学校图书馆中发现一本好书(<ASP.NET MVC5 网站开发之美&g ...

  6. ADO.NET一小记-select top 参数问题

    异常处理汇总-后端系列 http://www.cnblogs.com/dunitian/p/4523006.html 最近使用ADO.NET的时候,发现select top @count xxxx 不 ...

  7. .NET基础拾遗(6)ADO.NET与数据库开发基础

    Index : (1)类型语法.内存管理和垃圾回收基础 (2)面向对象的实现和异常的处理 (3)字符串.集合与流 (4)委托.事件.反射与特性 (5)多线程开发基础 (6)ADO.NET与数据库开发基 ...

  8. 升讯威ADO.NET增强组件(源码):送给喜欢原生ADO.NET的你

    目前我们所接触到的许多项目开发,大多数都应用了 ORM 技术来实现与数据库的交互,ORM 虽然有诸多好处,但是在实际工作中,特别是在大型项目开发中,容易发现 ORM 存在一些缺点,在复杂场景下,反而容 ...

  9. ADO.NET Entity Framework 在哪些场景下使用?

    在知乎回答了下,顺手转回来. Enity Framework已经是.NET下最主要的ORM了.而ORM从一个Mapping的概念开始,到现在已经得到了一定的升华,特别是EF等对ORM框架面向对象能力的 ...

随机推荐

  1. Change the ball(找规律)

    Change the ball Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)T ...

  2. 蚂蚁的难题(二)首尾相连数组的最大子数组和(DP)

    蚂蚁的难题(二) 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述 下雨了,下雨了,蚂蚁搬家了. 已知有n种食材需要搬走,这些食材从1到n依次排成了一个圈.小蚂蚁对每种食材 ...

  3. C#主要字典集合性能对比[转]

    A post I made a couple days ago about the side-effect of concurrency (the concurrent collections in ...

  4. .Net插件编程模型:MEF和MAF[转载]

    .Net插件编程模型:MEF和MAF MEF和MAF都是C#下的插件编程框架,我们通过它们只需简单的配置下源代码就能轻松的实现插件编程概念,设计出可扩展的程序.这真是件美妙的事情! 今天抽了一点时间, ...

  5. 如何对应用服务性能问题诊断(Tomcat、Weblogic中间件)

    在我们web项目中,我们常见的web应用服务器有Tomcat.Weblogic.WebSphere.它们是互联网应用系统的基础架构软件,也叫“中间件”,负责处理动态在页面请求,并为应用提供了名字.事务 ...

  6. web推送

    WEB消息推送框架 web-msg-sender是一款web长连接推送框架,采用PHPSocket.IO开发,基于WebSocket长连接通讯,如果浏览器不支持WebSocket则自动转用comet推 ...

  7. Sublime Text 添加到右键菜单 带菜单图标

    1.打开 regedit 2.找到节点 HKEY_CLASSSES_ROOT -> * -> Shell 3.右键选择新建“ 项 ” 这个项的名字将作为右键菜单的菜单名称,我用的“ Sub ...

  8. android——字体颜色跟随状态改变

    TextView的字体颜色也可以和ImageView的background一样,跟随状态发生改变.只需要自定义一下字体颜色.在color文件夹下面,新建一个颜色文件的xml. OK ,这就完成 了. ...

  9. CSS学习笔记——盒模型,块级元素和行内元素的区别和特性

    今天本来打算根据自己的计划进行前端自动化的学习的,无奈早上接到一个任务需求需要新增一个页面.自从因为工作需要转前端之后,自己的主要注意力几 乎都放在JavaScript上面了,对CSS和HTML这方面 ...

  10. SQLServer服务器数据库之间的数据操作(完整版)

    分类: 数据库开发技术 ---------------------------------------------------------------------------------- -- Au ...