读取超过10000的数据库记录时速度慢得难已接受,如何才能提高读取速度? sql语句为什么要查出10000条?用top 20 *每次查询出前20条显示。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你要是想把所有的记录都读出来可以用DataSet你要是想读出来后在结果集中查找你所需要的内容可以在SQL语句中加上判断条件,使用出来的内容就是你想要的,而不要再次做查找的动作你要是相关的地方没有索引可以加上索引 尽量优化你sql语句,能建索引的建索引,多加条件,可以考虑用分页。 同意sunxiaoli(秦朝),maotin(liu) 的观点,为什么要返回给客户端这么多数据呢,有必要吗,其实也可以采用分页分段的方式进行传输啊?要输出1万条数据,这是客户关心的有效数据吗?建议:在业务逻辑层进行控制传输给客户端的数据要有效的建立索引优化你的条件查询 如果要取这么多的数据,慢也没有办法。只能优化你的SQL语句,尽量用存储过程 1.不要在查询语句中过多的使用表连接,因此而带来的问题是 你在设计表时应放底表范式;2.不要与触发器连接;3.先将你的sql语句进行性能测试;4.最好把你的sql语句写出来让大家见识见识。 同意楼上,还有一个办法,ADO中有一个过滤器,可以进行条件过滤检索。 我也遇到类似的一个问题,程序段跟xinc类似,我处理的是一个银行账务系统,有两个表,需要区别出两个表中相同的记录项和不同的记录项。所以我需要用dataReader一个一个的取出表1的记录项,然后跟表2中的数据项进行对比。数据项也超过了1万,我是用DataReader还是DataSet效率会更高一些呢? array.clear不用可以吗? C# webBrowser截图问题(解决追分至200) c#生成 首页页眉不同的word 求数据库权限设置 请各位用过castle 的高手帮助解决,先谢谢了 一个关于DataGridView的问题,请c#高手帮忙指点 写了用户控件后别人拖过去用能不能不让他改ID 金质打印通里如何控制表格内字体大小? C#中 如何给Execl中的数据加上边框? InfoPath打开问题,解决500分 水晶报表的问题!!! datagrid一次可以选中多行,如何得到所有选中的行呢?
你要是想读出来后在结果集中查找你所需要的内容可以在SQL语句中加上判断条件,使用出来的内容就是你想要的,而不要再次做查找的动作
你要是相关的地方没有索引可以加上索引
在业务逻辑层进行控制传输给客户端的数据
要有效的建立索引
优化你的条件查询
你在设计表时应放底表范式;
2.不要与触发器连接;
3.先将你的sql语句进行性能测试;
4.最好把你的sql语句写出来让大家见识见识。