如何提高存储过程执行速度?

stu_everyday 2011-04-13 11:02:08
各位大侠:
本人遇到这样一个问题,在本地执行带参数的存储过程仅用1秒,发布到服务器上执行需要17秒???
实在郁闷,存储过程中是9个union all连接查询。这是什么原因呢?或者用什么方法可以找到原因呢?
盼回复~~~~~~
...全文
180 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
andy_liucj 2011-04-14
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 stu_everyday 的回复:]
大家好:
感谢各位的回复!
问题解决了,问题是数据库中有一个表数据量较大且反复使用。
解决方法是将一个存储过程分为两个存储过程,在web应用程序中(.net c#)使用Ajax读取两组数据,
这样在客户端就不会等待太长时间。

(我从服务器上下载数据库到本地,结果本地执行速度可以接受,服务器上就超慢;两个存储过程虽然没能直接解决问题但是可以解燃眉之急,而且两组……
[/Quote].net中使用ajax是不是实现Icallbackeventhandle接口,还是使用.ashx文件来处理啊?
昵称被占用了 2011-04-13
  • 打赏
  • 举报
回复
想想有什么不同,比如数据量、比如索引
stu_everyday 2011-04-13
  • 打赏
  • 举报
回复
本地的数据库和服务器上的是一样的,
数据表均没有设置索引(也未设置主键)。
这样,现在存储过程中有9组SQL语句,我先一组一组的测试一下(SQL查询器中的调试不太会用 ):)
dawugui 2011-04-13
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 stu_everyday 的回复:]
我直接在服务器上执行,就需要17秒的时间~~~~~~
我也修改了SQL语句(原来在本地执行需要4秒,修改后执行1秒)
再想不出别的办法了~~~~~~
[/Quote]相关的表其索引重新建立.
stu_everyday 2011-04-13
  • 打赏
  • 举报
回复
我直接在服务器上执行,就需要17秒的时间~~~~~~
我也修改了SQL语句(原来在本地执行需要4秒,修改后执行1秒)
再想不出别的办法了~~~~~~
rucypli 2011-04-13
  • 打赏
  • 举报
回复
服务器上的索引是否有效使用
dawugui 2011-04-13
  • 打赏
  • 举报
回复
网速问题?
--小F-- 2011-04-13
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 stu_everyday 的回复:]
大家好:
感谢各位的回复!
问题解决了,问题是数据库中有一个表数据量较大且反复使用。
解决方法是将一个存储过程分为两个存储过程,在web应用程序中(.net c#)使用Ajax读取两组数据,
这样在客户端就不会等待太长时间。

(我从服务器上下载数据库到本地,结果本地执行速度可以接受,服务器上就超慢;两个存储过程虽然没能直接解决问题但是可以解燃眉之急,而且两组……
[/Quote]
gx
stu_everyday 2011-04-13
  • 打赏
  • 举报
回复
大家好:
感谢各位的回复!
问题解决了,问题是数据库中有一个表数据量较大且反复使用。
解决方法是将一个存储过程分为两个存储过程,在web应用程序中(.net c#)使用Ajax读取两组数据,
这样在客户端就不会等待太长时间。

(我从服务器上下载数据库到本地,结果本地执行速度可以接受,服务器上就超慢;两个存储过程虽然没能直接解决问题但是可以解燃眉之急,而且两组数据也让前台客户觉得比较整洁)

晚些时候散分结贴噢~~~~~~
gogodiy 2011-04-13
  • 打赏
  • 举报
回复
服务器和本地数据表里的内容是不是一样多

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧