即使不是海量,也不能用DataGrideView本身分页显示数据,要分页显示数据,对于大量数据就得先进行处理,在数据显示之前就在数据库处理好,要什么就取什么在google里面找找分页存储过程一大堆,如果是用oracle,数据库库分页用的是rowid这个更简单

解决方案 »

  1.   

    你的客户不接受分页显示?
    那你可以在datagridview记录往下滚动的时候,取新的数据。
    程序逻辑是分页,但是做出来的效果是一边往下滚动,一边有新的数据显示出来。就是滚动条的那个小滑块,越来越小。
      

  2.   

    winForm吧?
    用户要全部显示数据-_-!如果是这样,那应尽量避免刷新,而且最好别用DataTable.数据多了.你的内存会溢出.
      

  3.   

    1、如果他要看几千万的数据,你可以启动一个后台线程异步装载GridView,装载的时候用DataReader,这个是.NET里面读取速度最快的东西,基本没其他的选择了,你可以尝试在SQL Server 2005 studio里面打开看看有多慢,你能达到他的速度也就基本没有什么优化空间了。
    2、用户真的要看上千万的数据?他看的过来么?你是不是能建议用户有针对性的查看?有了条件,显示的效率问题也就不那么凸显了。