Database 为什么数据库中的溢出块不能进行二进制搜索?

Database 为什么数据库中的溢出块不能进行二进制搜索?,database,indexing,Database,Indexing,这与主数据库索引机制(稀疏索引)有关 可以对索引文件使用二进制搜索来定位条目。但是,如果使用了溢出块,则无法进行二进制搜索 有人能解释一下溢出块是如何使二进制搜索无法使用的吗?当索引块中没有足够的空间来创建新记录时,就会创建溢出块 溢出块不能进行二进制搜索,因为它们不是主索引/链表方案的一部分(即不是二进制索引)。相反,它们附加到(与)作为索引方案一部分的主块 要找到它们,必须进行二进制搜索以找到最近的索引块,然后依次搜索溢出块以找到所需的索引块 如果愿意,可以对溢出块进行索引,使其成为一等公民

这与主数据库索引机制(稀疏索引)有关

可以对索引文件使用二进制搜索来定位条目。但是,如果使用了溢出块,则无法进行二进制搜索


有人能解释一下溢出块是如何使二进制搜索无法使用的吗?

当索引块中没有足够的空间来创建新记录时,就会创建溢出块

溢出块不能进行二进制搜索,因为它们不是主索引/链表方案的一部分(即不是二进制索引)。相反,它们附加到(与)作为索引方案一部分的主块

要找到它们,必须进行二进制搜索以找到最近的索引块,然后依次搜索溢出块以找到所需的索引块


如果愿意,可以对溢出块进行索引,使其成为一等公民(二进制搜索的一部分),但它们不再是溢出块。

当索引块中没有足够的空间创建新记录时,将创建溢出块

溢出块不能进行二进制搜索,因为它们不是主索引/链表方案的一部分(即不是二进制索引)。相反,它们附加到(与)作为索引方案一部分的主块

要找到它们,必须进行二进制搜索以找到最近的索引块,然后依次搜索溢出块以找到所需的索引块

如果愿意,您可以为溢出块编制索引,使其成为一等公民(二进制搜索的一部分),但它们不再是溢出块