oracle11g interval(numtoyminterval())自动创建表分区

Oracle11g通过间隔分区实现按月创建表分区

在项目数据库设计过程中由于单表的数据量非常庞大,需要对表进行分区处理。由于表中的数据是历史交易,故按月分区,提升查询和管理。

由于之前对于表分区了解不多,为了实现上述功能查了很多资料,一开始的方向是通过Crontab调用Shell脚本来按月自动创建分区,或者使用Oracle的Job调用存储过程来自动创建分区。在研究上述两套方案的过程中,无意发现Oracle11g有间隔分区功能,对于使用Range分区的可以按年,月,日来自动生成分区。语法如下:

?


1

2

3

4

5

6

7

8

9

10

11

12

CREAT TABLE TABLE1

(

   TABLE_ID NUMBER(8),

   SUB_DATE DATE,

   VALUE NUMBER(8)

)

PARTITION BY RANGE(SUB_DATE)

INTERVAL(NUMTOYMINTERVAL(1,‘MONTH‘))

(

  PARTITION P1 VALUES LESS THAN(TO_DATE(‘2014-05-01‘,‘YYYY-MM-DD‘))

);

2014年5月1日前的数据会放入p1分区,5月1日后的数据每月只要有数据,就会自动创建一个分区。

时间: 2024-12-29 06:58:10

oracle11g interval(numtoyminterval())自动创建表分区的相关文章

Oracle 11g 通过间隔分区实现按月创建表分区

在项目数据库设计过程中由于单表的数据量非常庞大,需要对表进行分区处理.由于表中的数据是历史交易,故按月分区,提升查询和管理. 由于之前对于表分区了解不多,为了实现上述功能查了很多资料,一开始的方向是通过Crontab调用Shell脚本来按月自动创建分区,或者使用Oracle的Job调用存储过程来自动创建分区.在研究上述两套方案的过程中,无意发现Oracle11g有间隔分区功能,对于使用Range分区的可以按年,月,日来自动生成分区.语法如下: CREAT TABLE TABLE1 ( TABLE

sql2008 计划自动创建数据库分区【转】

本文转自:http://jingyan.baidu.com/article/6b97984d9a26ec1ca3b0bf77.html sql2008 计划自动创建数据库分区 固定增量的数据,自动创建分区作业. 步骤一:创建分区的计划任务 打开MsSQL2008,找到作业该项,如果打不开或者SQL Server代理是未启动状态,请先在windows服务中启动SQL Server代理(参考图片),   右击MsSQL2008对象资源管理器中的作业,选择新建作业,输入该作业你想用的名称,类别不用管,

hibernate 项目启动时总会自动创建表

hibernate 项目启动时总会自动创建表,造成以下错误 Caused by: java.sql.SQLSyntaxErrorException: ORA-00955: 名称已由现有对象使用 经验证,是方言使用错误导致的.项目使用的数据库版本为Oracle11g,方言应该使用  org.hibernate.dialect.Oracle10gDialect 修改配置如下: jpa: show-sql: true database-platform: org.hibernate.dialect.O

hibernate自动创建表

配置自动创建表: <prop key="hibernate.hbm2ddl.auto">update</prop>//首次创建项目时用,项目稳定后一般注释 这里有是个值: update:表示自动根据model对象来更新表结构,启动hibernate时会自动检查数据库,如果缺少表,则自动建表:如果表里缺少列,则自动添加列. 还有其他的参数: create:启动hibernate时,自动删除原来的表,新建所有的表,所以每次启动后的以前数据都会丢失. create-d

Mybatis自动创建表/更新表结构

最近有小伙伴问我mybatis有没有自动创建表结构的功能,因为他们之前一直使用hibernate用习惯了,理所当然的认为,在实体类上配置下注解或者写写映射文件,系统启动后就可以自动创建表. 我只能很遗憾的告诉他,mybatis并没有这个功能,看他兴致阑珊的样子,我只能安慰他,就算没有这功能,我们可以自己开发啊~~ 所以就有了下面这套系统,已开源大家可以下来看看~~ Mybatis_BuildTable_V0.2 https://git.oschina.net/sunchenbin/Mybatis

Hibernate连接mysql数据库并自动创建表

天才第一步,雀氏纸尿裤,Hibernate第一步,连接数据库. Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库. 所以说,Hibernate讲白了就是简化了与数据库之间的操作,那么要玩转它自然就得连接上数据库咯.(与Hibernate对应的orm框架还有Mybatis,只不过M

hibernate自动创建表报表不存在

在hibernate.cfg.xml配置了<property name="hibernate.hbm2ddl.auto">update</property>自动创建表,但是项目启动会报 table doesn't exists 可能原因是主键策略设置的是native 而类里的id类型是String 这个uid要换成Integer 原文地址:https://www.cnblogs.com/suni/p/8707538.html

mysql创建表分区

MySQL创建表分区 create table erp_bill_index( id int primary key auto_increment, addtime datetime ); insert into erp_bill_index(addtime) values ('2018-02-01 12:00:00'), ('2018-03-01 12:00:00'), ('2018-04-01 12:00:00'), ('2018-05-01 12:00:00'), ('2018-06-01

Oracle 创建表分区

create table TableName1( id CHAR(36) not null, samplingdate TIMESTAMP(6) not null, instantaneousflow NUMBER(10,3), totalflow NUMBER(10), flowmeterid CHAR(36) not null, receivetime TIMESTAMP(6), inserttime TIMESTAMP(6));partition by range (SAMPLINGDAT