oracle动态创建分区(11g下自动创建分区)
前俩天写了一个Mysql的自动创建分区,有的友友问Oracle下如何写,今天给大家整理一下oracle下的分区如何创建,也是直接干货,如果想深入学习的可以自己去百度查一些基本的资料,加深自己的印象。
那么正题开始,这回咱们还是建立范围分区,目前大部分公司用的Oracle 11g版本的(低版本的咱们后面有时间再说),11g是支持自动分区的,可以先看一下版本特性的介绍
11g还有很多新特性(Oracle 11G新特性(共36个)_newhappy2008的博客-CSDN博客)。感兴趣的话可以自己去翻阅一下,这里就不一一介绍了。
下面说两种平时用得最多的,一种是新表创建的时候直接创建分区,后续数据表中插入的数据会自动根据日期建立分区,不用手动操作。
代码如下:
-- 按天创建分区表
create table demo
(
ID NUMBER(32) not null,
create_date DATE
)
PARTITION BY RANGE (create_date) INTERVAL (NUMTODSINTERVAL(1, 'day'))
(partition p20220715 values less than(to_date('2022-07-15', 'yyyy-mm-dd')));
分区可以按照年月日去建,也可以按照数字范围去建,这个网上有很多的例子,可以去看看。
另一种就是已存在的表,且表中包含数据(如果表中数据很少,建议重新建一张新表后执行数据导入操作,但要人工核验数据一致性问题)。之前写过的暂时找不到了(其实是懒得重新再写一遍[奸笑]),不过在网上大家找到一篇比较实用的博客,大家可以去研究研究,按照项目情况来做选择。
传送门:oracle分区表的建立方法(包含已经存在的表要分区)_wanglilin的博客-CSDN博客_oracle已有表建分区
今天跑了趟医院,时间也不是很充裕,各位友友发现写的有问题,可以批评教育一下,大家共同学习[谢谢]。如果想要11g以下版本的话,我看看需要的人多不多,多的话我也可以勤快勤快自己写一遍整理一下,那么下次见,芜湖!!!
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com