怎样提高程序运行速度
WinForm里面DataGridView控件,手动绑定从Access查询出来的数据
编码内容大概如下:
string sql = “select XX, XX, XX, XX from table”;
Datatable dt = GetDataTable(sql);
DataGridView.dataSource = dt;
若数据量较大,比如说3000条,整体速度会变得很慢,
呵呵,菜鸟不懂得优化
请问下有什么办法可以加快这个过程
------解决方案--------------------优化数据库
------解决方案--------------------首先,access给个索引,然后查询的时候,给索引加个搜索条件;
至于界面上的嘛,你可以用分页,每页显示多少条,不要一次性全找出来显示,
------解决方案--------------------绑定的时候采用虚模式
------解决方案--------------------只差需要的数据和字段,减少数据
------解决方案--------------------分页。。。
没必要一下子查询/显示那么多。
------解决方案--------------------分页是最直接的,一次性把数据都显示感觉没必要,分页就可以提高速度
------解决方案--------------------一次性查询Access所有数据,填充到强数据类型DataSet(内存里面),
在DataGridView里面用分页技术,每次只从DataSet里面取10条或20条
数据,这样速度就快不少了
------解决方案--------------------多线程
------解决方案--------------------
------解决方案--------------------得看瓶颈在哪里。
1 数据库查询语句返回结果就慢,优化数据库,包括减少列的定义的大小,返回较少的列,使用索引。
2 返回慢,是网络问题,使用条件检索返回较少的结果,减少数据吞吐量,增加网络带宽。
3 响应慢,返回结果过多,导致反映到界面上速度慢,这时可以使用分页显示,优化程序速度,优化界面显示等等。
------解决方案--------------------更换数据库,ACCESS本身只能用在少量数据上。不要分页,又不是网页程序,完全没必要+不友善。
------解决方案--------------------3000条也算大数据
普通的SQl就能完成
------解决方案--------------------分页才是你解决问题的方法。。。
一下子查询三千条显示。。
我想你没这个需求。。。
没必要一下全查出来