表分区是一种思想,分区表示一种技术实现。当表的大小过G的时候可以考虑进行表分区,提高查询效率,均衡IO。oracle分区表是oracle数据库提供的一种表分区的实现形式。表进行分区后,逻辑上仍然是一张表,原来的查询SQL同样生效,同时可以采用使用分区查询来优化SQL查询效率,不至于每次都扫描整个表。

根据年: INTERVAL(NUMTOYMINTERVAL(1,'YEAR'))

根据月: INTERVAL(NUMTOYMINTERVAL(1,'MONTH'))

根据天: INTERVAL(NUMTODSINTERVAL(1,'DAY'))

根据时分秒: NUMTODSINTERVAL( n, { 'DAY'|'HOUR'|'MINUTE'|'SECOND'})

此时已经有普通表了,我创建了含相同字段的分区表,把数据导入到分区表中,再把原表删掉。

--Create table(WMS_OPERATION_RECORD)

create tableDPHOMEWMS.WMS_OPERATION_RECORD_TMP

(

IDNUMBER(19) not null,

WAREHOUSE_IDNUMBER(19),

ASN_IDNUMBER(19),

PICK_TICKET_IDNUMBER(19),

RELATION_CODEVARCHAR2(50),

OPERATION_TYPEVARCHAR2(50),

OPERATION_IDNUMBER(19),

OPERATION_NAMEVARCHAR2(50 CHAR),

OPERATION_TIMETIMESTAMP(6) DEFAULT systimestamp not null,

STATUSVARCHAR2(10),

TYPEVARCHAR2(10),

COUNTSNUMBER(10)

)tablespace DPHOMEWMS_DATA

PARTITIONBY RANGE (OPERATION_TIME) interval (numtoyminterval(1, 'month'))

STOREIN(DPHOMEWMS_DATA)

(

partition OPERATION_RECORD_P01values less than (TIMESTAMP'2017-05-08 00:00:00')

tablespace DPHOMEWMS_DATA

);--Add comments to the columns

comment on columnDPHOMEWMS.WMS_OPERATION_RECORD_TMP.WAREHOUSE_IDis '仓库id';

commenton columnDPHOMEWMS.WMS_OPERATION_RECORD_TMP.ASN_IDis '收货单id';

commenton columnDPHOMEWMS.WMS_OPERATION_RECORD_TMP.PICK_TICKET_IDis '发货单ID';

commenton columnDPHOMEWMS.WMS_OPERATION_RECORD_TMP.RELATION_CODEis '关联单据号(收货单或发货单的code)';

commenton columnDPHOMEWMS.WMS_OPERATION_RECORD_TMP.OPERATION_TYPEis '操作类型';

commenton columnDPHOMEWMS.WMS_OPERATION_RECORD_TMP.OPERATION_IDis '操作人ID';

commenton columnDPHOMEWMS.WMS_OPERATION_RECORD_TMP.OPERATION_NAMEis '操作人名称';

commenton columnDPHOMEWMS.WMS_OPERATION_RECORD_TMP.OPERATION_TIMEis '操作时间';

commenton columnDPHOMEWMS.WMS_OPERATION_RECORD_TMP.STATUSis '状态';

commenton columnDPHOMEWMS.WMS_OPERATION_RECORD_TMP.TYPEis '明细或者统计次数类型';

commenton columnDPHOMEWMS.WMS_OPERATION_RECORD_TMP.COUNTSis '统计次数';--创建本地索引

create index IDX_WMS_OPERATION_RECORD onDPHOMEWMS.WMS_OPERATION_RECORD_TMP(RELATION_CODE)

tablespace DPHOMEWMS_INDEX local;update DPHOMEWMS.WMS_OPERATION_RECORD set OPERATION_TIME = sysdate where OPERATION_TIME is null;insert into DPHOMEWMS.WMS_OPERATION_RECORD_TMP select * fromWMS_OPERATION_RECORD;drop tableDPHOMEWMS.WMS_OPERATION_RECORD;alter table DPHOMEWMS.WMS_OPERATION_RECORD_TMP rename toWMS_OPERATION_RECORD;

alter table DPHOMEWMS.WMS_OPERATION_RECORD enable row movement;

(1)OPERATION_TIME是分区键,每一个月会自动创建一个分区,分区键不允许为null。

(2)alter table table_name enable row movement;    是指允许分区表的分区键是可更新,当某一行更新时,如果更新的是分区列,并且更新后的列值不属于原来的这个分区,如果开启了这个选项,就会把这行从这个分区中delete掉,并加到更新后所属的分区,此时就会发生rowid的改变。相当于一个隐式的delete+insert,但是不会触发insert/delete触发器。如果没有开启这个选项,就会在更新时报错。

oracle 定时器时间分区_oracle分区表按时间自动创建相关推荐

  1. oracle 定时器时间分区_Oracle数据库之oracle按时间分区以及自动分区

    本文主要向大家介绍了Oracle数据库之oracle按时间分区以及自动分区,通过具体的内容向大家展现,希望对大家学习Oracle数据库有所帮助. (1) --- 创建按时间分区的表 create ta ...

  2. oracle如何写循环日期自增_Oracle动态创建时间分区,以及Oracle12c中快速创建自增列...

    时间分区可以按照年月日时分秒进行分区,一般按照日或月分区就足够了,这里按照的是日分区 demo如下 create table APDEMO ( OID NUMBER(38) generated as ...

  3. oracle结果相减_oracle 两个时间相减得秒

    oracle 两个时间相减默认的是天数 oracle 两个时间相减默认的是天数*24 为相差的小时数 oracle 两个时间相减默认的是天数*24*60 为相差的分钟数 oracle 两个时间相减默认 ...

  4. oracle取时间的小时_ORacle,怎么截取时间字段中的小时

    日期和字符转换函数用法(to_date,to_char) select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') as nowTime from dual; / ...

  5. oracle 分区表转换,Oracle 12.2之后ALTER TABLE .. MODIFY转换非分区表为分区表

    Oracle 12.2之后ALTER TABLE .. MODIFY转换非分区表为分区表 发布时间:2020-08-08 06:57:47 来源:ITPUB博客 阅读:77 作者:你好我是李白 说明 ...

  6. oracle 11g 组合分区,Oracle数据库

    数据库分区是每种数据库都需具备的关键功能之一.几乎所有的Oracle数据库都使用分区功能来提高查询的性能,Oracle 11g分区功能可以简化数据库的日常管理维护工作,大大减轻了DBA(数据库设计和管 ...

  7. oracle修改分区表的默认空间,Oracle数据库学习_Oracle分区表的分区占用空间为什么是8M?如何修改分区的初始空间?...

    Oracle数据库学习_Oracle分区表的分区占用空间为什么是8M?如何修改分区的初始空间? 现象一描述: 在oracle12c下创建一个分区表T_A_TRADING,新建一个分区P1,P1里没有任 ...

  8. mysql按照时间自动创建分区表_mysql 表分区、按时间函数分区、删除分区、自动添加表分区...

    mysql 表分区的几种方式: RANGE分区:基于属于一个给定连续区间的列值,把多行分配给分区. LIST分区:类似于按RANGE分区,区别在于LIST分区是基于列值匹配一个离散值集合中的某个值来进 ...

  9. oracle 建分区索引_Oracle的分区表和Local索引创建与维护

    Oracle的分区表和Local索引创建与维护 SQL> connect eygle/eygle Connected. SQL> CREATE TABLE dbobjs 2  (OBJEC ...

最新文章

  1. QTP---Recovery Scenario没有被触发的原因汇总
  2. linux从指定网卡scp文件出去,Linux下nc或scp命令来实现文件传输
  3. 【Effective Java】1.静态工厂方法来替换构造函数
  4. Socket网络编程--聊天程序(3)
  5. cognos 样例 oracle,Cognos10安装和sample配置(ORACLE学样例)
  6. 十六进制的几种输出方式
  7. Centos6搭建SkyWalking 做分布式跟踪
  8. php临时目录没有文件夹里,PHP上传 找不到临时文件夹的解决方法
  9. 使Java具有响应性的框架和工具包:RxJava,Spring Reactor,Akka和Vert.x概述
  10. window xp系统安装php环境_Windows Server 2003及XP系统如何安装SQL Server 2000数据库?
  11. 重学TCP协议(7) Timestamps 选项
  12. 奖励千万元别墅!椰树集团又来招人了,入职肯定有美女帅哥追?
  13. HDU 1824 Let's go home
  14. 本地计算机策略无法建立管理单元,我的本地安全策略用不了!打开管理工具的本地安全策略管理单元初始化 爱问知识人...
  15. ros简版Action通讯SimpleAction
  16. 学编程买什么电脑最好?
  17. Java 二叉树完整代码(递归迭代)
  18. 14个最常用的app测试工具推荐,拿走不谢!
  19. android+实现微信对话框样式,实现微信对话框的图片样式以及图片边框
  20. 隧道保活超时或协商超时_丰巢快递柜超时收费的法律分析

热门文章

  1. cent os mysql下载_Cent OS 6.4安装mysql
  2. 腾讯云 cloudbase 云开发使用笔记
  3. BiB:王秀杰/裴小兵合作开发单细胞组学细胞标记基因鉴定算法COSG
  4. iMeta期刊推特官方帐号@iMetaJournal上线
  5. MPB:北大口腔陈峰、陈智滨等-口腔常见微生物的培养方法
  6. R语言把dataframe数据转化为tibble格式、查看每个数据列的缺失值个数、使用数据列的均值对数据列的缺失值进行填充
  7. sklearn随机森林模型:ValueError: Unknown label type: ‘unknown‘
  8. R语言dataframe获取每个字段(特征)的数据类型实战:使用sapply函数获取每个字段(特征)的数据类型、通过柱状图可视化特征的种类以及个数
  9. pandas使用apply函数:在dataframe数据列(column)上施加(apply)函数
  10. Python为图像添加文本内容(Writing Text on Image)