ADO.NET的一点总结

Ado/Ado.net与Asp/Asp.net关系 前言 * Asp(Active Server Pages),动态服务页面; * Asp.Net (Active Server Pages基于.NET Framework),基于.net平台的动态服务页面,又称Asp+; * Ado (ActiveX Data Objects),ActiveX数据对象,用于表示用户数据库中的数据结构和所包含的数据 * Ado.Net(ActiveX Dat 阅读详情

ADO.NET提供了两个组件,用来访问和处理数据:.NET Framework数据提供程序和DataSet(数据集)。这里叙述ADO.NET对SQL Server数据库的访问。

l .NET Framework数据提供程序
SqlConnection
SqlConnection对象用来建立与SQL Server数据库的连接。常用的属性和方法有:
ConnectionString:获取和设置应用程序连接数据库的连接字符串。
一般数据库连接字符串的格式为:
Data Source=服务器名;Initial Catalog=数据库名;User ID = 用户名;Pwd=密码
或
Data Source=服务器名;Initial Catalog=数据库名;Integrated Security=True;
还可以利用SqlConnectionBuilder对象来生成连接字符串
Open():使用指定的设置打开数据库连接
Close():关闭与数据库的连接
CreateCommand():创建并返回一个与此连接关联的数据库命令对象。
为了减少资源的损耗,一般用完连接后应该立刻将其关闭。常用的关闭方法有两种:
1.try-catch-finally
try
{
//打开连接,并做各种数据操作。
}
catch(Exception)
{
//异常处理
}
finally
{
//关闭连接
}
2.using 语句
using(SqlConnection conn = new SqlConnection(连接字符串))
{
//打开连接,做各种数据的操作
}
using 语句会确保即使发生了异常,也会将conn释放
SqlCommand
SqlCommand对象表示要对 SQL Server 数据库执行的一个 Transact-SQL 语句或存储过程。常用的属性和方法有:
Connection:获取和设置Command对象使用的数据库连接。
CommandText:要执行的SQL语句。
//一般这两个属性可以由SqlCommand的构造方法设置。
ExecuteScalar:执行查询,并返回查询所得结果集的第1行第1列的数据
ExecuteNonQuery:执行,SQL语句并返回受影响的行数。
该方法一般应用在不需要返回结果的insert update delete等操作
ExecuteReader:根据查询的结果返回一个DataReader对象。
一般使用此方法时,可以添加一个参数CommandBehavior.CloseConnection,表示关闭DataReader对象时自动关闭与之关联的SqlConnection
SqlDataReader
SqlDataReader对象提供一种从 SQL Server 数据库读取行的只进流的方式。
当使用SqlCommand对象的ExecuteReader方法得到此类的实例后,就可以利用它来完成对结果集的读取。
在读取数据前,先调用Read()方法将SqlDataReader前进到下一条记录。该方法返回一个bool值表示下一条记录是否有值。
HasRows:表示查询是否有结果
FieldCount:表示当前行中的列数
Item[string]:此索引器返回当前记录指定列的值(Object类型)
Item[int]:此索引返回当前记录指定索引处的值(Object,索引从0开始)
替代上面两种方法的更好的方法是使用
GetXXX(int)一系列的方法,XXX是一种数据类型的名称,参数是列的索引(从0开始),
此方法放回XXX数据类型的值,而无需像使用上面两个索引器一样对Object类型进行强转
如果结果集中有很多条记录,一般会如下使用:
//得到SqlDataReader对象reader
while(reader.Read())
{
……
XXX x = reader.GetXXX(n);
//对得到的数据x进行处理
……
}
Close():与SqlConnection类似地,使用此方法关闭资源。
SqlDataAdapter
SqlDataAdapter对象利用提供的连接和查询语句填充一个DataTable,比如下面的代码:
SqlDataReaderAdapter da = new SqlDataAdapter(查询语句,连接对象);
da.Fill(DataTable对象);
将查询的结果自动保存在DataTable对象中。

l DataSet数据集
DataSet可以简单地理解为内存中的数据库,一般使用的属性有:
Tables
获取此数据集中的DataTable(表)的集合
另外,可以使用SqlDataAdapter的Update方法将此数据集中的更改同步到数据库
DataTable
Rows
获取此数据表的DataRow(行)的集合
Columns
获取此数据表的DataRow(列)的集合
Constraints
获取此数据表的Constraint(约束)的集合
DataRow
表示一条记录,一个行有各种不同的Version,当对行做了各种增删改等操作后,不同的Version会对应不同的值。
比如:Current:表示列中目前存在的值;Default:默认值;Original:表示最初从数据库取出来的值
DataRow有各种不同的索引器,一般提供指定的列信息和Version信息可以取出此行中对应列的值。
Item[String(,DataRowVersion)]:根据列名取出对应的值。
Item[int (,DataRowVersion)]:根据列的索引取出对应的值。
Item[DataColumn(,DataRowVersion)]根据DataColumn(列)取出对应的值。
DataColumn
用来描述一个列,以此规定DataTable 的架构,各种描述性的属性:
AllowDBNull:对应数据库中not null约束
AutoIncrement:是否设置标识列
AutoIncrementSeed:标识列的种子
AutoIncrementStep:标识列增量
DataType:定义此列的System.Type值,描述对应的数据类型
DefaultValue:对应数据库中的default约束

ADO.NET 技术 ADO.NET 技术 前言:    作为.NET框架最重要的组件之一,ADO.NET扮演着应用程序与数据交互的重要的角 色。本文将从宏观的角度来探讨ADO.NET,和大家一起了解ADO.NET来龙去脉以及ADO.NET 的主要组成部分。 一、ADO.NET是什么?   简单的说,ADO.NET是一组允许.NET开发人员使用 阅读详情

相关推荐

DAO 、ADO和ADO.NET

1.什么是DAO(Data Access Objects) DAO数据访问对象是一种应用程序编程接口(API),存在于微软的Visual Basic中,它允许开发者通过ODBC(Open Database Connectivity,是微软提出数据库访问接口标准)连接到Access数据库,对其进行访问。 2.什么是ADO(ActiveX Data Objects) ADO是一项微软的技术,是A

shadowyelling的专栏 1654

对ASP.net和ADO.net区别的一点点理解

ADO.net在百度百科上是这么解释的:    ADO.NET的名称起源于ADO(ActiveX Data Objects),是一个COM组件库,用于在以往的Microsoft技术中访问数据。之所以使用ADO.NET名称,是因为Microsoft希望表明,这是在NET编程环境中优先使用的数据访问接口。    ado.net可让开发人员以一致的方式存取资料来源(例如 SQL Server 与 XML...

放飞理想的pig小猪 6955

Zemax API 与 Python 的独立应用程序

Zemax 提供了多个 python 示例代码,位于 Documents\Zemax\ZOS-API Sample Code\Python。使用以下代码,它们保存在 ZOS 文件目录中:/Documents\Zemax\Samples\API\Python。此代码块定位已安装的 OpticStudio 版本,确定根目录,创建命名空间和类,加载局部变量。如果定义的镜头需要一些特殊的编辑,例如反转,一种快速方法是从位于编程选项卡的 ZOS-API 语法帮助中找到相应的命令。重新运行整个代码块,镜头方向会改变。

jkh920184196的博客 1977

ADO与ADO.NET的一点比较

 ADO与ADO.NET的比较:-------------------------------------------------------------------------------------------项目                ADO                              ADO.NET-------------------------------

xwdd129的技术天空 962

双三相电机控制避坑指南:为什么你的SVPWM谐波大?四矢量调制实战解析

本文深入解析双三相电机控制中SVPWM谐波大的问题,并提供四矢量调制实战方案。通过分析谐波来源、四矢量调制原理及工程实现步骤,显著降低电流THD至3-5%,提升系统效率2.3个百分点。特别适合需要优化电机控制的工程师参考。

weixin_30645617的博客 397

AR1020触摸控制器驱动开发:嵌入式I²C/SPI底层集成指南

电容式触摸控制器是现代嵌入式人机交互(HMI)系统的核心感知单元,其工作原理基于寄生电容变化检测与数字信号处理。Microchip AR1020 作为典型单芯片方案,内置硬件滤波、多点跟踪与手势识别引擎,通过I²C或SPI接口输出结构化事件数据,显著降低主控MCU负载。该类器件的技术价值在于平衡精度、功耗与实时性,广泛应用于工业HMI、医疗设备及车载终端等对可靠性要求严苛的场景。本文聚焦AR1020的寄存器映射、中断驱动模型、坐标解析机制及在STM32平台的HAL/LL级工程实现,涵盖硬件时序约束、固件配置

weixin_29323977的博客 600

一点有趣的思考---来自ado.net学习过程

  计算机应用领域的很多原理其实想想挺有趣的。  比如现在我在看的ado.net资料,是关于以数据为中心的程序的设计的.其实通读ado.net资料的目的,不过是为了了解它到底能提供些什么功能,在什么样的应用场景下应该用哪些功能。而这个功能使用方案的选择,其实已经是应用程序的第一步设计工作。设计的原理就是这么简单。  我忽然有一个问题。ado.net是怎么产生的呢?为什么要提供这么多可选项?毫无疑问

bethz的专栏 766

实战解析:利用Wireshark解密QQ通信协议

本文提供了一份利用Wireshark工具分析QQ通信协议的实战指南。文章详细介绍了从环境准备、捕获数据包到解析协议层的完整流程,重点演示了如何识别QQ号码字段、观察加密数据特征以及区分不同通信类型(如文本、文件传输)。通过此实践,读者可以深入理解网络分层模型和现代应用加密通信机制,提升网络协议分析与安全诊断能力。

weixin_29210727的博客 408

关于ADO.NET的一点补充----不知道是不是你想要的

<!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--><script type="text/javascript"

zgqtxwd的专栏 230

基于STM32设计的盲人智能导盲杖

本设计基于STM32单片机,开发了一种面向视障人群的智能导盲杖系统。系统以STM32F103C8T6为核心控制器,集成了超声波测距、语音提示、环境光检测、GPS定位及4G通信等多种功能模块。

645

QT控件 参考Qt的PIMPL设计模式实现使用QWidget控件绘制3D饼状图表和3D柱状图表,使用QChartView绘制圆柱体图表

工作中之前遇到了绘制3D饼状图表的需求,通过Qt 实现3维饼状图 一文,成功迅速解决问题,现在闲下来了,之前看QtTreePropertyBrowser库的源代码,就想着学习学习Qt的PIMPL模式,于是就参照PIMPL模式实现通过QWidget控件的paintEvent函数重新绘制3D饼状图表和3D柱状图表统计数据的显示效果, 而使用QChartView绘制圆柱体图表完全是取巧了,为了紧急完成工作采用的方法,实际上使用3D柱状图表显示统计数据更加合理。

... 727

ADO.NET

ADO.NET是微软 . NET数据库的访问构建,主要提供一个面向对象的数据库访问构建,用来开发数据库应用程序。 ADO.NET主要包括; Connection:主要用来提供数据库的连接功能 Command 对象用于返回数据,修改数据,运行存储过程以及发送或检索参数信息的数据库命令。 DataReader对象通过 Command对象提供从数据库检索信息的功能,它以一种只读的,向前的,快速的,方...

weixin_42974146的博客 9928

SAP 集成泛微 OA Open API 新建流程申请接口

《SAP ERP 与泛微 OA 的系统集成》系列文章。泛微 Open API 是基于 HTTPS 的 Restful 接口,上篇文章,我已经完成了调用业务接口之前的准备工作,这篇文章我以新建流程申请这个系统集成最重要的接口为例,讲解接口设计、泛微 API 调用的过程、遇到的问题、解决的办法。

SAP李斌,本人承诺所有原创文章均不使用任何AI生成技术,请大家放心阅读。 3555

C# .NET ADO.NET介绍和如何使用

我们看一下visual studio 里面ADO.NET文件ADO.NET是实体数据模型,是ORM对象文件。ORM,即Object-Relational Mapping(对象关系映射)。ORM实际上是对业务的简化。就想面向过程到面向对象的转变一样。ORM也是同样的想法。就是数据库存储的表和我程序的对象完全一致。这样存入和取出也方便无映射关系fill:#333;程序对应关系转化数据库增删改查程序对应关系转化数据库有映射关系fill:#333;程序数据库增删改查程序数据库。

qq_44695769的博客 7228

读懂 SAP S/4HANA 里的 SAP Fiori 架构:前端服务器、搜索链路、传统应用接入与内容组织全景解析

摘要:SAP Fiori架构并非简单的系统连接图,而是明确区分界面层与业务数据层的三层分工体系:用户交互层(浏览器与Fiori launchpad)、前端技术层(SAPUI5运行环境)和业务数据层(SAP S/4HANA后端)。这种分离实现了生命周期解耦,前端专注于统一体验治理,后端处理核心业务逻辑。值得注意的是,SAP Fiori front-end server本质仍是ABAP系统,负责UI技术组件运行。虽然SAP S/4HANA推荐嵌入式部署,但独立部署在多系统场景中仍有价值。典型Fiori应用通过O

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 179

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

ADO与ADO.NET 的区别

前面也分别对ADO和ADO.NET进行概述,从前面的两篇文章来看,我们都知道ADO与ADO.NET 都是一种数据库访问的方式,都是从最基本的Connection(连接)对象开始的,可以说ADO.NET是ADO的一种改进版,在ADO的基础之上ADO.NET 统一了数据容器类编程接口,无论你打算用哪种编写哪种应用程序,都可以通过同一组类来处理数据 。 在ADO的基础上,ADO.NET做了很多的改进,以...

极客神殿 3578

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

ODBC、OLEDB、ADO、ADO.NET之间的关系

相信看到这篇文章的人,心中肯定有这样的想法:ODBC、OLEDB、ADO、ADO.NET貌似都是访问数据库的东东,那么他们之间有什么区别,又有什么联系呢?不要着急,待我慢慢道来。 先说ODBC,官方的定义是这样的,开放数据库互连(ODBC)是MICROSOFT提出的数据库访问接口标准。ODBC(Open DatabaseConnectivity,开放数据库互连)提供了一种标准的API(应

梦想起飞的地方,必须用心去经营 9845

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

为 ADO 程序员设计的 ADO.NET !

为 ADO 程序员设计的 ADO.NET 摘要:本文讨论如何以 ADO.NET 方式实现基本数据库操作,以及何时使用 ADO.NET 代替 ADO。 目录.NET 中的数据访问读取数据DataSet、DataTable 和 Recordset转换现有代码更新数据XML 扩展支持总结自若干年前推出开放式数据库连接 (ODBC) 应用程序编程接口 (API) 以来,出现了各种各样的

wujp1976的专栏 1592

再看ADO.NET

最近做了简单三层机房收费系统,对三层有了更加深刻的理解,不过问题也多了,希望以后会可以很好的理解.这篇博客,写通过机房收费系统中的对数据库的访问处理,对ADO.NET有了更进一步的理解,简单总结一下.           一,概念理解: ADO.NET的名称起源于ADO(ActiveX DataObjects),它是一个广泛的类组,用于在Microsoft中访问数据。他提供了平台互用

学会改变自己——才能突破 7172

ADO与ADO.net不同

引言      在我们进入.net平台以后,我们在做项目的时候就离不开ADO.net了,因为只要我们和数据库打交道,我们就必须利用它,然而我们在VB6.0的时代却一直和ADO做朋友,但是随者Web程序的兴起,我们的编程方式发生了重大的改变,然而传统的传统的数据库连线保存设计法无法适用于此类应用程序,这让ADO应用程序遇到了很大的瓶颈。所谓“时势造英雄”在此恰到的时机,ADO.net就应运而生了。

Jack 架构师之路 1327

ADO.NET简介

微软数据访问方式历史阶段 1,ODBC (Open Database Connectivity)是第一个使用SQL访问不同关系数据库的数据访问技术。使用ODBC应用程序能够通过单一的命令操纵不同的数据库,而开发人员需要租的仅仅只是针对不同的应用加入相应的OBDC驱动 2,DAO(Data Access Objects)不像OBDC那样是面向C/C++程序员的,他是微软提供给Vi

陈言必行 -- Unity游戏开发领域优质博主 4920

ADO.NET (二)—— ADO和ADO .NET对比

ADO.NET (二)—— ADO和ADO .NET对比    我们知道ADO.NET的两大核心组件分别是Data Provider和DataSet。如果说 DataSet是ADO.NET的心脏,那么Data Provider绝对是ADO.NET的左臂右膀。 Data Provider提供了访问外部数据数据源的可能性,而且外部的数据源是多样的。本

何新生(Daniel) 勇敢坚毅真正之才智乃刚毅之志向。 —— 拿破仑 1374

ADO和ADO.NET

 ADO对于用本机代码编写的应用程序,ADO 为 OLE db 数据提供程序提供基于 com 的应用程序级别接口。与 ADO.NET 相似,ADO 支持各种开发需要,包括使用与关系数据库和其他存储区中的数据的活连接来创建前端数据库客户端和中间层业务对象。而且,像 ADO.NET一样,ADO可构建客户端记录集、使用松耦合记录集、处理 OLE DB 的数据整形行集合。ADO还支持一些不通过 A

*OliverAi's Sky* 1085

ADO/ADO.NET

引用一、ADO 与ADO.NET两种数据访问方式区别? 1. ADO与ADO.NET简介    ADO与ADO.NET既有相似也有区别,他们都能够编写对数据库服务器中的数据进行访问和操作的应用程序,并且易于使用、高速度、低内存支出和占用磁盘 空间较少,支持用于建立基于客户端/服务器和 Web 的应用程序的主要功能。但是ADO使用OLE DB接口并基于微软的COM技术,而ADO.NET拥有自己的AD

windofthesky的专栏 1167

ADO.NET知识总结1---ADO.NET介绍

Ado.Net是 一种数据访问技术,使应用程序可以连接到数据库,并以各种方式来操作其中的数据。一个COM组件库,用于在.Net中访问数据,优先选择的数据访问接口。odbc oledb

white_papers的博客 853

ADO与ADO.NET的区别

 1. ADO与ADO.NET简介ADO与ADO.NET既有相似也有区别,他们都能够编写对数据库服务器中的数据进行访问和操作的应用程序,并且易于使用、高速度、低内存支出和占用磁盘空间较少,支持用于建立基于客户端/服务器和 Web 的应用程序的主要功能。但是ADO使用OLE DB接口并基于微软的COM技术,而ADO.NET拥有自己的ADO.NET接口并且基于微软的.NET体系架构。众所周知.NE

hdhai9451的专栏 1127
上一篇: C#实现简单的网络通信
lcprogram
博客等级 码龄15年 2粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值