存档

2010年11月28日 的存档,文章数:1

ASE自15.0后增加了3中语义分区:hash、range、list。默认的轮询分区(roundrobin)为非语义分区,是为了兼容15.0之前的版本而设计的。

语义分区表的分区信息主要存储在:syspartitions和syspartitionkeys这两张表中。

查看表的分区信息可以使用系统自带的存储过程:sp_helpartition

本文提供3个SQL语句:

  1. 如何判断一个表是否是分区表?

select count(*) from dbo.syspartitionkeys where id=object_id(table_name)

示例:

1> if exists(select 1 from dbo.syspartitionkeys where id = object_id("PART_RESDISK"))

2> print "table PART_RESDISK exists!"

3> else

4> print "table PART_RESDISK not exists!"

5> go

table PART_RESDISK exists!

ASE15.0中的表默认为roundrobin类型的"分区表",系统表syspartitionkeys表中仅仅记录语义分区表的分区键信息。