DB2表中OVERFLOW的构成

当表中的数据需要更新时,如果字段属于VARCHAR类型,那么就有可能造成OVERFLOW

由于更新时,把字段最初的值更新成更大的值,这样就可能造成之前所在的数据页中溢出,这种情况下,DB2会在新的数据页存放该行数据,而之前的位置上保留一个指针,指向了数据所在的新的数据页中。
 

例如:

行数据D1D2D34K数据页P1中,行中有一列VARCHAR(2048)数据类型的COL1。三行数据的COL1初始值长度是1360。当对数据D1COL1列数据长度更新到1500时,数据长度超出了4K,表示溢出。这时D1的数据被移到数据页P2中,而D1所在P1数据页的位置保留一个指针,指向P2中的数据页位置。
posted @ 2013-03-17 17:08  柱星同学  阅读(1276)  评论(0编辑  收藏  举报