显示一页的内容:
Oncheck –pP chunk_number page_offset
注意:offset是从0开始的,即offset 2 指第三个页
Oncheck –pP 1 0 就可以显示第一个chunk的第1个页;
Oncheck -pp partition_number logical_page_number
Oncheck –pp 0x100022 0 显示partnum为0x100022的表空间的逻辑页为0的内容。
Oncheck –pp有一些没有被公开的参数可以使用,例如:
Oncheck –pp database:tablename rowid
但是只有rowid大于0X100的可以使用上述语法,不能使用该语法显示第一个bitmap page。
使用oncheck –pp 0x10001a 0x2 显示partnum为0X10001a的表的logical page 为2的页上全部内容,不能显示该表中单独的一行。
如何来获取partiton_number?
对于没有分片的表直接查询systables 或 systabnames 。
对于做了分片的表可以查询sysfragments 或执行oncheck –pt dbname:tabname
Partnum:
Partnum可以唯一的定位一个tablespace,对于没有分片的表只有一个partnum,但是对于已经分片的表,对于每一个dbspace上的fragment都有一个partnum。
Select hex(partnum) from systables where tabname=”table_name”;
或 Select hex(partnum) from sysmaster:systabname where tabname=”table_name”;
对于已经分片的表可以使用:
Select hex(partn) from systables t,sysfragments f where t.tabid=f.tabid
And tabname=”table_name”;
或使用oncheck –pt dbname:tab_name | grep partnum 可以得到十进制的数,转化成16进制即可。