设为首页 加入收藏 网站首页
休闲娱乐
军事·社会百态·娱乐八卦·校园
体育·美女写真·幽默笑话·游戏
综合·在线视频·搞笑图片·灵异
两性生活
两性知识·性爱技巧
情色实录·两性图片
女性健康·同性之恋
电脑网络
网络编程·网页制作·软件教学
操作系统·图形图象·冲浪宝典
网络安全·邮件系统·认证考试
热点专题
芙蓉·真人漫画
72式·欲望都市
帅哥·人体彩绘
您现在的位置: 世纪中国 >> 网络编程 >> ASP.NET教学 >> ado.net应用 >> 教程正文
使用 DataAdapter 执行批量更新
作者:中国图霸    教程来源:网络    点击数:    更新时间:2007-1-1

   摘自MSDN:
在以前版本的 ADO.NET 中,使用 DataSet 中的更改来更新数据库时,DataAdapter 的 Update 方法每次更新数据库的一行。因为该方法循环访问指定 DataTable 中的行,所以,会检查每个 DataRow,确定是否已修改。如果该行已修改,将根据该行的 RowState 属性值调用相应的 UpdateCommand、InsertCommand 或 DeleteCommand。每一次行更新都涉及网络与数据库之间的双向数据传输。

在 ADO.NET 2.0 中,DataAdapter 公开了 UpdateBatchSize 属性。将 UpdateBatchSize 设置为正整数值将使对数据库的更新以指定大小的批次进行发送。例如,如果将 UpdateBatchSize 设置为 10,会将 10 个独立的语句组合在一起并作为一批提交。将 UpdateBatchSize 设置为 0 将导致 DataAdapter 使用服务器可以处理的最大批次的大小。如果将其设置为 1,则禁用批量更新,因为此时每次发送一行。

执行非常大的批次可能会降低性能。因此,在实现应用程序之前,应测试最佳的批次大小设置。

使用 UpdateBatchSize 属性
启用了批量更新后,DataAdapter 的 UpdateCommand、InsertCommand 和 DeleteCommand 的 UpdatedRowSource 属性值应设置为 None 或 OutputParameters。在执行批量更新时,命令的 FirstReturnedRecord 或 Both 的 UpdatedRowSource 属性值无效。

下面的过程演示如何使用 UpdateBatchSize 属性。该过程采用两个参数,一个 DataSet 对象,其中包含代表 Production.ProductCategory 表中的 ProductCategoryID 和 Name 字段的列,一个代表批次大小的整数(批次中的行数)。该代码创建一个新的 SqlDataAdapter 对象,设置其 UpdateCommand、InsertCommand 和 DeleteCommand 属性。该代码假定 DataSet 对象已修改了行。它设置 UpdateBatchSize 属性并执行更新。

 


protected void btnUpdateAddress_Click(object sender, EventArgs e)
    {
        SqlDataAdapter EmpAdapter = new SqlDataAdapter();
        DataTable EmpDT = new DataTable();
        SqlConnection DBConSelect = new SqlConnection();
        SqlConnection DBConUpdate = new SqlConnection();
        SqlCommand SelectCommand = new SqlCommand();
        SqlCommand UpdateCommand = new SqlCommand();

      &nbs

[1] [2] [3] [4] [5] 下一页

分类推荐
社会 社会 娱乐 军事 校园
幽默 体育 女性 专题
电脑 编程 网页 软件 系统
安全 图象 冲浪 认证
搞笑 人物 动物 物品 表情
签名 色图 漫画 奇闻
美女 明星 清纯 自拍 欧美
丝袜 卡通 性感 走光
两性 知识 性图 孕育 技巧
同性 单身 情感 实录
视频 写真 搞笑 MTV 翻唱
写实 片段 游戏 综艺
ado.net应用热门文章
普通教程 NHibernate与Ado.Net查询速度的
普通教程 使用 DataAdapter 执行批量更新
普通教程 ADO.NET 2.0批量数据操作和多动
普通教程 ADO.NET中的sql连接
普通教程 ADO.NET 数据库实例教程
普通教程 ADO.NET操纵数据库
普通教程 初谈ADO.NET中利用DataAdapter
普通教程 最佳实践 ADO.NET实用经验无保
普通教程 ADO.NET2.0跟ADO.NET3.0的一些
普通教程 深入分析ADO.NET中的DataSet对
普通教程 使用ADO.NET2.0提升数据交互性
普通教程 ADO.NET 2.0:如何排除错误信息
普通教程 使用ADO.NET2.0提升数据交互性
普通教程 使用ADO.net将数据导出到Excel
普通教程 使用ADO.NET配置SQL Server事务
普通教程 使用ADO.NET2.0提升数据交互性
普通教程 使用ADO.NET2.0提升数据交互性
普通教程 使用ADO.NET2.0提升数据交互性
普通教程 下一代ADO.NET---ADO.NET Enti
普通教程 通过ADO.NET存取文件

  广东广州海珠区 世纪网络工作室 版权所有 上海电信提供网络带宽
信箱: 9297659@qq.com 粤ICP备06113754号