1、创建一个有DEFAULT的分区表 1、先创建主表 1 2 3 4 5 6 7 8 9 10 11 12 13 14 create table tbl_log ( id serial, create_time timestamp(0) without time zone, remark char(1) ) PARTITION BY RANGE (create_time); #因为是serial类型
| 1、创建一个有DEFAULT的分区表1、先创建主表
 2、如果没有创建分区就直接插入数据会报错
 3、创建分区
 4、查看分区情况
 2、有default 分区,再加分区因为有default 分区,再加分区,所以会报错 
 解决办法:以上添加分区报错,需要解绑default分区,之后再添加,如下 1、解绑Default分区 
 2、创建想要的分区 
 3、分区创建成功,分区创建之后需把DEFAULT分区连接。 连接DEFAULT分区报错,如下: 
 因为tbl_log_default分区内有2018-04-01的数据,把这个数据从tbl_log_default中导出到对应的分区,并清理tbl_log_default中的对应的数据 
 4、再次连接DEFAULT分区成功 
 3、没有default的分区创建没有default的分区,当插入的数据超过规划好的分区的时候会报错 1、创建1月份分区 
 插入2月的数据就会报错 
 4、给分区表ddl4.1、在原来没有主键的分区表加主键结论: 1、在主表加主键,主键为仅仅想要的主键,会报错,需要用想要的主键+分区键组合为主键 2、分区表可以单独添加主键 1.1、在主表加主键,主键为仅仅想要的主键,报错如下 must include all partitioning columns 
 1.2、在主表添加主键需要是想要的主键+分区键 
 1.3、可以给分区表单独添加主键 
 4.2、创建分区表时,就指定主键主键不包括分区键,报错提示must include all partitioning columns 
 修改语句,添加分区键也为主键,创建成功 
 4.3、分区表加字段,修改字段1、加字段,可以成功添加,在主表加字段,分区表会自动添加 
 2、直接在分区表加字段会报错 
 3、修改字段 
 | 
2022-02-26
2022-09-22
2022-09-18
2022-09-22
2022-08-26