火冰狐 发表于 2018-9-15 07:06:16

oracle已存在的表添加新分区的方法

  现在有一张表如下:
  create table WRITE_USER
  (
  area_code            VARCHAR2(8),
  user_no                VARCHAR2(20),
  user_name            VARCHAR2(100),
  address                VARCHAR2(100),
  mon                  NUMBER(6),
  mon_sn               NUMBER(3),
  write_flag             CHAR(1),
  write_type_code      VARCHAR2(8),
  write_sn               VARCHAR2(32),
  abnormal_code          VARCHAR2(8)
  )
  partition by list (MON)
  (
  partition WRITE_USER_201203 values (201203)
  tablespace PART_DATA
  pctfree 10
  initrans 1
  maxtrans 255
  storage
  (
  initial 64K
  minextents 1
  maxextents unlimited
  )
  );,
  由于每月的数据均超过百万,所以进行了分区处理,建表时如上所示只按月份建立了一个分区,下个月的数据来了怎么办?可以按下面的方法添加新分区:
  alter tablewrite_user add partition WRITE_USER_201304 values (201304)
  建表完成后进行插入数据时,当mon为201304时,数据自动插入此分区,注意,mon值没有对应的分区时,数据无法正常插入,报错“ORA-14400:inserted partition key does not map to any partition”,必须有对应的分区才可以进行数据插入

页: [1]
查看完整版本: oracle已存在的表添加新分区的方法