iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >如何进行分区表split操作及maxvalue处理
  • 237
分享到

如何进行分区表split操作及maxvalue处理

2023-06-06 04:06:00 237人浏览 薄情痞子
摘要

这篇文章将为大家详细讲解有关如何进行分区表split操作及maxvalue处理,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。CREATE TABLE DFMS.WIP_D_WO_DETaiL

这篇文章将为大家详细讲解有关如何进行分区表split操作及maxvalue处理,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

CREATE TABLE DFMS.WIP_D_WO_DETaiL
(
  WORK_ORDER          VARCHAR2(25 CHAR)         NOT NULL,
  PART_NO             VARCHAR2(35 BYTE)         NOT NULL,
  PART_REV            VARCHAR2(10 BYTE)         DEFAULT 'N/A'                 NOT NULL,
  ALT_FLAG            VARCHAR2(1 BYTE)          DEFAULT '0'                   NOT NULL,
  SUBSTITUTE_PN       VARCHAR2(35 BYTE),
  UNIT_QtY            NUMBER                    DEFAULT 0                     NOT NULL,
  SOURCE_DEPT         VARCHAR2(5 BYTE)          DEFAULT 'SFC'                 NOT NULL,
  CREATOR             VARCHAR2(20 BYTE)         NOT NULL,
  CREATE_DATE         DATE                      DEFAULT SYSDATE,
  UPDATER             VARCHAR2(20 BYTE),
  UPDATE_DATE         DATE,
  SCH_PART_NO         VARCHAR2(35 BYTE),
  MAIN_WHID           VARCHAR2(10 BYTE),
  REPLACE_GROUP       VARCHAR2(50 BYTE)         NOT NULL,
  MOD_NO              VARCHAR2(20 BYTE),
  PHANTOM_FLAG        VARCHAR2(10 BYTE)
)
TABLESPACE PART_D_TS1
PCTUSED    0
PCTFREE    10
INITRANS   1
MAXTRANS   255
LOGGING
PARTITioN BY RANGE (CREATE_DATE)

  PARTITION P200907 VALUES LESS THAN (TO_DATE(' 2009-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS',

'NLS_CALENDAR=GREGoRIAN'))
    LOGGING
    NOCOMPRESS
    TABLESPACE PART_D_TS1
    PCTFREE    10
    INITRANS   1
    MAXTRANS   255
    STORAGE    (
                INITIAL          50M
                NEXT             50M
                MINEXTENTS       1
                MAXEXTENTS       UNLIMITED
                PCTINCREASE      0
                BUFFER_POOL      DEFAULT
               ), 
  PARTITION P201001 VALUES LESS THAN (TO_DATE(' 2010-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS',

'NLS_CALENDAR=GREGORIAN'))
    LOGGING
    NOCOMPRESS
    TABLESPACE PART_D_TS1
    PCTFREE    10
    INITRANS   1
    MAXTRANS   255
    STORAGE    (
                INITIAL          50M
                NEXT             50M
                MINEXTENTS       1
                MAXEXTENTS       UNLIMITED
                PCTINCREASE      0
                BUFFER_POOL      DEFAULT
               ), 
  PARTITION P201007 VALUES LESS THAN (TO_DATE(' 2010-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS',

'NLS_CALENDAR=GREGORIAN'))
    LOGGING
    NOCOMPRESS
    TABLESPACE PART_D_TS1
    PCTFREE    10
    INITRANS   1
    MAXTRANS   255
    STORAGE    (
                INITIAL          50M
                NEXT             50M
                MINEXTENTS       1
                MAXEXTENTS       UNLIMITED
                PCTINCREASE      0
                BUFFER_POOL      DEFAULT
               ), 
  PARTITION P201101 VALUES LESS THAN (TO_DATE(' 2011-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS',

'NLS_CALENDAR=GREGORIAN'))
    LOGGING
    NOCOMPRESS
    TABLESPACE PART_D_TS1
    PCTFREE    10
    INITRANS   1
    MAXTRANS   255
    STORAGE    (
                INITIAL          50M
                NEXT             50M
                MINEXTENTS       1
                MAXEXTENTS       UNLIMITED
                PCTINCREASE      0
                BUFFER_POOL      DEFAULT
               ), 
  PARTITION P201107 VALUES LESS THAN (TO_DATE(' 2011-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS',

'NLS_CALENDAR=GREGORIAN'))
    LOGGING
    NOCOMPRESS
    TABLESPACE PART_D_TS1
    PCTFREE    10
    INITRANS   1
    MAXTRANS   255
    STORAGE    (
                INITIAL          50M
                NEXT             50M
                MINEXTENTS       1
                MAXEXTENTS       UNLIMITED
                PCTINCREASE      0
                BUFFER_POOL      DEFAULT
               ), 
  PARTITION P201201 VALUES LESS THAN (TO_DATE(' 2012-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS',

'NLS_CALENDAR=GREGORIAN'))
    LOGGING
    NOCOMPRESS
    TABLESPACE PART_D_TS1
    PCTFREE    10
    INITRANS   1
    MAXTRANS   255
    STORAGE    (
                INITIAL          50M
                NEXT             50M
                MINEXTENTS       1
                MAXEXTENTS       UNLIMITED
                PCTINCREASE      0
                BUFFER_POOL      DEFAULT
               ), 
  PARTITION P201207 VALUES LESS THAN (TO_DATE(' 2012-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS',

'NLS_CALENDAR=GREGORIAN'))
    LOGGING
    NOCOMPRESS
    TABLESPACE PART_D_TS1
    PCTFREE    10
    INITRANS   1
    MAXTRANS   255
    STORAGE    (
                INITIAL          50M
                NEXT             50M
                MINEXTENTS       1
                MAXEXTENTS       UNLIMITED
                PCTINCREASE      0
                BUFFER_POOL      DEFAULT
               ), 
  PARTITION P201301 VALUES LESS THAN (TO_DATE(' 2013-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS',

'NLS_CALENDAR=GREGORIAN'))
    LOGGING
    NOCOMPRESS
    TABLESPACE PART_D_TS1
    PCTFREE    10
    INITRANS   1
    MAXTRANS   255
    STORAGE    (
                INITIAL          50M
                NEXT             50M
                MINEXTENTS       1
                MAXEXTENTS       UNLIMITED
                PCTINCREASE      0
                BUFFER_POOL      DEFAULT
               ), 
  PARTITION PMAX VALUES LESS THAN (MAXVALUE)
    LOGGING
    NOCOMPRESS
    TABLESPACE PART_D_TS1
    PCTFREE    10
    INITRANS   1
    MAXTRANS   255
    STORAGE    (
                INITIAL          50M
                NEXT             50M
                MINEXTENTS       1
                MAXEXTENTS       UNLIMITED
                PCTINCREASE      0
                BUFFER_POOL      DEFAULT
               )
)
NOCOMPRESS
NOCACHE
NOPARALLEL
MONITORING
ENABLE ROW MOVEMENT; 


假设没有maxvalue部分,那么加入分区: 


ALTER TABLE DFMS.WIP_D_WO_DETAIL
ADD PARTITION P201307 VALUES LESS THAN (TO_DATE(' 2013-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS',

NLS_CALENDAR=GREGORIAN'))
    LOGGING
    NOCOMPRESS
    TABLESPACE PART_D_TS1
    PCTFREE    10
    INITRANS   1
    MAXTRANS   255
    STORAGE    (
                INITIAL          50M
                NEXT             50M
                MINEXTENTS       1
                MAXEXTENTS       UNLIMITED
                PCTINCREASE      0
                BUFFER_POOL      DEFAULT
               )  ;

这里有maxvalue部分,那么加入分区需要split : 

备注: 
split partition时,根据split point原来的partition分裂成两个partition。
如果其中一个partition是空的,则不需要move原来的partition,也不需要rebuild
index,这种我们称之为fast split。

不过如果在split的时候指定了tablespace,即使其中一个partition是空的,而且该
tablespace与parent partition的tablespace不同,oracle会move整个partition到
新的tablespace中。因为这个tablespace参数,导致了原来的fast split不成功,而
需要move segment和rebuild index。

ALTER TABLE DFMS.WIP_D_WO_DETAIL
SPLIT PARTITION  PMAX  AT (TO_DATE(' 2013-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', NLS_CALENDAR=GREGORIAN'))
INTO  (PARTITION  P201307  TABLESPACE PART_D_TS1, PARTITION  PMAX  TABLESPACE  PART_D_TS1) ;

如果你需要取消maxvalue部分,那么split几部分后,查看最后一部分是否有值,如果没有,直接
drop掉最后split出去的那部分。 然后就可以直接add partition 了。

ALTER TABLE DFMS.WIP_D_WO_DETAIL
SPLIT PARTITION  PMAX  AT (TO_DATE(' 2013-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', NLS_CALENDAR=GREGORIAN'))
INTO  (PARTITION  P201307  TABLESPACE PART_D_TS1, PARTITION  P2014  TABLESPACE  PART_D_TS1) ;

ALTER TABLE DFMS.WIP_D_WO_DETAIL
SPLIT PARTITION  P2014  AT (TO_DATE(' 2014-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', NLS_CALENDAR=GREGORIAN'))
INTO  (PARTITION  P201401  TABLESPACE PART_D_TS1, PARTITION  P201407  TABLESPACE  PART_D_TS1) ;

ALTER TABLE DFMS.WIP_D_WO_DETAIL
SPLIT PARTITION  P201407  AT (TO_DATE(' 2014-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', NLS_CALENDAR=GREGORIAN'))
INTO  (PARTITION  P201407  TABLESPACE PART_D_TS1, PARTITION  P201501  TABLESPACE  PART_D_TS1) ;

ALTER TABLE DFMS.WIP_D_WO_DETAIL DROP PARTITION  P201501  ;

然后就可以类似没有设置maxvalue一样加入后面的partiton .

ALTER TABLE DFMS.WIP_D_WO_DETAIL
ADD PARTITION P201501 VALUES LESS THAN (TO_DATE(' 2015-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS',

NLS_CALENDAR=GREGORIAN')) ;

ALTER TABLE DFMS.WIP_D_WO_DETAIL
ADD PARTITION P201507 VALUES LESS THAN (TO_DATE(' 2015-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS',

NLS_CALENDAR=GREGORIAN')) ;

..... 


如果在split的时候将tablespace更换了,那么需要rebuild index .

下面的语句用于rebuild local index partitions或子分区
(子分区一般指range-hash等组合分区中的子分区) : 
ALTER INDEX ... REBUILD PARTITION/SUBPARTITION


ALTER TABLE ... MODIFY PARTITION/SUBPARTITION ... REBUILD UNUSABLE LOCAL INDEXES
这个语句找出所有的unusable的index, 然后rebuild他们。

关于如何进行分区表split操作及maxvalue处理就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

--结束END--

本文标题: 如何进行分区表split操作及maxvalue处理

本文链接: https://www.lsjlt.com/news/246091.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何进行分区表split操作及maxvalue处理
    这篇文章将为大家详细讲解有关如何进行分区表split操作及maxvalue处理,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。CREATE TABLE DFMS.WIP_D_WO_DETAIL...
    99+
    2023-06-06
  • Linux下NTFS分区如何进行写操作
    这篇文章给大家分享的是有关Linux下NTFS分区如何进行写操作的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Linux下NTFS分区的写操作只需通过简单点击即可完成。在你正常的工作中,假如你装的是双系统,其中一...
    99+
    2023-06-17
  • Impala中如何进行数据分区操作
    在 Impala 中,数据分区操作可以通过 PARTITION BY 子句来实现。在创建表的时候,可以指定一个或多个列作为分区键,例...
    99+
    2024-03-06
    Impala
  • 如何对Oracle分区表进行表空间迁移并处理
    这篇文章主要讲解了“如何对Oracle分区表进行表空间迁移并处理”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何对Oracle分区表进行表空间迁移并处理”...
    99+
    2024-04-02
  • MariaDB中如何进行分区表设计和管理
    在MariaDB中,分区表是指将一张表分割成多个独立的子表,每个子表称为一个分区。分区表可以提高查询性能、数据管理和维护的效率。 以...
    99+
    2024-04-09
    MariaDB
  • 如何进行Python列表处理
    如何进行Python列表处理,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。0、切片操作。同字符串切片操作,这里不多做解释获取列表长度:len实例:list=[&...
    99+
    2023-06-02
  • 如何使用PHP对图片进行处理和操作?
    随着互联网的不断发展,图片已经成为人们在网上交流和传播信息的重要媒介。对于网站开发人员而言,对图片进行处理和操作是十分必要的。在众多的程序设计语言中,PHP是一门十分流行的语言,本文将介绍如何使用PHP对图片进行处理和操作。一、图片上传在网...
    99+
    2023-05-21
    PHP 图片处理 图片操作
  • 批处理如何操作注册表
    这篇文章将为大家详细讲解有关批处理如何操作注册表,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一,批处理生成.Reg文件操作注册表   用批处理中的重定向符号可以轻松地生成.reg文件。然后用命令执行.r...
    99+
    2023-06-08
  • 阿里云服务器如何进行地区转换及操作方法
    阿里云服务器是阿里云提供的基于虚拟化技术的云服务器产品。用户可以通过阿里云的控制台进行阿里云服务器的区域切换,以满足不同业务场景的需求。本文将详细介绍阿里云服务器如何进行地区转换及操作方法。 一、阿里云服务器区域转换的必要性随着业务的发展,...
    99+
    2023-12-10
    阿里 操作方法 服务器
  • 微信小程序中如何进行删除处理操作
    这篇文章主要介绍微信小程序中如何进行删除处理操作,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!没有 confrim 那怎么实现这个效果呢?可以使用小程序里的模态框 代码:wxml:&...
    99+
    2024-04-02
  • Python3如何进行表格数据处理
    这篇文章主要介绍“Python3如何进行表格数据处理”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python3如何进行表格数据处理”文章能帮助大家解决问题。技术背景数据处理是一个当下非常热门的研究...
    99+
    2023-07-05
  • 如何在Oracle中进行空间管理和表分区维护
    在Oracle中进行空间管理和表分区维护可以通过以下步骤进行: 空间管理: 使用表空间来管理数据库中的数据文件,可以创建、修改...
    99+
    2024-04-09
    Oracle
  • 如何进行ORA-03137 TTC protocol internal error: [12333]分析及处理
    如何进行ORA-03137 TTC protocol internal error: [12333]分析及处理,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能...
    99+
    2024-04-02
  • 如何进行分库分表中多数据源的事务处理
    这期内容当中小编将会给大家带来有关如何进行分库分表中多数据源的事务处理,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。系统经sharding改造之后,原来单一的数据库会演变...
    99+
    2024-04-02
  • 如何对Git分支进行改名字操作
    Git是一款非常流行的版本控制工具,它强大的分支管理功能可以让团队高效地协同开发。在使用Git分支时,有时候我们需要给分支改名字,以便更好地管理和识别。那么,Git分支能否改名字呢?答案是肯定的。接下来,让我们来看一下如何对Git分支进行改...
    99+
    2023-10-22
  • 数据库中如何按时间及ID进行分区表创建事例
    小编给大家分享一下数据库中如何按时间及ID进行分区表创建事例,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!Oracle表分区优点:1、 增强可用性:如果表的一个分区由于系统故障而不能使用,...
    99+
    2024-04-02
  • 麒麟操作系统中的磁盘分区和格式化如何进行
    在麒麟操作系统中,磁盘分区和格式化可以通过以下步骤进行:1. 打开“磁盘工具”应用程序。可以通过在“应用程序启动器”中搜索“磁盘”来...
    99+
    2023-10-10
    麒麟操作系统
  • 分时操作系统如何处理进程之间的通信?
    引言 分时操作系统是一种多任务操作系统,允许多个进程同时在同一计算机上运行。为了使进程能够有效地交互,分时操作系统提供了一系列机制来处理进程之间的通信。这些机制对于多进程应用程序来说至关重要,它允许进程之间共享数据、同步操作并响应事件。...
    99+
    2024-03-05
    分时操作系统、进程间通信、管道、信号、共享内存、消息队列
  • 如何进行DB2表结构批量处理
    这期内容当中小编将会给大家带来有关如何进行DB2表结构批量处理,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一、查询所有列SELECT   &...
    99+
    2024-04-02
  • PHP Linux脚本操作经验分享:利用正则表达式进行文本处理
    正则表达式是处理文本的强大工具,能够快速而灵活地匹配、搜索和替换文本中的模式。在PHP Linux脚本编程中,利用正则表达式进行文本处理常常是必不可少的技能。本文将分享一些实用的正则表达式操作技巧,并提供具体的代码示例供参考。匹配和提取文本...
    99+
    2023-10-21
    Linux PHP 正则表达式
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作