"

                                        ✅万博manbext|体育首页✅㊣全球最大,最信誉的线上综合平台✅万博manbext|体育首页✅千款游戏,砖石级服务,万博manbext|体育首页,欢迎各界玩家加入体验!

                                                                              "
                                                                              中培教育IT资讯频道
                                                                              您现在的位置:万博manbext|体育首页 > IT资讯 > 数据库 > 数据的三种索引方式

                                                                              数据的三种索引方式

                                                                              2021-06-23 08:40:48 | 来源:中培企业IT培训网

                                                                              通过前面一些对数据库文章的介绍万博manbext|体育首页万博manbext|体育首页,想必你也应该对数据库有了初步的了解万博manbext|体育首页万博manbext|体育首页。而数据库的几大检索方法今天想要和大家具体介绍介绍。堆万博manbext|体育首页万博manbext|体育首页、簇索引万博manbext|体育首页万博manbext|体育首页、非簇索引可能大家和小编一样陌生万博manbext|体育首页万博manbext|体育首页万博manbext|体育首页。不同的索引有着不同的特点。以及不同的优缺点万博manbext|体育首页。在使用不同的软件时万博manbext|体育首页,会有不同的检索方式所使用万博manbext|体育首页万博manbext|体育首页万博manbext|体育首页。在这个瞬息万变的时代背景下万博manbext|体育首页,数据库也在马不停蹄地更新以及发挥它独特的价值和作用万博manbext|体育首页。

                                                                              一万博manbext|体育首页、堆

                                                                              1、sqlserver在sysindexes表中查到对应的数据行

                                                                              2万博manbext|体育首页、读取indid值(应为堆没有索引所以是0)后万博manbext|体育首页,sqlserver开始读取firstIAM值万博manbext|体育首页万博manbext|体育首页万博manbext|体育首页,获取堆的IAM的第一页(8KB)的位置。(IAM将堆的各个区域联接在一起)

                                                                              3万博manbext|体育首页万博manbext|体育首页、sqlserver根据IAM提供的区域地址万博manbext|体育首页万博manbext|体育首页万博manbext|体育首页万博manbext|体育首页,一个区域一个区域的查找万博manbext|体育首页,一个数据页一个数据页的查找,直到获取所需的数据为止。

                                                                              二万博manbext|体育首页万博manbext|体育首页、簇索引

                                                                              1万博manbext|体育首页、sqlserver在sysindexes表中查到对应的数据行万博manbext|体育首页万博manbext|体育首页,找到indid为1后万博manbext|体育首页万博manbext|体育首页,sqlserver开始读取root列的值。(列值是根页面的地址)

                                                                              2万博manbext|体育首页、找到根页面后开始搜索万博manbext|体育首页万博manbext|体育首页,比如要搜索的表是10条记录一页万博manbext|体育首页,这里是找“1981”这个值,将索引的值“1981”与根页面的索引比较。由于“1981”是在1900到2000之间万博manbext|体育首页万博manbext|体育首页。所以sqlserver开始搜索1900所在的中间页万博manbext|体育首页万博manbext|体育首页。

                                                                              3万博manbext|体育首页万博manbext|体育首页万博manbext|体育首页万博manbext|体育首页、找到“1900”所在的中间页后万博manbext|体育首页,将索引值“1981”继续与中间页的索引比较万博manbext|体育首页,由于“1981”是在1980到1990之间。所以sqlserver开始搜索1980所在的数据页。(注意这一步是根据中间页找数据页)

                                                                              4万博manbext|体育首页、找到“1980”所在的数据页后万博manbext|体育首页,将索引值“1981”继续与数据页的索引比较万博manbext|体育首页,很快就可以在这个数据页上找到“1981”的数据行了万博manbext|体育首页万博manbext|体育首页。

                                                                              三万博manbext|体育首页万博manbext|体育首页万博manbext|体育首页、非簇索引

                                                                              1万博manbext|体育首页、sqlserver在sysindexes表中查到对应的数据行万博manbext|体育首页,找到indid为后,值为2到251后万博manbext|体育首页万博manbext|体育首页,sqlserver开始读取root列值万博manbext|体育首页。

                                                                              2万博manbext|体育首页、找到根页面后,将“1981”与根页面的索引比较,由于“1981”是在1900到2000之间万博manbext|体育首页。所以sqlserver开始搜索1900所在的中间页。(注意这一步是根据中间页找叶页面)

                                                                              3万博manbext|体育首页万博manbext|体育首页万博manbext|体育首页、找到中间页后万博manbext|体育首页,将索引值“1981”继续与中间页的索引比较万博manbext|体育首页,由于“1981”是在1980到1990之间万博manbext|体育首页万博manbext|体育首页。所以sqlserver开始搜索1980所在的叶页面万博manbext|体育首页万博manbext|体育首页。

                                                                              4万博manbext|体育首页、找到“1980”所在的叶页面后万博manbext|体育首页万博manbext|体育首页,继续叫索引值“1981”与叶页面上的关键字比较万博manbext|体育首页,在叶页面上找到关键字为“1981”的数据行ID万博manbext|体育首页。

                                                                              5万博manbext|体育首页万博manbext|体育首页万博manbext|体育首页、根据数据行ID提供的数据页和数据行信息万博manbext|体育首页万博manbext|体育首页,定位到指定的数据页和数据行,找到“1981”这条记录是“晶”的。

                                                                              学海无涯苦作舟,不进则退万博manbext|体育首页。计算机行业有许多东西都是值得我们去了解和挖掘的。想要了解更多数据库的信息万博manbext|体育首页万博manbext|体育首页,请继续关注中培教育万博manbext|体育首页。

                                                                              相关阅读

                                                                              万博manbext|体育首页