博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQLServer批量重建索引(整理)
阅读量:4210 次
发布时间:2019-05-26

本文共 699 字,大约阅读时间需要 2 分钟。

SQLServer批量重建索引(整理)

当SQLServer的数据积累到一定的数量,查询效率往往急剧下降,常常让人无法忍受,这时我们会想到各种方法对系统进行优化。DBCC是一组功能强大的控制台命令,其中DBCC DBREINDEX经常用到,它可以帮助我们重建指定表的索引,以提高查询的速度。

该命令的用法比较简单,比如:

dbcc dbreindex ([customer],'',90)

第一个参数是要重建索引的表名,第二个参数指定索引名称,空着就表示所有,第三个参数叫填充因子,是指索引页的数据填充程度,0表示使用先前的值,100表示每个索引页都填满,这时查询效率最高,但插入索引时会移动其它索引,可根据实际情况来设置。

这个命令只能操作单个表,如果想对某数据库中的所有表都重建索引,则需要写个程序:

[sql] view plain copy

USE MyDB;  
DECLARE @name varchar(100)  
  
DECLARE authors_cursor CURSOR FOR    
Select [name]   from sysobjects where xtype='u' order by id  
  
OPEN authors_cursor  
  
FETCH NEXT FROM authors_cursor  INTO @name  
  
WHILE @@FETCH_STATUS = 0   
BEGIN      
  
   DBCC DBREINDEX (@name, '', 90)  
  
   FETCH NEXT FROM authors_cursor    
   INTO @name   
END  
  
deallocate authors_cursor  

转载地址:http://rwrli.baihongyu.com/

你可能感兴趣的文章
js表格求和的方法
查看>>
T4MVC的其中解决bug的方法
查看>>
Oracle的学习网址:
查看>>
搭建你的Spring.Net+Nhibernate+Asp.Net Mvc 框架 (二)创建你的项目
查看>>
txt、excel等导入数据的网址,未总结:
查看>>
txt的连接字符串—txt文本中内容转换为datatable—及连接字符串的网址
查看>>
Entity Framework First Code 的一些网址
查看>>
linq 的查询的学习 (google 中输入 101 linq) -- select的应用
查看>>
Sql中 union all 的用法
查看>>
j-query中 live方法的应用
查看>>
加载IE9 不支持 3D, 但IE10支持3D
查看>>
用sql脚本 来查询指定表的所有列名称
查看>>
php 中 查询数据前五条
查看>>
解决 Asp.net 中,url传参乱码 方法之一:(UrlDecode)
查看>>
在Asp.net中,(Entityframework,Linq的写法中) .ToList().Take(10)与.Take(10).ToList() 的区别
查看>>
在Asp.net中,Web.Config中 membership 及 roleManager 的配置:
查看>>
打开php的方法 或 工具
查看>>
HTTP 错误 403
查看>>
Js - 可拖动可改变大小div的实现代码
查看>>
网页中抓取数据 搜索 获取以下的网址
查看>>