.net大批量处理数据表时出现的一个问题
来源:互联网 发布:电子书数据库 编辑:程序博客网 时间:2024/06/06 17:41
试执行包含几下代码的程序
string str = @"select ci.cityname,a.areaname,i.name,i.invno,c.*
from invoice2014 i, invoice_cont2014 c,area a ,city ci where i.cinvid=c.cinvid
and i.areaid=a.areaid and ci.citycode=a.citycode and i.usestatus='1' and c.etime is not null
order by
ci.cityname,a.areaname ";
SqlCls sql=new SqlCls() ;
DataTable dt = new DataTable();
dt = sql.QuerytoDT(str);
int a = dt.Rows.Count;
int i = 0;
FeeClass f ;
foreach (DataRow dr in dt.Rows)
{
i=i+1;
f = new FeeClass(Convert.ToDateTime(dr["stime"]), Convert.ToDateTime(dr["etime"]), Convert.ToDecimal(dr["fees"]), Convert.ToDateTime(dr["optime"]));
dr["pastyears"] = f.FeePastYears;
dr["thisyear"] = f.FeeThisYear;
dr["lastyears"] = f.FeeNextYears;
}
当a的值大于50万(此数为大约,此数可能应与系统内存、表的字段数、字段的类型及大小有关,对于不同的情况可能会发生变化)时,执行到dr["pastyears"] = f.FeePastYears语句时会报错。将第1条语句改成下语句:
string str = @"select ci.cityname,a.areaname,i.name,i.invno,c.*
from invoice2014 i, invoice_cont2014 c,area a ,city ci where i.cinvid=c.cinvid
and i.areaid=a.areaid and ci.citycode=a.citycode and i.usestatus='1' and c.id>= 0 and c.id<500000 and c.etime is not null
order by
ci.cityname,a.areaname ";
亦即使表的行数不大于50万,则不会报错。
由此可知要处理大于50万条数据的表格时,须分段处理,每段为50万条。
- .net大批量处理数据表时出现的一个问题
- KETTLE大批量提交数据时出现丢失问题
- 调用VIEW_MAINTENTANCE_CALL时,维护数据表内容时出现的问题。
- TC 出现的一个登陆问题的处理
- 遇到问题----MongoDB---JAVA--大批量操作先删后存时偶尔出现保存的文档也被删除
- UDP大批量传输数据时的丢包问题优化
- 关于数据表映射在更新时候出现的一些问题
- 【黑马程序员】SqlBulkCopy大批量数据的处理
- linux处理大批量句柄的epoll技术
- 关于大批量导入数据的一个解决方案
- 处理大批量数据库时注意要点
- 【ASP.NET 问题】IIS发布网站后出现 "处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误"的解决办法
- 关于SXSSFWorkbook导出大批量数据的问题
- c# 处理大批量数据 时遇到 类型为“System.OutOfMemoryException”的异常
- blog出现的一个问题
- CTreeCtrl出现的一个问题
- 一个"不确定"出现的问题
- eclipse出现的一个问题
- 使用正则表达式NSRegularExpression 来验证textfiled输入的内容
- javascript实现的简单计算器
- 最微小的行动胜过最伟大的打算
- 2.26学习笔记 android事件分发,handler内存泄露
- NSRegularExpression iOS自带的正则表达式
- .net大批量处理数据表时出现的一个问题
- 路由器安置(Routing)
- iOS 中几种简单常用的操作
- NSInvocation的使用
- 从一个程序员转变为项目经理的蜕变
- 第一个Java程序经常出现的问题(二)
- openwrt: Makefile 框架分析
- java代码优化方案
- (转)GPL 与 BSD 授权的区别