什么是堆表?简单地说,堆表是指采用了物理ROWID形式的表,即使用文件号、页号和页内偏移而得到ROWID值,这样就不需要存储ROWID值,可以节省空间。逻辑ROWID在插入或修改过程中,为了确保ROWID的唯一性,需要依次累加而得到值,这样就影响了效率,而堆表只需根据自己的文件号、页号和页内偏移就可以得到ROWID,提高了效率。那么在达梦数据库中如何创建堆表呢?#DM数据库专栏#
创建堆表方法方法一:创建语句时指定,如:STORAGE(NOBRANCH
BRANCH)。
NOBRANCH:如果指定为NOBRANCH,则创建的表为堆表,并发分支个数为0,非并发分支个数为1;
BRANCH(n,m):如果为该形式,则创建的表为堆表,并发分支个数为n,非并发个数为m,其中1=n=64,1=m=64。
BRANCHn:指定创建的表为堆表,并发分支个数为n,非并发分支个数为0;
创建并发分支个数为4,非并发分支个数为2的堆表,命令如下:
CREATETABLET2(IDINT,NAMEVARCHAR(20))storage(initial1,next1,branch(4,2));
方法二:修改dm.ini参数默认创建堆表。修改dm.ini中LIST_TABLE=1,在创建表时未指定表是否为堆表或非堆表时,默认情况下创建的表为堆表。
SP_SET_PARA_VALUE(1,LIST_TABLE,1);
该参数是动态参数,设置后立即生效。设置后在创建表时默认就是堆表。以上就是堆表的概念和创建的方法了,你学会了吗?