我目前的写法大致如下:
SqlDataAdapter adp = new SqlDataAdapter(sqlstr2, con);
DataSet ds = new DataSet();
adp.Fill(ds, AspNetPager1.PageSize * (AspNetPager1.CurrentPageIndex - 1), AspNetPager1.PageSize, "fan_ck");
Repeater1.DataSource = ds.Tables["fan_ck"];
Repeater1.DataBind();
ds.Dispose();
adp.Dispose();
17 个解决方案
#1
不用存储过程,那就只能慢.要不就把机器配置得更好一些吧.
#2
分页取数据,只取需要的。
#3
帮顶~~~~~~~~~
#4
存储过程,或者 查询时只取需要的字段!! 建索引!
#5
不用 存储过程 那你就是在 UI 上 进行分页 你说一次取10条快些 还是一次取 1w 条快些
不用存储过程 是快不起来的
不用存储过程 是快不起来的
#6
你这样肯定慢吗?用存储过程吧
#7
我记得以前写程序,也遇到这种情况,不用存储过程,也是快起来的,以前读取的是10万条信息,起码要50秒钟,改了程序后,2秒钟就读出来了。
#8
优化下SQL语句 第一次读取 是要缓存的 第二次估计会快
#9
确实!用存储过程吧!不然快不起来!
#10
存储过程,好办法
#11
我也是这个观点
先从sql上下功夫,优化一下,能不去的字段就不取
然后就是分页吧,我一般做分页,反应都还可以
先从sql上下功夫,优化一下,能不去的字段就不取
然后就是分页吧,我一般做分页,反应都还可以
#12
存储过程,表分区。
#13
存储过程吧 呵呵 要不就用硬件来换取它的速度吧
#14
把数万笔资料全部从数据库读取到服务器内存,想不慢都不行.
取所需吧,一次取10条之类的.没有任何用户想一次性在界面上查看数万笔资料的.
取所需吧,一次取10条之类的.没有任何用户想一次性在界面上查看数万笔资料的.
#15
存储过程分页,你用的是dataset自带的分页,先将数据一次性读出来放入dataset中(内存中,内存不足会存入缓存),然后再分页,所以第一次会慢。
#16
用存储过程可以省一半的时间
#17
我就是不想用存储过程啊,难道就没有办法吗,不过几万条数据
#1
不用存储过程,那就只能慢.要不就把机器配置得更好一些吧.
#2
分页取数据,只取需要的。
#3
帮顶~~~~~~~~~
#4
存储过程,或者 查询时只取需要的字段!! 建索引!
#5
不用 存储过程 那你就是在 UI 上 进行分页 你说一次取10条快些 还是一次取 1w 条快些
不用存储过程 是快不起来的
不用存储过程 是快不起来的
#6
你这样肯定慢吗?用存储过程吧
#7
我记得以前写程序,也遇到这种情况,不用存储过程,也是快起来的,以前读取的是10万条信息,起码要50秒钟,改了程序后,2秒钟就读出来了。
#8
优化下SQL语句 第一次读取 是要缓存的 第二次估计会快
#9
确实!用存储过程吧!不然快不起来!
#10
存储过程,好办法
#11
我也是这个观点
先从sql上下功夫,优化一下,能不去的字段就不取
然后就是分页吧,我一般做分页,反应都还可以
先从sql上下功夫,优化一下,能不去的字段就不取
然后就是分页吧,我一般做分页,反应都还可以
#12
存储过程,表分区。
#13
存储过程吧 呵呵 要不就用硬件来换取它的速度吧
#14
把数万笔资料全部从数据库读取到服务器内存,想不慢都不行.
取所需吧,一次取10条之类的.没有任何用户想一次性在界面上查看数万笔资料的.
取所需吧,一次取10条之类的.没有任何用户想一次性在界面上查看数万笔资料的.
#15
存储过程分页,你用的是dataset自带的分页,先将数据一次性读出来放入dataset中(内存中,内存不足会存入缓存),然后再分页,所以第一次会慢。
#16
用存储过程可以省一半的时间
#17
我就是不想用存储过程啊,难道就没有办法吗,不过几万条数据