手机
当前位置:查字典教程网 >编程开发 >mssql数据库 >解决SQL Server 表或索引的碎片问题
解决SQL Server 表或索引的碎片问题
摘要:对表进行长期的修改或删除会产生大量的碎片,影响数据库性能。解决办法就是把表或索引重建,消除碎片,达到优化的目的。直接上代码:/*查询碎片,a...

对表进行长期的修改或删除会产生大量的碎片,影响数据库性能。解决办法就是把表或索引重建,消除碎片,达到优化的目的。

直接上代码:

/*查询碎片,avg_fragmentation_in_percent就是索引占的百分比,大于30都是不正常的,需要重建*/

DECLARE @db_id int;

DECLARE @object_id int;

SET @db_id = DB_ID(N'AdventureWorks2008R2');

SET @object_id = OBJECT_ID(N'AdventureWorks2008R2.Person.Address');

IF @db_id IS NULL

BEGIN;

PRINT N'Invalid database';

END;

ELSE IF @object_id IS NULL

BEGIN;

PRINT N'Invalid object';

END;

ELSE

BEGIN;

SELECT * FROM sys.dm_db_index_operational_stats(@db_id, @object_id, NULL, NULL);

END;

GO

/*重建表*/

alter table <表名> rebuild

/*重建索引*/

alter index <索引名> ON <表名> rebuild

【解决SQL Server 表或索引的碎片问题】相关文章:

SQL2005 大数据量检索的分页

在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器

SQL Server 2005 还原数据库错误解决方法

SQL Server下几个危险的扩展存储过程

SQLServer2005 评估和管理索引

sql server连接不上怎么办 SQL Server2008R无法登录的解决方案(181418456)

SQLServer中批处理的知识点

SQL Server 2005中的外联结用法

提升SQL Server速度 整理索引碎片

SQL Server 2008 R2数据库镜像部署图文教程

精品推荐
分类导航