首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >postgresql [42P17]:错误:"eMAR_201501“在尝试从父表创建子表时没有分区

postgresql [42P17]:错误:"eMAR_201501“在尝试从父表创建子表时没有分区
EN

Stack Overflow用户
提问于 2020-08-21 13:13:21
回答 1查看 1.4K关注 0票数 1

我正在尝试创建现有表的分区,它是说分区没有启用,如何修复它。基本上,我想要创建现有表的分区,这是非常大的,并让我知道如何做,我也不能启用分区使用这个选项。

我就是这样创建分区的

代码语言:javascript
复制
CREATE TABLE public."eMAR_2012" PARTITION OF public."eMAR_201501"
   FOR VALUES FROM ('2012-01-01 12:00 AM') TO ('2019-12-31 11:59 PM');
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-21 13:26:39

不能仅仅将分区添加到非分区表中。如果现有的数据应该被重新分区,那么唯一能做的就是创建一个空的分区表,其中包含您想要的分区,然后将数据从非分区表复制到分区表中。

如果所有现有数据都可以放在单个分区中,则可以将现有表重命名为不同的名称,使用“旧”表名创建新分区表,然后将现有表作为分区附加到新创建的分区表。如果实现分区以快速删除旧行/过时行,则通常使用此方法。

但是再次指出:如果现有数据需要在多个分区之间分布,那么唯一的方法就是将数据从旧的非分区表复制到分区表中。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63523591

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档