相同的存储过程在SQL Server中执行的时间不同

时间:2012-01-23 12:33:56

标签: sql sql-server xml stored-procedures

我遇到了Sql Server中存储过程之一的问题。

在一个数据库中,存储过程大约需要27分04秒才能执行一个XML。此SP的基本功能是在采用XML输入的不同表中插入/更新数据。同一个SP只花了一分半钟在不同的数据库中执行相同的XML。

我们在一个月前创建了数据库备份,当我在备份数据库中执行相同输入的SP时,它也花了1分04秒。所以任何人都可以告诉我应该在当前数据库和备份数据库之间进行检查,因为这个问题非常奇怪,而且在我当前的数据库中似乎有些东西在我不知情的情况下最近发生了变化。

1 个答案:

答案 0 :(得分:6)

  • 统计数据是最新的? exec sp_updatestats 'RESAMPLE'
  • 受影响的表格中的数据量略有不同?
  • 重建索引exec sp_msforeachtable 'alter index all on ? rebuild'
  • 受影响的桌子上有新的索引吗?

更新

  • 数据库/表格有不同的负载吗?
  • 任何其他维护任务?

PS:所有建议的代码都是针对Sql Server的