数据库突然变慢...索引作怪!

来源:互联网 发布:杨幂心机知乎 编辑:程序博客网 时间:2024/04/30 22:37
本人在最近发现,有些比容量较大的SQL数据库,在使用一段时间后,会突然变很慢很慢。特别体现在一些经常进行操作及查询的大表中。经过深入研究,这一般是索引的问题!如果把此表的索引重建一次,问题即可解决。

    为更好地解决此问题,建意在SQL中新建一个数据库维护计划,选中“重新组织数据各索引页”选项,并设置每天运行一次。

 


/*
    刷新数据库视图.sql
*/
ALTER  PROC P_RefreshView
as

DECLARE @vName sysname

DECLARE refresh_cursor CURSOR FOR
 SELECT Name from sysobjects WHERE xtype = 'V' order by crdate
FOR READ ONLY 
OPEN refresh_cursor

FETCH NEXT FROM refresh_cursor
INTO @vName
 WHILE @@FETCH_STATUS = 0
 BEGIN
--刷新指定视图的元数据。由于视图所依赖的基础对象的更改,视图的持久元数据会过期。
  exec sp_refreshview @vName
  PRINT '视图' + @vName + '已更新'
  FETCH NEXT FROM refresh_cursor
     INTO @vName
 END
CLOSE refresh_cursor
DEALLOCATE refresh_cursor

 

GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO