sql server 2008怎么用SQL语句查询索引碎片 20

从网上搜了这个,但是不行,求大神指点!!SELECT*FROMsys.dm_db_index_physical_stats(DB_ID(),OBJECT_ID('tabl... 从网上搜了这个,但是不行,求大神指点!!SELECT * FROM sys.dm_db_index_physical_stats(DB_ID(),OBJECT_ID ('table_name'),null,null,null)
如果能给出重新生成索引的SQL语句,本人将倾囊相谢!!
展开
 我来答
最爱妈咪yun
2015-05-27 · 超过91用户采纳过TA的回答
知道答主
回答量:118
采纳率:0%
帮助的人:146万
展开全部

检查索引的碎片的步骤:
1. 在“对象资源管理器”中,连接到 数据库引擎的实例。 
2. 在标准菜单栏上,单击“新建查询”。 
3. 将以下示例复制并粘贴到查询窗口中,然后单击“执行”。

USE AdventureWorks2012;

GO

-- Find the average fragmentation percentage of all indexes

-- in the HumanResources.Employee table. 

SELECT a.index_id, name, avg_fragmentation_in_percent

FROM sys.dm_db_index_physical_stats (DB_ID(N'AdventureWorks2012'), OBJECT_ID(N'HumanResources.Employee'), NULL, NULL, NULL) AS a

    JOIN sys.indexes AS b ON a.object_id = b.object_id AND a.index_id = b.index_id; 

GO

重新组织碎片索引
1. 在“对象资源管理器”中,连接到 数据库引擎的实例。 
2. 在标准菜单栏上,单击“新建查询”。 
3. 将以下示例复制并粘贴到查询窗口中,然后单击“执行”。

USE AdventureWorks2012; 

GO

-- Reorganize the IX_Employee_OrganizationalLevel_OrganizationalNode index on the HumanResources.Employee table. 


ALTER INDEX IX_Employee_OrganizationalLevel_OrganizationalNode ON HumanResources.Employee

REORGANIZE ; 

GO

参考文档: https://msdn.microsoft.com/zh-cn/library/ms189858.aspx?

追问

你说的这个我试过,但也是提示错误,不知道语句哪里写错了

追答
改成N'FreeDetail'试试,参照上面给的sample。
百度网友d9b156865
2015-05-27 · TA获得超过165个赞
知道小有建树答主
回答量:384
采纳率:33%
帮助的人:191万
展开全部
你去做个维护计划,就知道了么
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式