【VB.NET机房重构】ADO.NET

2024-08-26 02:32
文章标签 重构 net vb 机房 ado

本文主要是介绍【VB.NET机房重构】ADO.NET,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

       ADO.NET的名称起源于ADO(ActiveX Data Objects),是一个COM组件库,用于在以往的Microsoft技术中访问数据库。之所以使用ADO.NET名称,是因为Microsoft希望表明,这是在NET变成环境中优先使用的数据访问接口。作为.NET框架重要的组件之一,ADO.NET扮演着应用程序与数据交互的重要的角色。下面就来了解一下 ADO.NET。

一、什么是 ADO.NET

       ADO.NET可让开发人员以一致的方式存取资料来源,以及透过OLE DB和ODBC所公开的资料来源。资料公用的消费者应用程序可使用ADO.NET来连接至 这些资料来源,并且撷取、处理及更细其中所含的资料。

        ADO.NET类封装在System.Data.dll中,并且与System.Xml.dll中的XML类集成。所以当编译使用System.Data命名空间的代码时,需要引用System.Data.dll和System.Xml.dll。

      简单来说,ADO.NET就是一种与数据源交互的.NET技术。

二、什么是ADO

       ADO(AxtiveX Data Objects)是一种表示用户数据库中的数据结构和所包含的数据的程序对象。在Microsoft Visual Basic编辑器中,可以使用ADO对象以及ADO的附加组件来创建或修改表和查询、检验数据库、或者访问外部数据源。还可以在代码中使用ADO来操作数据库中的数据。

       微软介绍说,与其同IBM和Oracle提倡的那样,创建一个统一数据库,不如提供一个能够访问不同数据库的统一接口,这样会更加实用一些。所以ADO说白了就是一种面向对象的编程接口。

三、ADO   vs    ADO.NET

1、相同之处

      ①易于编程②与语言无关③实现过程简单④实用最小网络流量⑤应用程序前段和数据源之间需要的层数很少

2、ADO以Recordset存储,而ADO.NET以DataSet表示。

       Recordset是一个记录集,类似于单个的表,如果需要多张表进行操作,则需要在SQL中进行多表连接。DataSet类似于多个表的集合,是一个数据集。

3、运用范围

       ADO的数据模型以数据库为中心。ADO.NET则集合了所有允许数据处理的类。这些类表示具有典型数据库功能的数据容器对象。

4、XML的使用

       在ADO中,XML只不过是输入和输出格式。在ADO.NET 中,XML是一种数据格式,提供了操作、组织、共享和传递数据的手段,因此任何能够读取XML格式的应用程序都可以进行数据处理。

5、数据源访问

       ADO是通过调用OLE DB提供程序与数据库通信,而ADO.NET是在在线的状态下将数据源中的数据读入数据集后,可以在不与数据源连接的状态下使用。

ADO和ADO.NET是两种截然不同的数据访问方式。

三、认识ADO.NET的6大对象

       分别为4个提供者对象(Connection、DataReader、Command、DataAdapter)、1个用户对象(DataSet)和1个核心对象(DataTable)

Connection:连接对象,提供与数据源的连接

Command:命令对象,指示要执行的命令和存储过程,能够访问用于返回数据、修改数据、运行存储过程以及发送或检索参数信息的数据库命令

DataReader:从数据源中提供快速的、只读的数据流

DataAdapter:功能强大的适配器,支持增删改查的功能,提供连接DataSet对象和数据源的桥梁

DataSet:一个数据级对象,相当于内存中的一张表或多张表

DataTable:一个临时保存数据的网格虚拟表

四、小结

        Connection对象会提供数据源的连接,Command对象可让开发人员存取数据源命令,以便传回数据、修改数据、执行预存程序,并且传送或撷取参数资讯。DataReader则可提供来自数据源的高效能数据流。最后,DataAdapter会提供DataSet对象与数据源之间的桥接器。DataAdapter会使用Command对象与数据源执行SQL命令,以便将数据载入DataSet,并且将DataSet内的资料变更调节会资料来源。


    

这篇关于【VB.NET机房重构】ADO.NET的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1107300

相关文章

poj 1258 Agri-Net(最小生成树模板代码)

感觉用这题来当模板更适合。 题意就是给你邻接矩阵求最小生成树啦。~ prim代码:效率很高。172k...0ms。 #include<stdio.h>#include<algorithm>using namespace std;const int MaxN = 101;const int INF = 0x3f3f3f3f;int g[MaxN][MaxN];int n

如何在Visual Studio中调试.NET源码

今天偶然在看别人代码时,发现在他的代码里使用了Any判断List<T>是否为空。 我一般的做法是先判断是否为null,再判断Count。 看了一下Count的源码如下: 1 [__DynamicallyInvokable]2 public int Count3 {4 [__DynamicallyInvokable]5 get

2、PF-Net点云补全

2、PF-Net 点云补全 PF-Net论文链接:PF-Net PF-Net (Point Fractal Network for 3D Point Cloud Completion)是一种专门为三维点云补全设计的深度学习模型。点云补全实际上和图片补全是一个逻辑,都是采用GAN模型的思想来进行补全,在图片补全中,将部分像素点删除并且标记,然后卷积特征提取预测、判别器判别,来训练模型,生成的像

用VB创建开始菜单快捷方式(无需其他DLL)

Option Explicit   Private Sub Command1_Click()   CreateProgManGroup Me, "测试", "test.grp"   CreateProgManItem Me, "d:\ghost.exe", "Ghost"   CreateProgManItem Me, "d:\setupQQ.exe", "QQ"   End

.NET 自定义过滤器 - ActionFilterAttribute

这个代码片段定义了一个自定义的 ASP.NET Core 过滤器(GuardModelStateAttribute),用于在控制器动作执行之前验证模型状态(ModelState)。如果模型状态无效,则构造一个 ProblemDetails 对象来描述错误,并返回一个 BadRequest 响应。 代码片段: /// <summary>/// 验证 ModelState 是否有效/// </

VB和51单片机串口通信讲解(只针对VB部分)

标记:该篇文章全部搬自如下网址:http://www.crystalradio.cn/thread-321839-1-1.html,谢谢啦            里面关于中文接收的部分,大家可以好好学习下,题主也在研究中................... Commport;设置或返回串口号。 SettingS:以字符串的形式设置或返回串口通信参数。 Portopen:设置或返回串口

VB项目中必需的几点技巧

1.    点击右上角的关闭按钮,要弹出“提示”,是否关闭,但用右键关闭时,不能重复提示 在vb中找到这个事件Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)If MsgBox("是否要退出", vbYesNo + vbDefaultButton2, "提示") = vbNo ThenCancel

Mybatis Plus快速重构真批量sql入库操作

Mybatis快速重构真批量sql入库操作 基本思路 重构mybatis默认方法saveBatch和saveOrUpdateBatch的实现 基本步骤 真批量保存实现类InsertBatchMethod真批量更新实现类MysqlInsertOrUpdateBath注册InsertBatchMethod和MysqlInsertOrUpdateBath到EasySqlInjector注册Eas

.Net Mvc-导出PDF-思路方案

效果图: 导语:     在我们做项目的过程中,经常会遇到一些服务性的需求,感到特别困扰,明明实用的价值不高,但是还是得实现;     因此小客在这里整理一下自己导出PDF的一些思路,供大家参考。     网上有很多导出PDF运用到的插件,大家也可以看看其他插件的使用,学习学习; 提要:     这里我使用的是-iTextSharp,供大家参考参考,借鉴方案,完善思路,补充自己,一起学习

.net MVC 导出Word--思路详解

序言:          一般在项目的开发过程中,总会接收到一个个需求,其中将数据转换成Work来下载,是一个很常见的需求;          那么,我们改如何处理这种需求,并输出实现呢?          在做的过程中,去思考 1、第一步:首先确认,Work的存在位置,并创建字符输出路:             //在的项目中创建一个存储work的文件夹             string