- 最后登录
- 2018-11-1
- 在线时间
- 377 小时
- 威望
- 29
- 金钱
- 6866
- 注册时间
- 2011-10-12
- 阅读权限
- 200
- 帖子
- 891
- 精华
- 4
- 积分
- 29
- UID
- 1
|
2#
发表于 2013-12-6 12:46:14
There could be more entries in a cluster key than fit in a block. In such a case, there would be a
chaining of blocks with the same key. The following line has the chaining information:
curc: 2 comc: 2 pk: 0x01402d36.0 nk: 0x01402d36.0
•curc: 2 Current row count for this key in this block
•comc: 2 Committed row count for this key in this block
•pk: 0x01402d36.0 ROWID of Previous block for this cluster key
•nk: 0x01402d36.0 ROWID of Next block for this cluster key
In this example the pk and nk point back to this block so this is the only block for this cluster key.
Just as it is possible to have values for a key that need to be chained across multiple blocks, it is
also possible to have multiple key values in the same block. In this case, it is necessary to identify
which key a row belongs to. This is done using the cluster key index field (cki). The value of cki is
a pointer to the row number in tab[0]. In this example, there is only one key in this block, hence the
value of cki is 0 for all the rows.
For another example, refer to Note: 52508.1. |
|