asp.net查询数据库大数据卡的要死有什么方法决解

实训在做,系统里面数据好几万条。在gridview显示的时候卡炸了。网上说用ajax。也有说别的(一页只加载一部分数据等等),请问各位在实际开发是怎么做的,有代码可以商量... 实训在做,系统 里面数据好几万条。在gridview显示的时候 卡炸了。
网上说用ajax。也有说别的(一页只加载一部分数据 等等),请问 各位在实际开发是怎么做的,有代码可以商量加分(不卡,尽可能的快, 尽可能的降低服务器的负担)
展开
 我来答
wxh4360
2013-12-20 · 超过34用户采纳过TA的回答
知道答主
回答量:54
采纳率:0%
帮助的人:68.8万
展开全部
好几万数据不算多,几千万条数据也没有像你说的那么卡,你得分析下以下几方面原因:
1、将你查询的SQL放到数据库中执行看需要用多少时间,如果时间比较长的话,首先要从你的查询进行优化,比如说像楼上说的是不是查询了太多不需要的数据,有没有分页,还有就是查询条件的问题,是不是用了太多嵌套查询,是不是应该给查询频繁的字段加索引,是不是考虑用存储过程替代SQL语句
2、检查不绑定GridView之前页面的加载速度,如果不绑定就比较慢的话,你得看程序是不是哪里有问题,是不是套用了太多的iframe,是不是绑定了过多的数据源控件,是不是初始化的js报错

其实最好的办法是你把你的代码贴出来给大家看看,分析分析,更有针对性
googlelq
2013-12-20 · TA获得超过580个赞
知道小有建树答主
回答量:396
采纳率:0%
帮助的人:281万
展开全部
根据你是初学者,我给出两个方案,
1、进行sql 优化, 查询的时候,Select不要用 * ,用到的字段才Select.
2、用存储过程分页,只取出当前页的数据 这个给出参考例子: http://www.cnblogs.com/fishtreeyu/archive/2011/01/01/1923808.html

其它加快速度的方法还有: 加索引,数据分区等。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
残梦琁
2013-12-20
知道答主
回答量:14
采纳率:0%
帮助的人:5.3万
展开全部
  可以用SQL语句分页。
  /// <summary> /// 分页获取数据列表 /// </summary> public DataSet GetListByPage(string strWhere, string orderby, int startIndex, int endIndex) { StringBuilder strSql = new StringBuilder(); strSql.Append("SELECT * FROM ( "); strSql.Append(" SELECT ROW_NUMBER() OVER ("); if (!string.IsNullOrEmpty(orderby.Trim())) { strSql.Append("order by T." + orderby); } else { strSql.Append("order by T.CIID desc"); } strSql.Append(")AS Row, T.* from CashInfo T "); if (!string.IsNullOrEmpty(strWhere.Trim())) { strSql.Append(" WHERE " + strWhere); } strSql.Append(" ) TT"); strSql.AppendFormat(" WHERE TT.Row between {0} and {1}", startIndex, endIndex); return SQLHelper.ExecuteDataset(CommandType.Text, strSql.ToString()); }

这个方法你改写一下就可以用的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-12-20
展开全部
用一个好的分页么
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式