DB2在表空间中创建表并插入

时间:2013-09-30 21:10:34

标签: db2 tablespace

我的DBA在DB2中创建了三个不同的表空间,以便存储相同的表(TABLE_IN_TBS),并打开日期字段。

CREATE LARGE TABLESPACE "TBS_x" IN DATABASE PARTITION GROUP NODO0 PAGESIZE 32768 MANAGED BY DATABASE
     USING (FILE 'x.LRG' 1G) ON DBPARTITIONNUMS (0)
     EXTENTSIZE 32
     PREFETCHSIZE AUTOMATIC
     BUFFERPOOL BP32K0
     OVERHEAD 12.670000
     TRANSFERRATE 0.180000
     AUTORESIZE YES
     MAXSIZE 30 G
     NO FILE SYSTEM CACHING
     DROPPED TABLE RECOVERY ON;

然后我有TBS_x,其中将添加预定义范围内的数据,下一个范围的TBS_x + 1等等。

我的问题是:我必须在不同的表空间中创建相同的表TABLE_IN_TBS?使用以下语法?

    CREATE TABLE TABLE_IN_TBS
  (
  SomeColumns....
  ) TABLESPACE TBS_x;

我可以通过哪种方式引用不同的表空间,以便根据我的日期字段在正确的表空间中插入数据进行切换?

1 个答案:

答案 0 :(得分:2)

我认为你在谈论分区表。它的定义如下:

CREATE TABLE TABLE_IN_TBS
(
  SomeColumns....
) 
PARTITION BY (your_date_column)
(STARTING FROM '2013-09-30' ENDING AT '2013-09-30' IN TABLESPACE TBS_1),
(STARTING FROM '2013-10-01' ENDING AT '2013-10-01' IN TABLESPACE TBS_2),
...;