求高手指点,1000次执行一次,但是1000次之后就不执行了~

问题描述

stringstr="";inti=0;foreach(XmlNodenodeinxmlnode){i++;varphone=node.ChildNodes[0].InnerText.Trim();varcontent="内容";varStatus="成功";varCreatedBy=Loginer.Account;DateTimeCreatedOn=DateTime.Now;str+="insertintoSendMsgvalues('"+phone+"','"+content+"','"+Status+"','"+CreatedBy+"','"+CreatedOn+"');";if((i%1000)==0){try{Gateway.Default.FromCustomSql(str).ExecuteNonQuery();}catch(Exception){result.Insert=0;result.Failed=0;}str="";Thread.Sleep(3000);}}

求高手指点,我是拼接sql语句,拼接了多个insert,如果1000次会执行1000个insert,但是1000个之后,就不执行了,到2000的时候会再次执行一次,那如果我导入的数据假如说是1999个,最终只会执行1000个,求好心人指点下,谢谢!

解决方案

本帖最后由 qq_29148333 于 2015-06-19 01:17:38 编辑
解决方案二:
撸主1999%1000;//运算结果是999,if判断为false

另外,使用StringBuilder.Append取代str+=
解决方案三:
给力。。。。。。。。。。。。。。。。。。。。。。。
解决方案四:
在foreach之后,再加一个if((i%1000)!=0)//处理数据

解决方案五:
intmax=xmlnode.Count;if((i%1000)==0||i==max-1){//code}

解决方案六:
你的i是1开始的,那应该是判断i==max
解决方案七:
你不如改成这样if((i>=1000){i=0;//执行}这样在循环执行完毕之后,再次判断i,如果大于0,就再次执行一次,如果等于0,就不用执行了

时间: 2024-09-13 01:14:26

求高手指点,1000次执行一次,但是1000次之后就不执行了~的相关文章

递归-一个比较复杂的级联删除问题 ,求高手指点

问题描述 一个比较复杂的级联删除问题 ,求高手指点 是这样的,现在要做一个通用的删除方法.删除一个配置项和其关联配置项,逻辑很复杂.首先,数据库结构大概是这样的:有N个配置项,每个配置项有一张表,每个配置项通过一个中间表和其他配置项关联.有一对一,也有一对多的.所谓配置项一般都是一种设备,有序列号CI,ROWID来区分标识,每个设备有唯一的CI,但ROWID不唯一,ROWID是递增的,用HISTORY字段来区分是否在用.新增一个设备时是新生成一个CIROWID,HISTORY为1,表示在用.而更

php iis mysql-用PHP实现excel数据导入数据库,但是提示500错误,服务器是IIS,求高手指点

问题描述 用PHP实现excel数据导入数据库,但是提示500错误,服务器是IIS,求高手指点 require_once ('PHPExcel.php');require_once ('PHPExcel/IOFactory.php');require_once ('PHPExcel/Reader/Excel5.php');if($_POST['leadExcel'] == ""true""){ $filename = $_FILES['inputExcel']['n

模板-求ireprot导致系统挂掉服务器内存溢出求高手指点

问题描述 求ireprot导致系统挂掉服务器内存溢出求高手指点 我用的ireport 制作的pdf模板最近在系统中时不时出现因为某个jasper文件导致系统挂掉,服务器内存被调用这个文件的一个进程占用完了但是再次在系统中打印预览这个文件又正常了.不存在数据量大的问题,求各位高手指点下可能是什么原因导致的!!

编程-求高手指点pajek数据预处理问题

问题描述 求高手指点pajek数据预处理问题 小弟刚接触pajek软件,录入数据时打算用excel2pajek将excel数据转换成.net格式.想将如图所示的数据一形式整理成数据二形式.但编程能力实在有限没想到什么办法,望高手指点!

visual c++-新手Visual C++ 2008编译汇编报错求高手指点!来人啊

问题描述 新手Visual C++ 2008编译汇编报错求高手指点!来人啊 正在创建临时文件"c:Documents and SettingsfengyuMy DocumentsVisual Studio 2008ProjectsmasmmasmDebugRSP00000F16563976.rsp",其内容为[/OUT:""C:Documents and SettingsfengyuMy DocumentsVisual Studio 2008Projectsmasm

调试-新手Visual C++ 2008编译汇编报错求高手指点!来人啊

问题描述 新手Visual C++ 2008编译汇编报错求高手指点!来人啊 正在创建临时文件"e:huibianmasmmasmDebugBAT00000135563700.bat",其内容为 [ @echo off ml.exe /c /nologo /Fo""Debug10.obj"" /I ""C:lnclude"" /W3 /Zi /errorReport:prompt /Ta.10.asm if

qt-konqueror汉化时报错求高手指点

问题描述 konqueror汉化时报错求高手指点 按照网上说的 把qconfig-qpe.h 中的qt_no_codec去掉 ,结果编译konqueror报错 :undifined reference to qtextcodec::loadcharmapfile(qstring)

6 0-vc++ link 运行错误 求高手指点

问题描述 vc++ link 运行错误 求高手指点 具体怎么回事 我也不知道 请看代码及错误提示:Microsoft Developer Studio Workspace File Format Version 6.00 WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! ############################################################################### Project

preparedstatement-PreparedStatement 在oracle11g 很慢,求高手指点

问题描述 PreparedStatement 在oracle11g 很慢,求高手指点 原来用oracle xe11访问速度很快,升级到oracle11g,很慢 调试发现只要preparedStatement 使用set方法传递参数,速度就很慢,盼高手指点 具体代码 解决方案 贴出你的查询语句和代码. 你是怎么得到"preparedStatement使用set很慢"的,和什么对比的. 解决方案二: 同一个sql,在xe11里就快,oracle11g就慢,而且发现不用set方法,两个速度