当前位置:编程学习 > C#/ASP.NET >>

内存溢出

几万条的数据查询之后要导入到excel里面,在导入时报内存溢出,求各位大侠能帮忙解决! --------------------编程问答-------------------- 好像excel表格最大数据不能超过30000多条 --------------------编程问答-------------------- 对的,EXCel有最低限制的,你导出时判断条数,做下处理
引用 1 楼 aspwebchh 的回复:
好像excel表格最大数据不能超过30000多条
--------------------编程问答-------------------- 我现在做的这个曾经有人做过,数据也是几万条的,如果有限制那他们是怎么弄的呢? --------------------编程问答-------------------- 数据源 是什么啊DAtaTable,判断行数啊
引用 3 楼 huqin8023 的回复:
我现在做的这个曾经有人做过,数据也是几万条的,如果有限制那他们是怎么弄的呢?
--------------------编程问答-------------------- 你用Excel的com函数导的吗?主要语句贴出来两句 --------------------编程问答-------------------- 在页面中让客户选择导出时间段不就可以减少数据量? --------------------编程问答-------------------- 应该分次导入到Excel,内存不可能一次容下太多的数据 --------------------编程问答-------------------- excel表格不止3W条,没问题的,,程序问题,调试看看 --------------------编程问答-------------------- XLS(X)这些貌似有最大行数限制。
你能转用CSV格式么?这样的话虽然不能有任何样式但是没有行数限制而且可以直接通过文本方式对其进行操作 --------------------编程问答-------------------- dt = media.GetMediaCompareReportByProduct(MediaID, StartDate, EndDate);
sheet.Cells.ImportDataTable(dt, true, 0, 0);

dt是DataTable类型。
我做的是生成报告,当我生成的报告在dt这个地方数量少的话正常运行。
当数据多的话,就会在sheet.Cells.ImportDataTable(dt, true, 0, 0);这里会报内存溢出。


--------------------编程问答-------------------- 你不能分多次导入么? --------------------编程问答--------------------
引用 1 楼 aspwebchh 的回复:
好像excel表格最大数据不能超过30000多条


我记得是60000多条,但是一定会小于65536的。 --------------------编程问答--------------------
引用 10 楼 huqin8023 的回复:
dt = media.GetMediaCompareReportByProduct(MediaID, StartDate, EndDate);
sheet.Cells.ImportDataTable(dt, true, 0, 0);

dt是DataTable类型。
我做的是生成报告,当我生成的报告在dt这个地方数量少的话正常运行。
当数据多的话,就会在sheet.Cells.Impo……


应该导入到同一个工作簿的多个工作表,例如每50000条导入一个工作表。

难道你总是向Sheet1导入数据,而没有了解如何创建工作表吗?那么需要细化你的“导入Excel”的程序了!
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,