通过vs自动生成的强类型dataset代码,我截取看了一段自动生成的代码

//以下代码是我自定义了一段update 操作vs自动生成的

public virtual int ResetErrortimes(int id) {
global::System.Data.SqlClient.SqlCommand command = this.CommandCollection[3];
command.Parameters[0].Value = ((int)(id));
global::System.Data.ConnectionState previousConnectionState = command.Connection.State;
if (((command.Connection.State & global::System.Data.ConnectionState.Open)
!= global::System.Data.ConnectionState.Open)) {
command.Connection.Open();
}
int returnValue;
try {
returnValue = command.ExecuteNonQuery();
}
finally {
if ((previousConnectionState == global::System.Data.ConnectionState.Closed)) {
command.Connection.Close();
}
}
return returnValue;
}

这段代码仔细阅读后发现很精巧,我们知道,打开连接操作时十分耗时的,如果我们要对数据库进行批量操作时,我们通过对这段代码特性的了解,可以首先自己打开链接,平批量操作结束时再自己关闭即可。

adapter.connection.open();

adapter.connection.close();

我们可以用stopwatch类来查看一下执行时间:

stopwatch sw=new stopwatch();

sw.start();

……

sw.stop();

messagebox.shoe(sw.elapsed.tostring());

转载于:https://www.cnblogs.com/ZJoy/archive/2010/12/17/1909591.html

Typed DataSet的批量操作优化相关推荐

  1. 认识并测量Typed DataSet

    认识并测量Typed DataSet Truly 2005-08-05 下载本文的源码(C#) - 17k 下载本文的源码(VB) - 15k 简介 强类型DataSet 强类型DataSet是从Da ...

  2. 将批注用于类型化 DataSet (摘自MSDN)

    批注使您能够在不修改基础架构的情况下修改类型化 DataSet 中元素的名称.如果修改基础架构中元素的名称,则会使类型化 DataSet 引用不存在于数据源中的对象,并且会丢失对存在于数据源中的对象的 ...

  3. 上万数据批量新增/修改优化经验

    上万条数据批量操作优化: 1 取消for循环,改成批量插入/修改方式,尽管代码会比较麻烦. 2 减少数据库操作,可以将数据一次性取到内存,在内存处理,代码麻烦些. 3 在批量新增的时候,将序列改为系统 ...

  4. Redis入门完整教程:无底洞优化

    2010年,Facebook的Memcache节点已经达到了3000个,承载着TB级别 的缓存数据.但开发和运维人员发现了一个问题,为了满足业务要求添加了 大量新Memcache节点,但是发现性能不但 ...

  5. 使用ADO.NET 的最佳实践(zz)

    数据访问:使用 ADO.NET 的最佳实践(ADO.NET 技术文档) 发布日期: 4/1/2004 | 更新日期: 4/1/2004 摘要:编写 Microsoft ADO.NET 代码的最佳实践, ...

  6. O/R Mapping 研究报告(转)

    < DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd> 1. 业务实体层的设计方 ...

  7. Scott Mitchell 的ASP.NET 2.0数据教程之一: 创建一个数据访问层

    原文 | 下载本教程中的编码例子 | 下载本教程的英文PDF版 导言 作为web开发人员,我们的生活围绕着数据操作.我们建立数据库来存储数据,写编码来访问和修改数据,设计网页来采集和汇总数据.本文是研 ...

  8. 设计数据层组件并在层间传递数据

    Angela Crocker.Andy Olsen 和 Edward Jezierski Microsoft Corporation 2002年8月 适用于:     Microsoft® .NET ...

  9. ASP.NET2.0数据操作之创建业务逻辑层

    导言 本教程的第一节所描述的数据访问层(Data Access Layer,以下简称为DAL)已经清晰地将表示逻辑与数据访问逻辑区分开了.不过,即使DAL将数据访问的细节从表示层中分离出来了,可它却不 ...

最新文章

  1. 【项目管理】八大绩效域裁剪考虑事项
  2. mysql webhook_sql 数据定时发送webhook golang 服务
  3. Exchange server 2010系列教程之三 发送邮件测试
  4. (企业案例)使用Nacos持久化规则,改造sentinel-dashboard
  5. 机器学习两大派别--南大周志华
  6. SSH-远程登录协议
  7. 学Web前端开发需要哪些基础?零基础小白该怎么入行?
  8. Vitamin-R for Mac(GTD工作效率管理工具)
  9. 网页QQ客服 msn客服
  10. 数字滤波器设计工具_数字设计师和代理商的资源和工具
  11. onenote打开闪退平板_Win10系统下OneNote打不开或闪退如何解决
  12. ISTP会议论文检索
  13. 寻找反素数python
  14. 数据分析方法——01描述性统计
  15. 二级域名分发系统美化版网站源码 附搭建教程
  16. php随机生成昵称,使用PHP批量生成随机用户名
  17. RLC并联谐振电路分析
  18. ABS故障使用计算机仿真,车辆ABS系统的计算机仿真研究
  19. 知识付费分销直播营销系统源码
  20. oracle为表空间增加数据文件,创建Oracle表空间,增加数据文件的步骤

热门文章

  1. nginx动态php转发,Nginx 动态 upstreams 实现,nginxupstreams_PHP教程
  2. inteliJ maven 打包时把依赖的包一起打
  3. @babel/polyfill按需加载
  4. [图灵程序设计丛书].持续交付:发布可靠软件的系统方法.pdf
  5. 图解HTTPS协议加密解密全过程
  6. Lucene中的一些基本概念
  7. Settings界面分析之Settings一级界面
  8. 11个优秀PHP开发框架-专门为开发人员准备
  9. python封装第三方接口_PYTHON 实现 SIGN 签名: 用于提供给外部(第三方) 做系统对接...
  10. iservice封装有哪些方法_Java基础之类与对象、封装、构造方法·6(重点)