SQLSERVER是怎麽通过索引和统计信息来找到目标数据的,索引阐述系列八

一.概述  

  sql
server在高效查询值时唯有索引还不够,还索要驾驭操作要拍卖的数据量有稍许,从而臆想出复杂度,采取三个代价小的实行安插,这样sql
server就精通了数额的分布情状。索引的总计值音讯,还内置策略用来在并未索引的属性列上创设总结值。在有目录和未有索引的性质列上计算值消息会被电动爱戴。超越一半情景下不供给手动去爱戴总括音讯。
  
  成效是 sqlserver
查询优化器使用总括音信来创造可增进查询品质的询问陈设。
对于绝大多数询问,查询优化器已为高品质查询布署生成必需的总括消息。每种索引都会活动建立总计音信,
总计音信的准确性直接影响指令的速度,执行安排的挑选是依照总括消息。

  一.① 属性列总括值
  私下认可意况下,每当在1个询问的where子句中采纳非索引属性列时,sqlserver会自动地开创总括值,总计名称以_WA_Sys开头。

-- 查看表中非索引的统计信息
 sp_helpstats PUB_Search_Log

   如下所示:

 图片 1图片 2

  一.贰 自动更新总计消息的阀值

  在自动更新总括新闻选项 AUTO_UPDATE_STATISTICS 为 ON
时,查询优化器将分明总计消息几时可能过期。查询优化器通过计算自最终总计音讯更新后数据修改的次数并且将那一改动次数与某一阈值举行比较,分明计算音信什么日期或然过期。
  (一)倘诺在评估时间总括新闻时表基数为 500 或更低,则每达到 500
次修改时更新2遍。
  (贰)若是在评估时间总括音信时表基数大于 500,则变动每达到 500 +
2/10的行数更新二回(大表尤其要留意更新时间)

SQLSEEvoqueVE揽胜是怎麽通过索引和总结音信来找到对象数据的(第三篇)

 近来真的没有何样精力写小说,每日加班,为了达成那么些连串,硬着头皮上了

再看那篇小说此前请大家先看本身事先写的第一篇和第二篇

第一篇:SQLSE景逸SUVVE大切诺基是怎麽通过索引和总计新闻来找到对象数据的(第3篇)

第二篇:SQLSEHavalVE宝马7系是怎麽通过索引和总括音信来找到对象数据的(第1篇)

 

一、总括新闻的意义与效益

为了以尽量快的快慢完毕语句,光有目录是不够的。对于同一句话,SQLSE福睿斯VE福特Explorer有很多种主意来完结他。

稍微措施适合于数据量比较小的时候,某些措施适合于数据量比较大的时候。同1种艺术,在数据量不一样的时候,

复杂度会有丰富大的差距。索引只可以援助SQLSESportageVEHaval找到符合条件的笔录。SQLSETiguanVE昂科拉还索要理解每一种操作

所要处理的数据量有多少,从而估量出复杂度,选择四个代价最小的推行布置。说得深切浅出一点,SQLSELX570VEOdyssey要力所能及

通晓多少是“长得怎么样”的才能用最快方法成功指令

 

SQLSE索罗德VE奥迪Q5不像人,光看看数据就可见大体心情有数。那么怎麽能让SQL知道多少的分布音讯吗?

在数据库管理系列里有个常用的技巧,正是数量“总括消息(statistics)”

SQLSE翼虎VEENCORE正是通过她打听多少的遍布处境的

 

上边能够先来看前两篇小说的两张范例表在SalesOrderID那一个字段上的总结消息,以便对这些定义有点直观认识

dbo.SalesOrderHeader_test保存的是每张订单的准将新闻,一张订单只会有一条记下

就此SalesOrderID是不会再一次的。未来那张表里,应该有3147四条记下。SalesOrderID是一个int型的字段,

故此字段长度是四。

运行

1 DBCC SHOW_STATISTICS(tablename,INDEX OR STATISTICS name)
2 
3 DBCC SHOW_STATISTICS([SalesOrderHeader_test],SalesOrderHeader_test_CL)

图片 3

总结音信内容分三有的

一、总结消息头音信

       列名                              说明

      name                     总括消息的名称,那里正是索引的名字

     updated                  上一次立异总计消息的日子和时间。那里是12
1八 二零一三  一:1陆AM
                                 
 这么些时刻十二分重要,依据他能够判明总计新闻是怎么着时候更新的
                                 
 是还是不是在数据量产生变化之后,是还是不是存在总括消息不能够反映当前
                                   数据分布特点的题材

       rows                    
表中的行数。这里是31肆陆五行,无法一心完全正确地反映了当前表里数据量(因为总括音讯并未有霎时更新)

  rows sampled            
计算新闻的抽样行数那里也是31465,表达上次SQL更新总计音讯
                                  
的时候,对全部表里全体记录的SalesOrderID字段,都围观了3遍
                                  ,这样做出来的总计新闻一般都是很可信的

       steps                   
在计算音讯的第三有的,会把多少分为几组,那里是3组

      density                  第二个列前缀的接纳性(不包涵EQ_ROWS)

average key length      
全部列的平分长度,因为SalesOrderHeader_test_CL索引唯有一列数据类型是int,

                                   所以长度是四(单位是字节),假设索引有八个列,各样列的数据类型都不一致,

                                   比如再有一个列colc char(10)
那么平均长度是(10+4)/二=7

     string index            
假设为“是”,则总括消息中蕴涵字符串摘要索引,以支撑为LIKE条件
                                  
估算结果集大小。仅适用于char,varchar,nchar和nvarchar,varchar(max)
                                   nvarchar(max),text,ntext
数据类型的前导列。那里是int,所以这一个值是“NO”

 

2、数据字段的选拔性
           列名                                说明

all density                反映索引列的选取性(selectivity)
                             
“选择性”反映数据集里重复的数据量是稍微,恐怕反过来说,值唯一的数据量
                             
有微微。假使贰个字段的数据很少有重复,那么她的可选取性就比较高。比如
                             
身份证号,是不足重复的。哪怕对总体中华的地位记录做询问,代入一个身份证编号
                             
最五只会有一条记下再次来到,在如此的字段上的过滤条件,能够使得地过滤掉大批量数目
                              重回的结果集会比较小
                             
举个相反的事例:性别。全部人只有二种,非男即女。那个字段上的重复性就很高
                             
选用性就非常低。三个过滤条件,最三只好过滤掉八分之四的笔录
                             
SQL通过估测计算“选择性”,使得自身能够预测1个过滤条件做完后,差不离能有多少记录
                              再次回到 Density的概念是: density =
1/cardinality of index keys
                             
假如那些值小于0.一,一般讲那些目录的选用性相比高,借使当先0.一,他的采纳性
                             
就不高了。那里[SalesOrderHeader_test]有3147四条未有重新的笔录
                              百分之三十三1474 = 三.17柒e-5那个字段的选用性是科学的

       average length        索引列的平均长度,那里照旧四

        columns                 索引列的称谓,那里是字段名 SalesOrderID

 

从这1某个的音讯,可以想见出总结信息所关怀的字段的尺寸,以及她有些许条唯一值。不过这个信息对SQLSERubiconVE奇骏预测结果集复杂度还不够。

诸如作者后天要查2个SalesOrderID=伍仟0的订单,照旧不明了会有稍许记录重回。那里要求第一片段的音讯

 

3、直方图(histogram)
         列名                                   说明
     range_hi_key                直方图里每1组(step)数据的最大值
                                      
 订单号的小中号码在表格里是4365玖,那里SQL选用她看成第一个step
                                        的最大值,三组数据分别是 ~43659 
43660~75131   75132~75132

     range_rows                  直方图里每组数据区间行数,上限值除了那些之外第一组唯有三个数:4365玖
                                       
第贰组也只有一个数:75132,别的数据都在第2组里,区间里有31四七10个数

      EQ_ROWS                   表中值与直方图每组数据上限值相等的行数目
那里都以一

distinct_range_rows           直方图里每组数据区间非重复值的多寡,上限值除此而外由于那么些字段未有重复值,所以这边
就等于range_rows的值

  avg_range_rows             
直方图里每组数据区间内重复值的平平均数量据,上限值除此之外。总计公式
                                     
(range_rows/distinct_range_rows for distinct_range_rows>0)
                                    
 这里distinct_range_rows的值就等于range_rows的值,所以avg_range_rows等于1

 

有那麽贰个直方图,就可见很好地了解表格里的数据分布了。在SalesOrderID那个字段里,最小值是43659,

最大值是7513二,在那个距离里有31四七17个值,而且从不重复值,所以能够推算出表里的值正是从4365玖方始到7513二结束的每一种int值。

SQL未有供给存款和储蓄很多step的音讯,只要那贰个step,就可见统统一发布挥数据分布

 

此地要注明两点的是:

(壹)倘若贰个总计音信是为壹组字段建立的,例如一个复合索引建立在多少个以上的字段上,SQLSESportageVEQX5六维护所有字段的选拔性音信,

唯独只会维护第三个字段的直方图。因为第3个字段的行数正是整张表的行数,尽管那么些字段在某条记下里为null,SQLSEENCOREVE大切诺基也会做计算

(二)当表格相比较大的时候,SQLSEPRADOVE中华V在更新总结音信的时候为了降耗,只会取表格的一部分数据做抽样(rows
sample),

那时候总计音讯里面包车型大巴数额都以基于这几个抽样数据估摸出来的值大概和真实性值会略带差异

 

总结音讯越细致,当然会越规范,然则保护总结音信要付出的额外费用也就越大。有相当的大可能率增强总括音讯精确度所拉动的实施品质的升官

还抵消不了维护总结音信成本的充实。
SQLSE奥迪Q7VE汉兰达做那样的统一筹划,不是因为其能力有限,而是为了寻求3个对大部分景观都方便的平衡

 

——————————————-计算音信的护卫和翻新———————————

当SQLSETiguanVETucson供给去估计有个别操作的复杂度时,他必然要总结去探寻对应的总结新闻做支撑。

DBA不恐怕预估SQLSEKoleosVELAND会运营什么样的操作,所以也无能为力预估SQLSE昂CoraVE猎豹CS六恐怕须要哪些的总结新闻

壹经靠人工来树立和保险计算消息,这将是1个卓殊复杂的工程。还好SQLSE福睿斯VE奥迪Q叁不是那样设计的

在大部状态下,SQLSERAV肆VE安德拉自个儿会很好地珍惜和更新总括新闻,用户宗旨未有觉得,DBA也绝非额外的承负。

那根本是因为在SQLSELANDVE逍客
数据库属性里,有三个私下认可打开的安装

auto create statistics 自动创制总结音信

auto update statistics自动更新计算音信

她俩力所能及让SQLSESportageVE纳瓦拉在急需的时候自动建立要用到的总计音讯,也能在意识总括音讯过时的时候,自动去立异她

图片 4

 

SQLSEPAJEROVE讴歌MDX会在什么样状态下开创总计消息呢?

主要有3种情况

(一)在目录创立时,SQLSE科雷傲VEPAJERO会自动在目录所在的列上创制总结信息,所以从某种角度讲,索引的法力是双重的,

他本身力所能及帮衬SQLSELX570VE宝马X5急速找到数据,而她方面包车型地铁总结新闻,也可以告诉SQLSEQashqaiVE福特Explorer数据的分布情状

补给一下:索引重建的时候也会更新表的总结消息,所以有时查询变慢的时候重建一下索引查询变快了总计音信的创新也是原因之一

 

(2)DBA也得以透过之类的言语手动创设他觉得供给的总括讯息 CREATE
STATISTICS

只要打开了auto create
statistics自动创立总括消息,1般来讲很少必要手动创制

 

(3)当SQSE凯雷德VE景逸SUVL想要使用1些列上的总计新闻,发现并未有的时候,“auto create
statistics 自动创制总括音信”

会让SQLSE奥迪Q3VELX570自动成立总计消息

譬如,当语句要在有些(只怕几个)字段上做过滤,或然要拿他们和别的一张表做衔接(join)
SQLSEGL450VE大切诺基要审时度势最终从这张表会再次来到多少记录。

此时就须求3个总计音讯的支撑。如若未有,SQLSERAV四VELAND会自动创造多个

 

在开辟“auto create statistics
自动成立总计消息”的数据库上,一般不须要担心SQLSE卡宴VEKuga未有丰裕的计算消息来摘取执行布置。

那一点完全交给SQLSE大切诺基VE大切诺基管理就能够了

 

创新总括音讯

SQLSE昂科拉VE奥德赛不仅要树立适合的总括音信,还要立时更新他们,使他们能够突显表格里多少的变化数据的插入、删除、修改都大概会引起计算消息的换代。

不过,更新计算音讯本身也是1件消耗电源的事情,尤其是对比较大的表格。假如有一丝丝小的改动SQLSEKugaVRAV四都要去创新总结信息,

恐怕SQLSE君越VE路虎极光就得光忙活那个,来不如做任何业务了。SQLSE普拉多VEEvoque依然要在总计音讯的准确度和财富合理消耗之间做八个平衡。

在SQL二零零五/SQL二零零六,触发总计消息自动更新的原则是:

(1)就估量算新闻是概念在普通表格上,那么当产生上面变化之一后,总结消息就被认为是不合时宜的了。下次选拔到时,会自行触发一个更新动作

离别数据库的时候,也能够手动选取是不是更新计算新闻

 一、表格从不曾数量变成有抢先等于一条多少

二、对于数据量小于500行的报表,当总结新闻的第二个字段数据累计变化量大于500随后

3、对于数据量大于500行的表格,当总括新闻的首先个字段数据累计变化量大于
–500+(伍分一*报表数据总量)未来。所以对于相比较大的表,

只有1/五之上的数额产生变化后 –SQL才会去重估摸算信息

 

(2)近年来表(temp
table)上得以有总结音信。其保险政策基本和普通表壹致。 不过表变量(table
variable)上不可能成立总括音讯

 

诸如此类的保证政策能够保障消费比较小的代价,确定保障计算音信中央科学

 

SQL三千和SQL200伍在更新计算信息的方针上的界别:

在SQLSE途睿欧VESportage三千的时候,如若SQLSEMuranoV揽胜在编写翻译2个言语时意识有些表的某部总结新闻已经过时,

他会暂停语句的编写翻译,转去更新总括音信,等总计音信更新好之后,用新的消息来做执行陈设。那样的格局

自然能够辅助得到贰个更规范的施行布置,然则缺点是语句执行要等总结音信更新实现。那几个历程有点困难。

在大部动静下,语句执行功能对总结消息尚未那么敏感。假使用老的总结消息也能做出比较好的实施安排,

那边的守候就白等了

 

从而在SQLSE福睿斯VEPRADO2005现在,数据库属性多了一个“auto update statistics
asynchronously自动异步更新计算音讯”

图片 5

当SQLSEKoleosVE奇骏发现有些总结音信过时时,他会用老的总计音信接轨未来的询问编写翻译,不过会在后台运营3个义务,更新这几个总括音信。

那样下二回总括消息被应用到时,就早已是2个革新过的版本。那样做的缺点是,无法保障当前那句询问的施行陈设准确性。

全体有利有弊,DBA能够依据真实意况做取舍

 

写完了,也许篇幅非常短,然而并未有主意,大部分剧情都以首尾呼应,未有前边的反衬大概看不懂下边包车型大巴内容

 

 


2013-8-25 补充:

壹经急需革新某张表的总括音信,使用下边包车型客车SQL语句

1 USE [pratice] --需要更新统计信息的数据库
2 GO
3 
4 UPDATE STATISTICS tableA
5 GO

假如急需立异任何数据库的总结音信,使用上面包车型大巴SQL语句,不带参数

1 USE [pratice] --需要更新统计信息的数据库
2 GO
3 EXEC [sys].[sp_updatestats] --@resample = '' -- char(8)
4 GO

图片 6图片 7

  1 正在更新 [dbo].[testpivot]
  2     [_WA_Sys_00000001_0425A276],不需要更新...
  3     [_WA_Sys_00000002_0425A276],不需要更新...
  4     已更新 0 条索引/统计信息,2 不需要更新。
  5  
  6 正在更新 [dbo].[Users]
  7     [IX_UserID],不需要更新...
  8     [_WA_Sys_00000002_08EA5793],不需要更新...
  9     [_WA_Sys_00000003_08EA5793],不需要更新...
 10     [_WA_Sys_00000004_08EA5793],不需要更新...
 11     [_WA_Sys_00000005_08EA5793],不需要更新...
 12     已更新 0 条索引/统计信息,5 不需要更新。
 13  
 14 正在更新 [dbo].[TABLE1]
 15     [INDEX_ID],不需要更新...
 16     [INDEX_CATEGORYID],不需要更新...
 17     已更新 0 条索引/统计信息,2 不需要更新。
 18  
 19 正在更新 [dbo].[TABLE2]
 20     [INDEX_CATEGORYID],不需要更新...
 21     已更新 0 条索引/统计信息,1 不需要更新。
 22  
 23 正在更新 [dbo].[Orders]
 24     [_WA_Sys_00000005_0EA330E9],不需要更新...
 25     已更新 0 条索引/统计信息,1 不需要更新。
 26  
 27 正在更新 [dbo].[Department]
 28     [CL_DepartmentID],不需要更新...
 29     已更新 0 条索引/统计信息,1 不需要更新。
 30  
 31 正在更新 [dbo].[UserInfo]
 32     已更新 0 条索引/统计信息,0 不需要更新。
 33  
 34 正在更新 [dbo].[tb_test]
 35     已更新 0 条索引/统计信息,0 不需要更新。
 36  
 37 正在更新 [dbo].[Department9]
 38     [NCL_Name_GroupName],不需要更新...
 39     已更新 0 条索引/统计信息,1 不需要更新。
 40  
 41 正在更新 [dbo].[bulkinserttest]
 42     已更新 0 条索引/统计信息,0 不需要更新。
 43  
 44 正在更新 [dbo].[SystemPara]
 45     [_WA_Sys_00000001_173876EA],不需要更新...
 46     [_WA_Sys_00000002_173876EA],不需要更新...
 47     [_WA_Sys_00000004_173876EA],不需要更新...
 48     已更新 0 条索引/统计信息,3 不需要更新。
 49  
 50 正在更新 [dbo].[TB]
 51     [_WA_Sys_00000001_178D7CA5],不需要更新...
 52     [_WA_Sys_00000002_178D7CA5],不需要更新...
 53     [_WA_Sys_00000003_178D7CA5],不需要更新...
 54     已更新 0 条索引/统计信息,3 不需要更新。
 55  
 56 正在更新 [dbo].[SQLTRACESAMPLE]
 57     已更新 0 条索引/统计信息,0 不需要更新。
 58  
 59 正在更新 [dbo].[HeapTable]
 60     [_WA_Sys_00000001_1A69E950],不需要更新...
 61     已更新 0 条索引/统计信息,1 不需要更新。
 62  
 63 正在更新 [dbo].[testcolumn]
 64     已更新 0 条索引/统计信息,0 不需要更新。
 65  
 66 正在更新 [dbo].[encrypttb_demo]
 67     已更新 0 条索引/统计信息,0 不需要更新。
 68  
 69 正在更新 [dbo].[ClusteredTable]
 70     [CIX],不需要更新...
 71     已更新 0 条索引/统计信息,1 不需要更新。
 72  
 73 正在更新 [dbo].[test23]
 74     已更新 0 条索引/统计信息,0 不需要更新。
 75  
 76 正在更新 [dbo].[Table_1]
 77     [_WA_Sys_00000002_2022C2A6],不需要更新...
 78     [_WA_Sys_00000001_2022C2A6],不需要更新...
 79     已更新 0 条索引/统计信息,2 不需要更新。
 80  
 81 正在更新 [dbo].[Department10]
 82     [NCL_Name_GroupName],不需要更新...
 83     [_WA_Sys_00000003_2116E6DF],不需要更新...
 84     已更新 0 条索引/统计信息,2 不需要更新。
 85  
 86 正在更新 [dbo].[BankUser]
 87     [PK__BankUser__236943A5],不需要更新...
 88     已更新 0 条索引/统计信息,1 不需要更新。
 89  
 90 正在更新 [dbo].[PWDQuestion]
 91     [PK__PWDQuestion__2645B050],不需要更新...
 92     已更新 0 条索引/统计信息,1 不需要更新。
 93  
 94 正在更新 [dbo].[fulltext_test]
 95     [UQ__fulltext_test__28B808A7],不需要更新...
 96     [IX_ID],不需要更新...
 97     已更新 0 条索引/统计信息,2 不需要更新。
 98  
 99 正在更新 [dbo].[tabelcheckindent]
100     [PK_tabelcheckindent],不需要更新...
101     已更新 0 条索引/统计信息,1 不需要更新。
102  
103 正在更新 [dbo].[SecretInfo]
104     已更新 0 条索引/统计信息,0 不需要更新。
105  
106 正在更新 [dbo].[Insert_Test]
107     [_WA_Sys_00000001_2A164134],不需要更新...
108     已更新 0 条索引/统计信息,1 不需要更新。
109  
110 正在更新 [dbo].[TestInsert]
111     [PK__TestInsert__2B3F6F97],不需要更新...
112     已更新 0 条索引/统计信息,1 不需要更新。
113  
114 正在更新 [dbo].[RowToColumn]
115     [_WA_Sys_00000001_2C3393D0],不需要更新...
116     [_WA_Sys_00000002_2C3393D0],不需要更新...
117     [_WA_Sys_00000003_2C3393D0],不需要更新...
118     [_WA_Sys_00000004_2C3393D0],不需要更新...
119     [_WA_Sys_00000005_2C3393D0],不需要更新...
120     [_WA_Sys_00000006_2C3393D0],不需要更新...
121     [_WA_Sys_00000007_2C3393D0],不需要更新...
122     [_WA_Sys_00000008_2C3393D0],不需要更新...
123     已更新 0 条索引/统计信息,8 不需要更新。
124  
125 正在更新 [dbo].[Insert_Test2]
126     [PK__Insert_Test2__2DE6D218],不需要更新...
127     已更新 0 条索引/统计信息,1 不需要更新。
128  
129 正在更新 [dbo].[pagediff]
130     已更新 0 条索引/统计信息,0 不需要更新。
131  
132 正在更新 [dbo].[DP_OilCanOption]
133     [_WA_Sys_00000001_31EC6D26],不需要更新...
134     [_WA_Sys_00000002_31EC6D26],不需要更新...
135     已更新 0 条索引/统计信息,2 不需要更新。
136  
137 正在更新 [dbo].[DBCCResult]
138     [_WA_Sys_00000002_32767D0B],不需要更新...
139     [_WA_Sys_0000000A_32767D0B],不需要更新...
140     已更新 0 条索引/统计信息,2 不需要更新。
141  
142 正在更新 [sys].[fulltext_catalog_freelist_16]
143     [docid],不需要更新...
144     已更新 0 条索引/统计信息,1 不需要更新。
145  
146 正在更新 [sys].[fulltext_index_map_667149422]
147     [i1],不需要更新...
148     [i2],不需要更新...
149     [i3],不需要更新...
150     [i4],不需要更新...
151     已更新 0 条索引/统计信息,4 不需要更新。
152  
153 正在更新 [dbo].[计算列]
154     已更新 0 条索引/统计信息,0 不需要更新。
155  
156 正在更新 [dbo].[LobTestTable]
157     [_WA_Sys_00000003_351DDF8C],不需要更新...
158     已更新 0 条索引/统计信息,1 不需要更新。
159  
160 正在更新 [dbo].[LobIndexTestTable]
161     [IX_LobIndexTestTable],不需要更新...
162     [IX_LobCIndexTestTable],不需要更新...
163     已更新 0 条索引/统计信息,2 不需要更新。
164  
165 正在更新 [dbo].[Department3]
166     [CL_DepartmentID],不需要更新...
167     已更新 0 条索引/统计信息,1 不需要更新。
168  
169 正在更新 [dbo].[LobCIndexTestTable]
170     [IX_LobCIndexTestTable],不需要更新...
171     已更新 0 条索引/统计信息,1 不需要更新。
172  
173 正在更新 [dbo].[Department4]
174     [PK_Department4_1],不需要更新...
175     [_WA_Sys_00000002_3A179ED3],不需要更新...
176     已更新 0 条索引/统计信息,2 不需要更新。
177  
178 正在更新 [dbo].[testheap2013119]
179     已更新 0 条索引/统计信息,0 不需要更新。
180  
181 正在更新 [dbo].[Department5]
182     [CL_Company],不需要更新...
183     [_WA_Sys_00000002_3CF40B7E],不需要更新...
184     [_WA_Sys_00000001_3CF40B7E],不需要更新...
185     已更新 0 条索引/统计信息,3 不需要更新。
186  
187 正在更新 [dbo].[TESTkeylock]
188     [PK_TEST11],不需要更新...
189     已更新 0 条索引/统计信息,1 不需要更新。
190  
191 正在更新 [dbo].[Department6]
192     [PK_Department6_1],不需要更新...
193     已更新 0 条索引/统计信息,1 不需要更新。
194  
195 正在更新 [dbo].[ChangeAttempt]
196     已更新 0 条索引/统计信息,0 不需要更新。
197  
198 正在更新 [dbo].[Department2]
199     [PK__Department2__467D75B8],不需要更新...
200     [_WA_Sys_00000003_4589517F],不需要更新...
201     已更新 0 条索引/统计信息,2 不需要更新。
202  
203 正在更新 [dbo].[tempPKNCL]
204     [PK__tempPKNCL__46E78A0C],不需要更新...
205     已更新 0 条索引/统计信息,1 不需要更新。
206  
207 正在更新 [dbo].[test_index]
208     [PK__test_index__489AC854],不需要更新...
209     已更新 0 条索引/统计信息,1 不需要更新。
210  
211 正在更新 [dbo].[ddl_log]
212     [_WA_Sys_00000002_48CFD27E],不需要更新...
213     [_WA_Sys_00000003_48CFD27E],不需要更新...
214     [_WA_Sys_00000004_48CFD27E],不需要更新...
215     [_WA_Sys_00000005_48CFD27E],不需要更新...
216     已更新 0 条索引/统计信息,4 不需要更新。
217  
218 正在更新 [dbo].[Tmp_testComputeColumn]
219     已更新 0 条索引/统计信息,0 不需要更新。
220  
221 正在更新 [dbo].[test1]
222     [PK_test1],不需要更新...
223     已更新 0 条索引/统计信息,1 不需要更新。
224  
225 正在更新 [dbo].[test13]
226     [pk],不需要更新...
227     已更新 0 条索引/统计信息,1 不需要更新。
228  
229 正在更新 [dbo].[Department8]
230     [NCL_Name_GroupName],不需要更新...
231     [_WA_Sys_00000001_52E34C9D],不需要更新...
232     [_WA_Sys_00000003_52E34C9D],不需要更新...
233     已更新 0 条索引/统计信息,3 不需要更新。
234  
235 正在更新 [dbo].[Department12]
236     [PK__Department12__7167D3BD],不需要更新...
237     [NCL_Name_GroupName],不需要更新...
238     已更新 0 条索引/统计信息,2 不需要更新。
239  
240 正在更新 [dbo].[CompareNonclusteredScan]
241     [_WA_Sys_00000003_73501C2F],不需要更新...
242     已更新 0 条索引/统计信息,1 不需要更新。
243  
244 正在更新 [dbo].[Department13]
245     [PK__Department13__762C88DA],不需要更新...
246     [NCL_Name_GroupName],不需要更新...
247     [_WA_Sys_00000003_753864A1],不需要更新...
248     已更新 0 条索引/统计信息,3 不需要更新。
249  
250 正在更新 [sys].[queue_messages_1977058079]
251     [queue_clustered_index],不需要更新...
252     [queue_secondary_index],不需要更新...
253     已更新 0 条索引/统计信息,2 不需要更新。
254  
255 正在更新 [dbo].[Department11]
256     [PK__Department11__7908F585],不需要更新...
257     [NCL_Name_GroupName],不需要更新...
258     已更新 0 条索引/统计信息,2 不需要更新。
259  
260 正在更新 [sys].[queue_messages_2009058193]
261     [queue_clustered_index],不需要更新...
262     [queue_secondary_index],不需要更新...
263     已更新 0 条索引/统计信息,2 不需要更新。
264  
265 正在更新 [sys].[queue_messages_2041058307]
266     [queue_clustered_index],不需要更新...
267     [queue_secondary_index],不需要更新...
268     已更新 0 条索引/统计信息,2 不需要更新。
269  
270 正在更新 [dbo].[Demo_AExportHeader]
271     已更新 0 条索引/统计信息,0 不需要更新。
272  
273 正在更新 [dbo].[table_a]
274     [_WA_Sys_00000001_7B905C75],不需要更新...
275     已更新 0 条索引/统计信息,1 不需要更新。
276  
277 正在更新 [dbo].[tableA]
278     [_WA_Sys_00000002_7E6CC920],不需要更新...
279     已更新 0 条索引/统计信息,1 不需要更新。
280  
281 已更新了所有表的统计信息。

View Code

 

网站地图xml地图