C# 中DataSet、DataAdapter的用法

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

SqlDataReader是个数据读取器,向前不可后退、每次只读取一条。速度快,现代项目里面用它用得最多。
DataSet是个内存数据库,它与其它两个是根本不一样的。
SqlDataAdapter是个数据适配器,工作于DataSet和数据库之间,负责将数据从数据源读出来放在DataSet中,或将DataSet中的更改更新回数据库。

 

SqlDataAdapter是 DataSet和 SQL Server之间的桥接器,用于检索和保存数据。SqlDataAdapter通过对数据源使用适当的Transact-SQL语句映射 Fill(它可更改DataSet中的数据以匹配数据源中的数据)和 Update(它可更改数据源中的数据以匹配 DataSet中的数据)来提供这一桥接。当SqlDataAdapter填充 DataSet时,它为返回的数据创建必需的表和列(如果这些表和列尚不存在)。

DataSet

  作用:DataSet,DataAdapter读取数据。

  问:什么是DataAdapter?

  答:DataAdapter对象在DataSet与数据之间起桥梁作用

  string strConn="uid=账号;pwd=密码;database=数据库;server=服务器";//SQL Server链接字符串

  SqlConnection ConnSql=new SqlConnection (strConn); //Sql链接类的实例化

  ConnSql.Open ();//打开数据库//使用SqlDataAdapter时没有必要从Connection.open()打开,SqlDataAdapter会自动打开关闭它。

  string strSQL="SELECT * FROM 表名1 "; //要执行的SQL语句

  SqlDataAdapter da=new SqlDataAdapter(strSQL,ConnSql); //创建DataAdapter数据适配器实例

  DataSet ds=new DataSet();//创建DataSet实例

  da.Fill(ds,"自定义虚拟表名");//使用DataAdapter的Fill方法(填充),调用SELECT命令

  ConnSql.Close ();//关闭数据库

 

如果只需要执行SQL语句或SP,就没必要用到DataAdapter ,直接用SqlCommand的Execute系列方法就可以了。sqlDataadapter的作用是实现Dataset和DB之间的桥梁:比如将对DataSet的修改更新到数据库。

  SqlDataAdapter的UpdateCommand的执行机制是:当调用SqlDataAdapter.Update()时,检查DataSet中的所有行,然后对每一个修改过的Row执行SqlDataAdapter.UpdateCommand ,也就是说如果未修改DataSet中的数据,SqlDataAdapter.UpdateCommand不会执行。

通过DataAdapterDataSet进行增删改 先了解DataSet的常用子对象: 截图: 附源代码: 输入添加信息: cat_id(int):    cat_name(nchar(10)): 阅读详情

相关推荐

C#与数据库连接及基本操作2(DataAdapterDataSet访问数据库)

DataAdapter提供连接DataSet对象和数据源的桥梁。 DataSet相当于一个小型数据库,里面含有多张表(table),并且可直接通过操作DataSet这个小型数据库中的值,最后可将所有操作直接将返回到数据库中。每一个DataSet都是一个或多个DataTable 对象的集合(DataTable相当于数据库中的表),这些对象由数据行(DataRow)、数据列(DataColumn)、字...

ymnl_gsh的博客 2248

C#DataSet用法(很详细)

DataSet是ADO.NET开发人员为方便数据处理开发出来的,是数据的集合。DataSet的功能:浏览、排序、搜索、过滤、处理分级数据、缓存更改等。还可以与XML数据互换。DataSet中可包括多个DataTable,可将多个查询结构存到一个DataSet中,方便操作.....

C#编程教程:掌握DataSetDataAdapter技巧

DataSet 是 ADO.NET 中的一个核心概念,它提供了一种断开连接的数据处理方式。DataSet 是一个离线的、内存中的数据集合,它可以包含多个表(DataTable 对象),每个表可以通过关系(DataRelation 对象)相互关联。DataSet 类似于一个关系数据库的缓存,但它是专门为网络应用设计的,使得从数据源检索数据、在客户端进行数据处理,再将更改更新回数据源成为可能。在构建数据库应用时,首先需要明确应用需求。

weixin_28840811的博客 988

C#DataAdapter对象

DataAdapter对象是一个数据适配器对象,是DataSet与数据源之间的桥梁。DataAdapter对象提供了4个属性,用于实现与数据源之间的互通。在对数据库进行操作时,只要将这4个属性设置成相应的SQL语句即可。DataAdapter对象中还有2个主要的方法:Fill()方法和Update()方法。

wenchm的博客 1971

c#数据适配器dataAdapter

1、引用命名空间 2、数据库连接配置 3、取配置文 件需要引用 4、两种实例化dataAdapter的方法 第三种实例dataAdapter的方法 第四种连接对象都不用构件了,也可以 dataAdapter填充数据 1、直接填充到结果集 2、查询两个结果集 ​​​​​​​ 注:设置表名映射在数据填充前。 填充数据到dataTable 如上的两种填充(到dataSet ,dataTable)都没有用到显示打开...

spr1ng的专栏 1215

C# 数据适配器之 DataAdapter 对象

01 DataAdapter 对象概述DataAdapter 对象是一个数据适配器对象,是DataSet 与数据源之间的桥梁。DataAdapter 对像提供了 4 个属性,用于实现与数...

zls365365的博客 2823

C#:数据适配器DataAdapter

DataAdapt对象是一个数据适配器对象,是DataSet与数据源之间的桥梁。DataAdapter对象提供了4个属性,用于实现与数据源之间的互通。 ►SelectCommand属性:向数据库发送查询SQL语句。 ►DeleteCommand属性:向数据库发送删除SQL语句。 ►InsertCommand属性:向数据库发送插入SQL语句。 ►UpdateCommand属性:向数据库发送更

ルーキーの殇 2790

C#二十七 DatasetDataAdapter

DataAdapter提供连接DataSet对象和数据源的桥梁。DataAdapter使用Command对象在数据源中执行SQL命令,以便将数据加载到DataSet中,并使DataSet中数据的更改与数据源保持一致。 DataSet是ADO.NET中最核心的成员之一,是各种基于.NET平台程序语言(如VB.NET、C#.NET、C++.NET)的数据库应用程序开发最常接触的类,...

weixin_30642561的博客 698

c mysql取到datatable_C# DataSet和DataTable:将查询结果保存到DataSet或DataTable中

在执行对表中数据的查询时还能将数据保存到 DataSet 中,但需要借助 DataAdapter 类来实现。在实际应用中,DataAdapterDataSet 是在查询操作中使用最多的类。此外,还可以通过 DataSet 实现对表中数据的增加、修改、删除操作。DataAdapterDataSet 类简介DataAdapter 类用于将数据表中的数据查询出来并添加到 DataSet 中,...

weixin_34394265的博客 2642

C#连接SQL2005数据库的一点总结

 Connectiong(连接)对象Commane(命令)对象DataReader:数据取器数据取器用来以只或只向前模式来从数据源中检索数据数据取器使用Connection对象来连接数据库,使用Command对象类执行SQL语句或数据库中的过程 以顺序模式检索数据 DataSet(数据集)DataSet是从数据源中检索到的数据在内存中的缓存。DataSet就像一个数据库,其中包含表

xiaoqinglang的专栏 3461

# C# WinForm数据展示与ADO.NET数据库编程实战指南

C# WinForm 桌面应用开发中,和是最核心的两大技能。无论是开发 ERP 系统、进销存软件还是信息管理系统,都离不开对数据的增删改查(CRUD)和界面展示。本文将系统讲解 WinForm 中两大数据展示控件——ListView和的完整用法,并结合ADO.NET技术实现与 MySQL 数据库的交互,最后通过一个综合示例将三者串联起来。

2503_90940786的博客 217

.net笔试题

ado.net的5大对象 connection command执行命令和存储过程 dataadapter适配器,实施增删查改 datareader向前的制度数据流 dataset 数据集对象,相当于内寸中的多张表 写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的) select t...

weixin_30532369的博客 78

C# WinForms 数据绑定组件与 ADO.NET 数据库编程完全指南

在 .NET 桌面应用开发中,数据访问与数据展示是两个核心环节。ADO.NET 作为微软官方提供的数据库访问技术,负责程序与数据源之间的桥梁;而 ListView、DataGridView 等 WinForms 控件则负责将数据以友好的方式呈现给用户。本文将系统梳理这两大主题,从基础概念到实战代码,帮助你快速掌握 C# 桌面开发中的数据编程技能。

HUANGZHQN的博客 339

DataSetDataAdapter的区别

DataSetDataAdapter的区别:DataReader 对象只能实现对数据的取,不能完成其他的操作。ADO.NET提供一款更强大的数据操作对象――DataSet 可以将DataSet看成一个非连接的数据库,因为DataSet的内部存储结构与数据库很类似,拥有数据表(DataTable)数据表关联(DataRelation)。DataSet中可以存储多张表等。DataSet拥有类

lanpy88的专栏 6526

C#DataSet的使用

DataSet介绍 DataSet类是ADO.NET中最核心的成员之一,它是支持ADO.NET断开式、分布式数据方案的核心对象,也是各种开发基于.Net平台程序语言开发数据库应用程序最常接触的类。 DateSet对象是创建在内存中的集合对象,他可以包含任意数量的数据表以及所有表的约束、索引和关系,它相当于在内存中的一个小型关系型数据库,所以如果数据量太大会非常消耗内存。 每一个DataSet包含一组DataTable对象和DataRelation对象,其中每个DataTable对象都由DataColumn、

weixin_42974146的博客 1万+

使用 DataAdapterDataSet 更新数据库 [C#]

DataAdapter 的 Update 方法可调用来将 DataSet 中的更改解析回数据源。与 Fill 方法类似,Update 方法将 DataSet 的实例和可选的 DataTable 对象或 DataTable 名称用作参数。DataSet 实例是包含已作出的更改的 DataSet,而 DataTable 标识从其中检索更改的表。当调用 Update 方法时,DataAdapter 将分

mustbelove的专栏 1769

C#对SQL数据库操作类简介:Connection、Command、DataReader、DataSetDataAdapter

操作数据库使用的便是ADO.NET中的几个类,这几个类分别为:1.Connection类:用于创建于数据库的连接。2.Command类:用于下达SQL命令3.DataReader类:取数据4.DataSet类:数据集5.DataAdapter类:数据适配命令。

qq_46104221的博客 2257

C# DataAdapterDataSet的方法如果卡住了,去检查access有没有设置主键

首先,C#访问数据库有两种方法,一是DataAdaoter和DataSet,另一个是DataReader。 直接Command然后用SQL语句去对数据库增删改补的操作就不说了,而第二种即DataAdapterDataSet之后改完更新的方法,其实是行不通的。因为!!!改完之后更新的是以DataSet为源的DataGridView控件或者是其他东西,并不能直接影响原数据库。要想直接影响原数据库,一定要用SQL语句然后Command方法。 参考资料(免费下载):C# Access数据库DataComma

rory_wind的博客 638
下一篇: DataReader和sqlDataAdapter+DataSet,分别在什么情况下使用?
Comp_uncle
博客等级 码龄14年 0粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值