45IT.COM- 电脑学习从此开始!
DIY硬件教程攒机经验装机配置
设计Photoshop网页设计特效
系统注册表DOS系统命令其它
存储主板显卡外设键鼠内存
维修显卡CPU内存打印机
WinXPVistaWin7unix/linux
CPU光驱电源/散热显示器其它
修技主板硬盘键鼠显示器光驱
办公ExcelWordPowerPointWPS
编程数据库CSS脚本PHP
网络局域网QQ服务器
软件网络系统图像安全
页面导航: 首页 > 设计学院 > 网络编程 > 数据库 >

SQL语句查询SQL2005所有表的索引碎片的方法

电脑软硬件应用网 45IT.COM 时间:2010-04-29 08:21 作者:网络收集

MSSQL 2005 提供了一个动态管理函数 sys.dm_db_index_physical_stats,可以方便直观地查看到指定表或视图的数据和索引的大小和碎片信息。

下面这条语句,可以查看当前数据库中所有索引的碎片情况:

SELECT object_name(a.object_id) [TableName] ,a.index_id ,name [IndexName] ,avg_fragmentation_in_percent FROM sys.dm_db_index_physical_stats ( DB_ID() , NULL , NULL, NULL, NULL ) AS a JOIN sys.indexes AS b ON a.object_id = b.object_id AND a.index_id = b.index_id

下面这条语句重建索引:

ALTER INDEX ALL ON [dbo].[YourTableName] REBUILD WITH ( SORT_IN_TEMPDB = ON ,STATISTICS_NORECOMPUTE = ON ,ONLINE = ON);

顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
无法在这个位置找到: baidushare.htm
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码:点击我更换图片
推荐知识