DataAdapter的Update方法 .and. Fill方法

原创 2006年05月28日 22:19:00
由于数据集不保留有关它所包含的数据来源的任何信息,因而对数据集中行所做的更改也不会自动回传到数据源,我们必须用数据适配器的Update方法来完成这项任务。对于数据集中每一个做出更改的行,Update会适当地调用数据适配器InsertCommand,DeleteCommand,UpdateCommand。
 
Update方法
Update(DataSet)  根据指定DataSet中名为Table的数据表更新数据源
Update(dataRows)  根据指定dataRows数组更新数据源
Update(DataTable)  根据指定DataTale更新数据源
Update(dataRows,DataTableMapping)  使用指定的DataTableMapping,根据指定的dataRows数组更新数据源
Update(DataSet,sourceTable)  根据DataSet的sourceTable中指定的数据表更新数据源
Fill方法使用数据适配器的SelectCommand中指定的命令把数据从数据源加载到数据集的一个或多个表中。DataAdapter对象包括:SqlDataAdapter和OleDbDataAdapter
 
Fill方法如下:
Fill(DataSet)   创建名位Table的数据表,并用数据源返回的行填充它
Fill(DataTable) 用数据源返回的行填充指定的数据表
Fill(DataSet,tableName) 在指定的数据集里,用数据源返回的行填充名为tableName的数据表
Fill(DataTable,DataReader) 使用指定的DataReader填充数据表
Fill(DataTable,command,CommandBeheavior) 使用命令中传递的SQL字符串和指定的CommandBeheavior填充数据表
Fill(DataSet,startRecord,maxRecords,tableName)  在指定的数据集中,填充名为tableName的数据表,填充从startRecord开始,持续到maxRecords或直到结果集的末尾结束
Fill(DataSet,tableName,DataReader,startRecord,maxRecords)  在指定数据集中,使用指定的DataReader填充名为tableName的数据表,填充从startRecord开始,持续到maxRecords或直到结果集的末尾结束
Fill(DataSet,startRecord,maxRecords,tableName,command,CommandBeheavior)  在指定数据集中,使用指定的DataReader填充名为tableName的数据表,填充从startRecord开始,持续到maxRecords或直到结果集的末尾结束
 
 
OleDbDataAdapter还支持另外2种Fill方法
Fill(DataTable,adoObject)  用来自ADO记录集或来自adoObject中指定的Record对象的行填充指定的数据表
Fill(DataSet,adoObject,tableName)  用来自ADO记录集或来自adoObject中指定的Record对象的行填充指定的数据表,该数据表有tableName字符串指定,它将决定tableMappings
 
 要点:SQL Server中的十进制数据类型最大允许38位,而.NET框架中的十进制数据类型最大允许28位。若SQL表中某一行的十进制字段超过28位,则数据行将不会被添加到数据集中,且会引发FillError。

DataTable的AcceptChange方法为什么不能在Update之前?

本人转载http://www.cnblogs.com/telnet_mike/archive/2011/08/29/2159013.html 总结:DataTable.AcceptChanges相当...
  • qingfeng45697
  • qingfeng45697
  • 2016年06月24日 10:55
  • 683

DataAdapter 批量插入、更新、删除数据库!

程序实现了,批量插入,更新,删除;using System; using System.Collections.Generic; using System.ComponentModel; using ...
  • hotmee
  • hotmee
  • 2015年11月20日 11:33
  • 2117

关于Java中的paint,repaint,update三个方法的关系

repaint,update和paint 这三个方法在Component中定义,由于awt,swing组件都直接或间接继承自Component,所以几乎所有的awt,swing组件都有这三个方法.这...
  • czkct
  • czkct
  • 2015年11月25日 14:16
  • 1146

《Hibernate学习笔记五》Session 的update方法详解

《Hibernate学习笔记五》Session 的update方法详解在前面的学习中,我们用到了Session的save方法,将对象从tansient状态转化为persistent状态。下面我们就来学...
  • u010412719
  • u010412719
  • 2016年04月29日 19:41
  • 11812

Hibernate更新某些字段的几种update方法

Hibernate 中如果直接使用 Session.update(Object o); 会把这个表中的所有字段更新一遍。 比如: view plaincopy to clipb...
  • liuxiao723846
  • liuxiao723846
  • 2015年01月20日 22:33
  • 2022

使用SqlDataAdapter批量更新数据

应用说明         数据适配器有SelectCommand、InsertCommand、DeleteCommand、UpdateCommand四种命令对象。分别给每种命令对象赋予相应的命令,就...
  • zlwzlwzlw
  • zlwzlwzlw
  • 2013年04月12日 22:00
  • 1296

数据集和数据库的同步-DataAdapter的使用

DataBase和DataSet同步数据 数据适配器概述 l         DataAdapter 连接到数据库以填充DataSet 的对象。然后,它又连接回数据库,根据DataSet 保留数据时所...
  • mikemiller2
  • mikemiller2
  • 2016年04月16日 16:12
  • 984

ContentResolver.update以及query方法参数详细说明

ContentResolver.update方法ContentValue只更新指定的字段 ContentResolver的query方法参数说明...
  • adayabetter
  • adayabetter
  • 2015年12月28日 11:09
  • 1598

强类型Dataset使用事务(改进原有方法)

转自:http://blog.csdn.net/nfbing/article/details/5803980 关于强类型Dataset的用法和好处,我就不再多说,网上关于这方面的资料很多 , ...
  • apollokk
  • apollokk
  • 2015年11月21日 16:11
  • 1531

Hibernate在更新时,是可以不用session的update方法的

public void synDevNameWithItil() { Session session = null; Transaction tr = null; try { sess...
  • pf711
  • pf711
  • 2015年08月02日 17:26
  • 2109
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:DataAdapter的Update方法 .and. Fill方法
举报原因:
原因补充:

(最多只允许输入30个字)