国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

實用SQL: 通過向表加clusted索引重整數據庫

2024-07-21 02:07:31
字體:
來源:轉載
供稿:網友
,歡迎訪問網頁設計愛好者web開發。
--
--   arrangedb.sql 重整數據庫
--
--   copyrights @2003.12.29 digital china management system co., ltd.
--
-- 重整流程:把所有用戶表增加 clustered 索引,這樣sql server會重整表,然后
-- 再刪除索引
--
-- 使用時機:日常維護,建議每周做一次重整。
--
-- 注意事項:做完后請做數據庫收縮,更新統計,重新索引,及完整性檢查 

--drop table #dcms_index_info
--要用到的臨時表
create table #dcms_index_info
(
  index_name sysname,
  index_description varchar(210),
  index_keys varchar(2078)
)

--設置環境
set nocount on
--程序開始:變量
declare @sql varchar(500)
declare @tablename varchar(20)
declare @errorsave int

--用所有的用戶表處理
declare cursor1 cursor
for
 select name from sysobjects where xtype='u' order by name

open cursor1
fetch next from cursor1 into @tablename

while @@fetch_status = 0
begin
 --為了檢測表中是不是有create_date這個列,易飛的表中都有,如果沒有就跳過,不過處理
 --應該還有更好的方法,我暫時這樣用了。不想用sp_columns因為不想建表,慢就慢點吧
 if columnproperty(object_id(@tablename),'create_date','precision') is not null
 begin
  print 'process table ' + @tablename

  --取得當前表的索引信息
  delete #dcms_index_info
  set @sql = ' sp_helpindex ''' + @tablename + ''' '
  insert into #dcms_index_info exec (@sql)

  --查找是不是已經有聚簇索引(clustered),如果已經有了就不做,在易飛中有clustered索引是少數
  select index_name from #dcms_index_info where index_description like 'clustered%'

  if @@rowcount = 0
  begin
   set @sql = ' create clustered index dctempindex001 on ' + @tablename + ' ( create_date ) '
   exec (@sql)

   set @sql = ' drop index ' + @tablename + '.dctempindex001 '
   exec (@sql)
  end
 end

 fetch next from cursor1 into @tablename
end
 
drop table #dcms_index_info
close cursor1
deallocate cursor1

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新昌县| 宣恩县| 花莲县| 青州市| 彭阳县| 当雄县| 普安县| 海兴县| 聊城市| 哈尔滨市| 鲁甸县| 巴林左旗| 安义县| 鄢陵县| 成武县| 怀来县| 凤凰县| 开原市| 台北县| 淳安县| 于田县| 长寿区| 广宁县| 广平县| 太谷县| 新安县| 绵阳市| 温宿县| 宝清县| 乌拉特前旗| 岫岩| 木兰县| 宜黄县| 中阳县| 焉耆| 阿巴嘎旗| 监利县| 佛冈县| 汝南县| 马山县| 平邑县|