14-4 ADO.NET简介
微软数据访问方式历史阶段
①ODBC(Open Database Connectivity)是第一个使用SQL访问不同关系数据库的访问技术。使用ODBC应用程序能够通过单一的命令操作不同的数据库,而开发人员需要做的仅仅只是针对不同的应用加入相应的ODBC驱动。(只面向C/C++)
②DAO(Data Access Objects)不像ODBC那样是面向C/C++程序员的,它是微软提供给Visual Basic开发人员的一种简单的数据访问方法,用于操纵Access数据库。
③RDO(Remote Data Objects):在使用DAO访问不同的关系数据库的时候,Jet引擎不得不在DAO和ODBC之间进行命令的转化,导致了性能的下降,而RDO的出现就顺理成章了。
④OLE DB(Object Link and embed):随着越来越多的数据以非关系型格式存储,需要一种新的架构来提供这种应用和数据源之间的无缝连接,基于COM(Component Object Model)的OLE DB应运而生了。
⑤ADO:基于OLE DB之上的ADO更简单、更高级、更适合C#程序员,同时消除了OLE DB的多种弊端,取而代之是微软技术发展的趋势。
ADO.NET简介
1.ADO.NET的名称起源于ADO(ActiveX Data Objects),是一个COM组件库,也就是一个通用框架类库,该类库将跨越所有存在的WindowsAPI函数。简单来说,它是在.NET编程环境中使用的数据访问接口。
2.ADO.NET是与C#和.NET Framework一起使用的类集的名称,用于以关系型的、面向表的格式访问数据。
3.AOD.NET被集成到.NET Framework中,可用于任何.NET语言,尤其是C#。
ADO.NET对象模型构成
ADO.NET技术中的五大对象
1.Connection ---连接
2.Command ---命令
3.DataReader ---数据阅读器
4.DataAdapter ---数据适配器
5.DataSet ---数据集
ADO.NET有两部分构成:
(1)数据提供程序(Provider):它能和数据库保持链接并且执行SQL命令,操纵数据集。
(2)数据集(DataSet):能与数据库在断开链接的情况下进行数据库操作。
1.数据库比作水源,存储了大量的水(数据);
2.Connection好比伸入水中的进水龙头,保持与水的接触,只有它与水进行“连接”,其他对象才可以抽到水
3.Command则像抽水机,为抽水提供动力和执行方法,通过“水龙头”,然后把水返给上面的“水管”。
4.DataAdapter、DataReader就像输水管,担任着水的传输任务,并起着桥梁的作用。
5.DataAdapter就像一根输水管,通过发动机,把水从水源输送到水库里进行保存。
6.DataReader也是一种水管,起着同样的作用。
7.和DataAdapter不同的是,DataReader不把水输送到水库里面,而是单向地直接把水送到需要水的用户那里或田地里,所以要比在水库中转一下(速度)更快。
8.DataSet则是一个大水库,把抽上来的水按一定关系的池子进行存放。即使撤掉“抽水装置”(断开连接,离线状态),也可以保持“水”的存在。这也正是ADO.NET的核心。
9.DataTable则像水库中的每个独立的水池子,分别存放不同种类的水。一个大水库由一个或多个这样的水池子组成。
14-4 ADO.NET简介的更多相关文章
- ADO接口简介
源地址:http://blog.csdn.net/xiaobai1593/article/details/7449151 参考: 1. 百度文库:http://wenku.baidu.com/view ...
- ADO.NET简介
一.ADO.NET ADO.NET源起ADO(ActiveX Data Objects),是一个COM组件库,在NET编程环境中优先使用的数据访问接口, 提供对诸如 SQL Server 和 XML ...
- Go 1.14 中 Cleanup 方法简介
目录 一般的测试 使用 defer 清除依赖 使用 Cleanup 关于t.Parallel 总结 原文:What's New In Go 1.14: Test Cleanup 单元测试通常遵循某些步 ...
- 14、BigInteger类简介
BigInteger类概述 BigInteger类可以让超过Integer范围的数据进行运算,通常在对数字计算比较大的行业中应用的多一些. package com.sutaoyu.usually_cl ...
- 14-4 ADO.NET简介2
14-4-1Connection连接.关闭数据库 1.为了访问数据库,就要提供数据库连接类,在C#中,是通过Connection类来实现的.它有 四种类型的连接方式: SQLConnection AD ...
- VC++ ADO相关
<VC对ADO的操作> ADO概述: ADO是Microsoft为最新和最强大的数据访问范例 OLE DB 而设计的,是一个便于使用的应用程序层接口. ADO 使您能够编写应用程序以通过 ...
- dicom通讯的工作方式及dicom标准简介
本文主要讲述dicom标准及dicom通讯的工作方式.dicom全称医学数字图像与通讯 其实嘛就两个方面 那就是“存储”跟“通讯”. 文件数据组织方式 网络数据组织方式.文件数据组织方式就是解析静态 ...
- linux 学习 14 日志管理
第十四讲 日志管理 14.1 日志管理-简介 .日志服务 在CentOS .x中日志服务已经由rsyslogd取代了原先的syslogd服务.rsyslogd日志服务更加先进,功能更多.但是不论该服 ...
- ADO.NET操作数据库(一)
---恢复内容开始--- [1]ADO.Net简介2015-12-07-20:16:05 ADO.Net提供对Microsoft SQL Server数据源以及通过OLE DB和XML公开的数据源的一 ...
随机推荐
- kafka 创建消费者报错
kafka-console-consumer.sh --zookeeper master:2181,slave1:2181,slave2:2181 --topic test --from-beginn ...
- @Aspect注解并不属于@Component的一种
也就是一个类单纯如果只添加了@Aspect注解,那么它并不能被context:component-scan标签扫描到. 想要被扫描到的话,需要追加一个@Component注解
- 【POJ1321】棋盘问题
本题传动门 本题知识点:深度优先搜索 + 枚举 + 回溯 题意是要求我们把棋子放在棋盘的'#'上,但不能把两枚棋子放在同一列或者同一行上,问摆好这k枚棋子有多少种情况. 我们可以一行一行地找,当在某一 ...
- 使用深度学习的超分辨率介绍 An Introduction to Super Resolution using Deep Learning
使用深度学习的超分辨率介绍 关于使用深度学习进行超分辨率的各种组件,损失函数和度量的详细讨论. 介绍 超分辨率是从给定的低分辨率(LR)图像恢复高分辨率(HR)图像的过程.由于较小的空间分辨率(即尺寸 ...
- SVM 输出分类概率(python)
import numpy as np from sklearn import svm X = np.array([[-1, -1], [-2, -1], [1, 1], [2, 1]]) y = np ...
- AdaptIS: Adaptive Instance Selection Network
AdaptIS: Adaptive Instance Selection Network 2019-09-19 12:58:07 Paper: https://arxiv.org/pdf/1909.0 ...
- redis 服务器开放给其他电脑连接
1.云服务器的端口6379开通 2.宝塔服务器上的6379开通 3.修改服务器上的redis配置文件: # bind 127.0.0.1 注释掉daemonize no 改为noprotected-m ...
- node 部署教程二
转:https://www.cnblogs.com/yesyes/p/7168449.html 这篇文章主要介绍如何在服务端跑vuejs的项目,如果上一篇教程你成功输出了hello world,那这一 ...
- JBoss服务器的安装和使用(关联到IDEA)
1. 下载安装jboss服务器 wildfly-16.0.0.Final.zip(更名为wildfly了,选择合适的版本) 2. 解压,配置环境变量. JBOSS_HOME=D:\Program Fi ...
- javascript数组遍历的几种常用方法性能分析对比
前言: 数组遍历有很多种方法,虽然不同方法有不同的特性及适用环境,除了普通飞for循环之外,for...in能直接输出数组元素的索引,for...of能直接输出数组元素的值,map则可以直接生成新的数 ...