从oracle数据库的一个表中一次要取出100万条数据,主要是数据库里面的数据太多了,如果查询的跨度比较大,比如是半年。读出来的数据直接超过百万了,如果在C#中,一次读出这么多数据到数据集dataset中,然后再把数据集中的数据填充到listview中,在读取到dataset的时候(dataset.fill("mytable"))程序就直接死了。有什么好的方法可以解决这个问题吗,我在数据库表里面已经建立索引了,这样大的数据貌似没有什么作用。

解决方案 »

  1.   

    我现在做的是省公安局的联动系统,有时候别人要查一下几个月内发生了多少案件,可能一下就冒出几百万条。我们是这样做的,左边放查询条件,右边放一个listview显示查出来的案件及信息,下边的状态条显示一共查出了多少条数据出来。程序是cs的,觉得你说的一部分一部分取好像可以。还有没有什么类似的方法吗,谢谢大牛!
      

  2.   

    我之前写过类似的C#,我当时要导出的是图片数据,也是量比较大,我直接通过IO流来完成,不用数据集,直接用sqldatareader
    循环读取出来
      

  3.   

    我现在做的是省公安局的联动系统,有时候别人要查一下几个月内发生了多少案件,可能一下就冒出几百万条。我们是这样做的,左边放查询条件,右边放一个listview显示查出来的案件及信息,下边的状态条显示一共查出了多少条数据出来。程序是cs的,觉得你说的一部分一部分取好像可以。还有没有什么类似的方法吗,谢谢大牛!==========================================
    你一下子显示几百万条吗?能看的过来吗?
    显示统计的总数,多少条信息用分页;可进一步设置条件精确查询,缩小显示的范围。