oracle分区表分区栏位NULL值测试

实验在分区栏位为NULL时,分区表的反应

1.创建普通的分区表

CREATE TABLE MONKEY.TEST_PART_NULL_NORMAL
(
   ID         NUMBER,
   ADD_DATE   DATE
)
PARTITION BY RANGE (ADD_DATE)
(PARTITION DCS_P202004 VALUES LESS THAN (TO_DATE (' 2020-05-01 00:00:00','SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')))

2.插入空值

INSERT INTO MONKEY.TEST_PART_NULL_NORMAL(ID) VALUES (2);

报错

 

3.增加MAX分区

 ALTER TABLE MONKEY.TEST_PART_NULL_NORMAL ADD  PARTITION DCS_MAX VALUES LESS THAN (MAXVALUE);

插入成功,即普通分区表的MAX分区会接收不规范的数据

4.创建自增长分区

CREATE TABLE MONKEY.TEST_PART_NULL
(
   ID         NUMBER,
   ADD_DATE   DATE
)
PARTITION BY RANGE(ADD_DATE)
INTERVAL ( NUMTOYMINTERVAL (1, 'MONTH') )
(PARTITION DCS_P202004
VALUES LESS THAN (TO_DATE (' 2020-05-01 00:00:00','SYYYY-MM-DD HH24:MI:SS','NLS_CALENDAR=GREGORIAN')))

5.插入空值

 

6.增加MAX分区

 

 结论:普通分区表,如果带有MAX分区,则可以插入空值,如果没有MAX分区,无法插入空值。自增长分区表无法增加分区也无法插入空值。

 

posted @ 2020-05-11 15:10  monkey6  阅读(884)  评论(0编辑  收藏  举报