asp数据库由access转换为sql后速度变慢

如题不知道为什么好像慢很多同样的服务器同样的数据量感觉要慢很多还有个问题就是我sql有个表由于20w+的数据前台显示要很长时间而且sql占用了服务器大量长时间导致服务器死... 如题 不知道为什么 好像慢很多 同样的服务器 同样的数据量 感觉要慢很多 还有个问题就是 我sql有个表由于20w+的数据 前台显示要很长时间 而且sql占用了服务器大量 长时间导致服务器死机 有办法解决没呢 分不多了 谢谢了先
能说详细些吗?我的程序是之前access的asp源码 然后改了一些常见的 access和sql不同的地方
展开
 我来答
peak169368
2008-12-11 · 超过43用户采纳过TA的回答
知道小有建树答主
回答量:177
采纳率:0%
帮助的人:109万
展开全部
这是由于access对于数据的处理已经过加工和优化。
转换成SQL后,速度变慢很可能时因为没有很好的处理分页问题引起的,即每次读取的数据量过大。每页需显示多少,则只从数据库读取多少条记录,而不是一次读取20W+的数据量。
比如每页显示100条数据,按ID降序排列显示,则:

第1页的SQL语句select top 100 * from TABLE order by ID DESC

第2页的SQL语句select top 200 * from TABLE where ID NOT IN(select top 100 * from TABLE order by ID DESC) order by ID DESC

第3页的SQL语句select top 300 * from TABLE where ID NOT IN(select top 200 * from TABLE order by ID DESC) order by ID DESC
...
第N页的SQL语句select top 100*N * from TABLE where ID NOT IN(select top (N-1)*100 * from TABLE order by ID DESC) order by ID DESC

如果写成存储过程,性能更佳。
百度网友67fbf91
2008-12-11 · TA获得超过144个赞
知道小有建树答主
回答量:157
采纳率:0%
帮助的人:106万
展开全部
有个问题不知你注意没有,sql会动态分配内存,默认设置会基本占用全部内存.如果你asp和sql在一台服务器的话,这样就会导致你的服务器速度变慢!!!
解决方法如下:
1、开企业管理器,在"local服务器"上右击选择"属性",选择"内存"选项卡,你可以选择"动态地配置SQL Server内存"将最大值设置一个比较合适的值,例如:如果你的物理内存为2G,你可以设置为1024性能就不错!
2、当然,你也可以将内存分配为一个固定值,1024mb。

注意:给内存分配配置并不说明sql占用的最大内存即为你设定的最大值(如上:1024MB),因为sql相关组件占用的内存是不包括在内的.
在设置时一定要注意这个问题!

希望可以帮助到你!如果有事情可以联系finder321@!63.com
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
林大哥的文库
2008-12-11 · TA获得超过366个赞
知道小有建树答主
回答量:652
采纳率:0%
帮助的人:300万
展开全部
看代码查询是不是有问题。。。。
同时,加一些存储过程看看。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式