Compressing partition table

Hi Gurus,
I have to compress partition tables which has global(non-partitioned)indexes.If the do the partition compress with ALTER TABLE MOVE PARTITION COMPRESS this will invalidates the global indexes .
Can i use update global indexes with the above statement?or there is no way to avoid global indexes going invalid during the compress operation?
Synatx for compressing partition with update global index would really help me.
Thanks

Hi,
Have a look at:
http://download.oracle.com/docs/cd/E11882_01/server.112/e17118/statements_3001.htm#BABDIDEJ
If the moved partitions are not empty, then the database marks them UNUSABLE. The database invalidates global indexes on heap-organized tables. You can update these indexes during this operation using the update_index_clauses.
Regards
Maurice

Similar Messages

  • How can I add a new column in compress partition table.

    I have a compress partition table when I add a new column in that table it give me an error "ORA-22856: CANNOT ADD COLUMNS TO OBJECT TABLES". I had cretaed a table in this clause. How can I add a new column in compress partition table.
    CREATE TABLE Employee
    Empno Number,
    Tr_Date Date
    COMPRESS PARTITION BY RANGE (Tr_Date)
    PARTITION FIRST Values LESS THAN (To_Date('01-JUL-2006','DD-MON-YYYY')),
    PARTITION JUNK Values LESS THAN (MAXVALUE));
    Note :
    When I create table with this clause it will allow me to add a column.
    CREATE TABLE Employee
    Empno Number,
    Tr_Date Date
    PARTITION BY RANGE (Tr_Date)
    PARTITION FIRST Values LESS THAN (To_Date('01-JUL-2006','DD-MON-YYYY')),
    PARTITION JUNK Values LESS THAN (MAXVALUE));
    But for this I have to drop and recreate the table and I dont want this becaue my table is in online state i cannot take a risk. Please give me best solution.

    Hi Fahed,
    I guess, you are using Oracle 9i Database Release 9.2.0.2 and the Table which you need to alter is in OLTP environment where data is usually inserted using regular inserts. As a result, these tables generally do not get much benefit from using table compression. Table compression works best on read-only tables that are loaded once but read many times. Tables used in data warehousing applications, for example, are great candidates for table compression.
    Reference : http://www.oracle.com/technology/oramag/oracle/04-mar/o24tech_data.html
    Topic : When to Use Table Compression
    Bug
    Reference : http://dba.ipbhost.com/lofiversion/index.php/t147.html
    BUG:<2421054>
    Affects: RDBMS (9-A0)
    NB: FIXED
    Abstract: ENH: Allow ALTER TABLE to ADD/DROP columns for tables using COMPRESS feature
    Details:
    This is an enhancement to allow "ALTER TABLE" to ADD/DROP
    columns for tables using the COMPRESS feature.
    In 9i errors are reported for ADD/DROP but the text may
    be misleading:
    eg:
    ADD column fails with "ORA-22856: cannot add columns to object tables"
    DROP column fails with "ORA-12996: cannot drop system-generated virtual column"
    Note that a table which was previously marked as compress which has
    now been altered to NOCOMPRESS also signals such errors as the
    underlying table could still contain COMPRESS format datablocks.
    As of 10i ADD/SET UNUSED is allowed provided the ADD has no default value.
    Best Regards,
    Muhammad Waseem Haroon
    [email protected]

  • Export Issues with Compressed Partition Tables?

    We recently partitioned and compressed some large tables. It appears, but I'm not sure yet, that this is causing the export to run extremely slow. The database is at 10.2.0.2 and we are using the exp utility, not datapump. Does anyone know of any known issues with using exp to export compressed, partitioned tables?

    can you give more details of the table structure with dbms_metadata if possible, and how you are taking the export please?
    did you try to take an sql*trace of the export process to see what is going on behind, this is an introduction if you may need;
    http://tonguc.wordpress.com/2006/12/30/introduction-to-oracle-trace-utulity-and-understanding-the-fundamental-performance-equation/

  • Compress partitioned table

    Hello
    I have a table with 10 partitions and I would like to compress all of them. What is the best way to accomplish this?
    Thank you.

    There are several ways to do it, depending on your availability needs.
    One option:
    1. Create a compressed staging table that has the same structure as your partitioned table.
    2. Direct path insert data from one partition into this table, remember to order the data to gain the best compression (remember that chainging the order will affect the clustering factor for the indexes, could cause change in execution plans).
    3. Create the same indexes on your staging table as you have on your main table.
    4. Exchange the current partition with the staging table (alter table ... exchange partition ...).
    Repeat it for all of your partitions.
    /Kristian

  • Drop column from compressed partitioned table

    Hi,
    DB version is 11.2.02.
    We have table which is range partitioned and sub-partitioned by list.
    Table is also compressed.
    When I try to drop a column, I get error.
    CREATE TABLE DWH_REP.P_RATING (
      id_source$                 NUMBER(38,0)  NULL,
      time_insert$               DATE          ,
      time_update$               DATE          ,
      FLG_CURRENT$               NUMBER(38,0)  ,
      FLG_CHANGED$               NUMBER(38,0)  ,
      id_audit$                  NUMBER(38,0)  ,
      ID_DATE_PSTING             NUMBER(38,0)  ,
      partner_rating_id          VARCHAR2(256) ,
      partner_id                 VARCHAR2(256) ,
      id_partner                 NUMBER(38,0)  , 
      rating_system_id           VARCHAR2(256) ,
      rating_id                  VARCHAR2(256) ,
      date_rating                DATE          ,
      date_follow_up             DATE          ,
      risk_team_id               VARCHAR2(256) ,
      risk_team_descr            VARCHAR2(256) ,
      risk_team_changed_id       VARCHAR2(256) ,
      risk_team_changed_descr    VARCHAR2(256) ,
      date_risk_team_changed     DATE          ,
      assignment_id              VARCHAR2(256) ,
      date_assignment            DATE          ,
      date_assignment_confirmed  DATE          ,
      date_assignment_expiration DATE          ,
      flg_exception              VARCHAR2(256) ,
      exception_id               VARCHAR2(256) ,
      date_exception             DATE         
    -- TABLESPACE DWH_REP_DATA
    PARTITION BY RANGE (FLG_CURRENT$, ID_DATE_PSTING)
       SUBPARTITION BY LIST (ID_SOURCE$)
       (PARTITION P_RATING_2010               
           VALUES LESS THAN (0, 20110101)
           SUBPARTITION P_RATING_2010_UCS VALUES  (10) TABLESPACE DWH_O_2010_TBS,
           SUBPARTITION P_RATING_2010_UCM VALUES (11) TABLESPACE DWH_O_2010_TBS,
    --     SUBPARTITION P_RATING_2010_ORBI30 VALUES  (30) TABLESPACE DWH_O_2010_TBS,
    --     SUBPARTITION P_RATING_2010_ORBI31 VALUES  (31) TABLESPACE DWH_O_2010_TBS,
           SUBPARTITION P_RATING_2010_CETELEM VALUES  (40) TABLESPACE DWH_O_2010_TBS,
    --     SUBPARTITION P_RATING_2010_MILES VALUES  (60) TABLESPACE DWH_O_2010_TBS,
    --     SUBPARTITION P_RATING_2010_BHI VALUES  (80) TABLESPACE DWH_O_2010_TBS,
           SUBPARTITION P_RATING_2010_DF VALUES  (DEFAULT) TABLESPACE DWH_O_2010_TBS),   
         PARTITION P_RATING_2011            
           VALUES LESS THAN (0, 20120101)
           SUBPARTITION P_RATING_2011_UCS VALUES (10) TABLESPACE DWH_O_2011_TBS,
           SUBPARTITION P_RATING_2011_UCM VALUES (11) TABLESPACE DWH_O_2011_TBS,
    --     SUBPARTITION P_RATING_2011_ORBI30 VALUES (30) TABLESPACE DWH_O_2011_TBS,
    --     SUBPARTITION P_RATING_2011_ORBI31 VALUES (31) TABLESPACE DWH_O_2011_TBS,
           SUBPARTITION P_RATING_2011_CETELEM VALUES (40) TABLESPACE DWH_O_2011_TBS,
    --     SUBPARTITION P_RATING_2011_MILES VALUES (60) TABLESPACE DWH_O_2011_TBS,
    --     SUBPARTITION P_RATING_2011_BHI VALUES (80) TABLESPACE DWH_O_2011_TBS,
           SUBPARTITION P_RATING_2011_DF VALUES (DEFAULT) TABLESPACE DWH_O_2011_TBS),
        PARTITION P_RATING_current           
           VALUES LESS THAN (maxvalue, maxvalue)
           SUBPARTITION P_RATING_CUR_UCS VALUES (10) TABLESPACE DWH_O_CRT_UCS_TBS,
           SUBPARTITION P_RATING_CUR_UCM VALUES (11) TABLESPACE DWH_O_CRT_UPM_TBS,
    --     SUBPARTITION P_RATING_CUR_ORBI30 VALUES (30) TABLESPACE DWH_O_CRT_ORBI30_TBS,
    --     SUBPARTITION P_RATING_CUR_ORBI31 VALUES (31) TABLESPACE DWH_O_CRT_ORBI31_TBS,
           SUBPARTITION P_RATING_CUR_CETELEM VALUES (40) TABLESPACE DWH_O_CRT_CETELEM_TBS,
    --     SUBPARTITION P_RATING_CUR_MILES VALUES (60) TABLESPACE DWH_O_CRT_MILES_TBS,
    --     SUBPARTITION P_RATING_CUR_BHI VALUES (80) TABLESPACE DWH_O_CRT_BHI_TBS,
           SUBPARTITION P_RATING_CUR_DF VALUES (DEFAULT) TABLESPACE DWH_O_CRT_DF_TBS))
    ENABLE ROW MOVEMENT
    NOLOGGING
    COMPRESS
    NOCACHE
    NOPARALLEL
    MONITORING;
    ALTER TABLE DWH_REP.P_RATING DROP COLUMN ID_PARTNER;
    ORA-39726: unsupported add/drop column operation on compressed tables

    littleboy wrote:
    Hi,
    DB version is 11.2.02.
    We have table which is range partitioned and sub-partitioned by list.
    Table is also compressed.
    When I try to drop a column, I get error.
    CREATE TABLE DWH_REP.P_RATING (
    id_source$                 NUMBER(38,0)  NULL,
    time_insert$               DATE          ,
    time_update$               DATE          ,
    FLG_CURRENT$               NUMBER(38,0)  ,
    FLG_CHANGED$               NUMBER(38,0)  ,
    id_audit$                  NUMBER(38,0)  ,
    ID_DATE_PSTING             NUMBER(38,0)  ,
    partner_rating_id          VARCHAR2(256) ,
    partner_id                 VARCHAR2(256) ,
    id_partner                 NUMBER(38,0)  , 
    rating_system_id           VARCHAR2(256) ,
    rating_id                  VARCHAR2(256) ,
    date_rating                DATE          ,
    date_follow_up             DATE          ,
    risk_team_id               VARCHAR2(256) ,
    risk_team_descr            VARCHAR2(256) ,
    risk_team_changed_id       VARCHAR2(256) ,
    risk_team_changed_descr    VARCHAR2(256) ,
    date_risk_team_changed     DATE          ,
    assignment_id              VARCHAR2(256) ,
    date_assignment            DATE          ,
    date_assignment_confirmed  DATE          ,
    date_assignment_expiration DATE          ,
    flg_exception              VARCHAR2(256) ,
    exception_id               VARCHAR2(256) ,
    date_exception             DATE         
    -- TABLESPACE DWH_REP_DATA
    PARTITION BY RANGE (FLG_CURRENT$, ID_DATE_PSTING)
    SUBPARTITION BY LIST (ID_SOURCE$)
    (PARTITION P_RATING_2010               
    VALUES LESS THAN (0, 20110101)
    SUBPARTITION P_RATING_2010_UCS VALUES  (10) TABLESPACE DWH_O_2010_TBS,
    SUBPARTITION P_RATING_2010_UCM VALUES (11) TABLESPACE DWH_O_2010_TBS,
    --     SUBPARTITION P_RATING_2010_ORBI30 VALUES  (30) TABLESPACE DWH_O_2010_TBS,
    --     SUBPARTITION P_RATING_2010_ORBI31 VALUES  (31) TABLESPACE DWH_O_2010_TBS,
    SUBPARTITION P_RATING_2010_CETELEM VALUES  (40) TABLESPACE DWH_O_2010_TBS,
    --     SUBPARTITION P_RATING_2010_MILES VALUES  (60) TABLESPACE DWH_O_2010_TBS,
    --     SUBPARTITION P_RATING_2010_BHI VALUES  (80) TABLESPACE DWH_O_2010_TBS,
    SUBPARTITION P_RATING_2010_DF VALUES  (DEFAULT) TABLESPACE DWH_O_2010_TBS),   
    PARTITION P_RATING_2011            
    VALUES LESS THAN (0, 20120101)
    SUBPARTITION P_RATING_2011_UCS VALUES (10) TABLESPACE DWH_O_2011_TBS,
    SUBPARTITION P_RATING_2011_UCM VALUES (11) TABLESPACE DWH_O_2011_TBS,
    --     SUBPARTITION P_RATING_2011_ORBI30 VALUES (30) TABLESPACE DWH_O_2011_TBS,
    --     SUBPARTITION P_RATING_2011_ORBI31 VALUES (31) TABLESPACE DWH_O_2011_TBS,
    SUBPARTITION P_RATING_2011_CETELEM VALUES (40) TABLESPACE DWH_O_2011_TBS,
    --     SUBPARTITION P_RATING_2011_MILES VALUES (60) TABLESPACE DWH_O_2011_TBS,
    --     SUBPARTITION P_RATING_2011_BHI VALUES (80) TABLESPACE DWH_O_2011_TBS,
    SUBPARTITION P_RATING_2011_DF VALUES (DEFAULT) TABLESPACE DWH_O_2011_TBS),
    PARTITION P_RATING_current           
    VALUES LESS THAN (maxvalue, maxvalue)
    SUBPARTITION P_RATING_CUR_UCS VALUES (10) TABLESPACE DWH_O_CRT_UCS_TBS,
    SUBPARTITION P_RATING_CUR_UCM VALUES (11) TABLESPACE DWH_O_CRT_UPM_TBS,
    --     SUBPARTITION P_RATING_CUR_ORBI30 VALUES (30) TABLESPACE DWH_O_CRT_ORBI30_TBS,
    --     SUBPARTITION P_RATING_CUR_ORBI31 VALUES (31) TABLESPACE DWH_O_CRT_ORBI31_TBS,
    SUBPARTITION P_RATING_CUR_CETELEM VALUES (40) TABLESPACE DWH_O_CRT_CETELEM_TBS,
    --     SUBPARTITION P_RATING_CUR_MILES VALUES (60) TABLESPACE DWH_O_CRT_MILES_TBS,
    --     SUBPARTITION P_RATING_CUR_BHI VALUES (80) TABLESPACE DWH_O_CRT_BHI_TBS,
    SUBPARTITION P_RATING_CUR_DF VALUES (DEFAULT) TABLESPACE DWH_O_CRT_DF_TBS))
    ENABLE ROW MOVEMENT
    NOLOGGING
    COMPRESS
    NOCACHE
    NOPARALLEL
    MONITORING;
    ALTER TABLE DWH_REP.P_RATING DROP COLUMN ID_PARTNER;
    ORA-39726: unsupported add/drop column operation on compressed tables
    can you checkwith following?
    SQL>alter table t set unused column x;
    SQL>alter table t drop unused columns;Tom explains it ->http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:69076630635645

  • Compression getting disabled when performing Update on partitioned tables

    Hi All,
    I am on Oracle Database 11g Enterprise Edition Release 11.2.0.3.0.
    My question is related to Oracle Compression.
    I have a sub-partitioned table enabled with Basic Compression. In enabled compressed state, I am updating few columns of this table(Normal Update command and Merge as well) but the end result shows increase in the table size and the compression is still in ENABLED state. Post that, if I compress the sub-partition explicitly the table comes back to its original size.
    Is it a bug? I read a white paper on 11g itself, that compression remains enabled in case of all DML operations, then why this behaviour?
    Thanks,
    Ishan

    Ishan,
    taking a look at http://docs.oracle.com/cd/E11882_01/server.112/e25494/tables.htm#CJAGFBFG It seems that the distinction between OLTP and basic compression is sometimes a little bit vague ("Operations that permit compression include: ..."), but I can also find the statement "Rows inserted without using direct-path insert and updated rows are uncompressed." So I would say it's not a bug but a limitation of the feature. Updates just don't mix well with compression.
    Martin

  • Can we compress hash partitioned table in 9.2

    Hi
    Can we compress the hash partitioned table? How to check the compression? Is there any way to check for the partition size after compression?
    Thanks

    hi
    go through below link
    hope it will help you.
    http://www.dbazine.com/oracle/or-articles/foot6
    http://www.google.ae/search?hl=en&q=compressed+hash+partition+++oracle+9i&meta=
    also check in google seconed point... Table compression do and don't.
    hope this helps
    Taj.

  • HOW to enable oracle advance compression for EXIST partitioned table

    Hi All,
    I have to enable oracle advance compression for existing table which PARTITION BY RANGE then SUBPARTITION BY HASH.
    ORacle version: 11.2.0.2.0
    Please provide me any relevant doc or any exp.
    Thanks in advance.

    could not see any text for how to enable oracle advance compression for EXIST partitioned table.RTFM.
    From the resource above:
    How do I compress an existing table?
    There are multiple options available to compress existing tables. For offline compression, one could use ALTER TABLE Table_Name MOVE COMPRESS statement. A compressed copy of an existing table can be created by using CREATE TABLE Table_Name COMPRESS FOR ALL OPERATIONS AS SELECT *. For online compression, Oracle’s online redefinition utility can be used. More details for online redefinition are available here.
    "

  • Range interavl partitioned table not being created in compressed format

    Hi,
    Using oracle 11.2.03. and trying to create a table with compress
    Normal table fine but trying syntax below but tabel properties show no compression
    Tried compress at top of sql as per belwo and at bottom
    Aldso tried compress and compress for oltp - same bahviour not getting compressed.
    nOW HSOING AT TABLE LEVEL OR ON TABLE PORPETIES BUT WHEN check user_tab_partitions shows as compressed for oltp
    Thanks
    create table RETAILER_TRANSACTION_comP_POR parallel
    COMPRESS FOR OLTP
    partition by range (PARTITIONING_DATE)
    INTERVAL (NUMTOYMINTERVAL(1,'MONTH'))
    subpartition by hash (PLANT_ISSUE_ID)
    subPARTITIONS 4
      partition PART_200912 values less than (TO_DATE(' 2010-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_200912
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201001 values less than (TO_DATE(' 2010-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201001
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201002 values less than (TO_DATE(' 2010-03-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201002
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201003 values less than (TO_DATE(' 2010-04-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201003
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201004 values less than (TO_DATE(' 2010-05-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201004
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201005 values less than (TO_DATE(' 2010-06-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201005
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201006 values less than (TO_DATE(' 2010-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201006
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201007 values less than (TO_DATE(' 2010-08-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
      tablespace RTRN_PART_201007
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201008 values less than (TO_DATE(' 2010-09-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201008
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201009 values less than (TO_DATE(' 2010-10-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201009
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201010 values less than (TO_DATE(' 2010-11-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201010
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201011 values less than (TO_DATE(' 2010-12-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201011
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201012 values less than (TO_DATE(' 2011-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201012
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201101 values less than (TO_DATE(' 2011-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201101
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201102 values less than (TO_DATE(' 2011-03-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201102
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201103 values less than (TO_DATE(' 2011-04-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201103
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201104 values less than (TO_DATE(' 2011-05-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201104
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201105 values less than (TO_DATE(' 2011-06-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201105
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201106 values less than (TO_DATE(' 2011-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201106
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201107 values less than (TO_DATE(' 2011-08-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201107
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201108 values less than (TO_DATE(' 2011-09-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201108
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201109 values less than (TO_DATE(' 2011-10-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201109
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201110 values less than (TO_DATE(' 2011-11-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201110
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201111 values less than (TO_DATE(' 2011-12-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201111
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201112 values less than (TO_DATE(' 2012-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
       tablespace RTRN_PART_201112
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201201 values less than (TO_DATE(' 2012-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201201
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201202 values less than (TO_DATE(' 2012-03-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
         tablespace RTRN_PART_201202
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201203 values less than (TO_DATE(' 2012-04-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201203
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201204 values less than (TO_DATE(' 2012-05-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201204
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201205 values less than (TO_DATE(' 2012-06-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
         tablespace RTRN_PART_201205
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201206 values less than (TO_DATE(' 2012-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201206
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201207 values less than (TO_DATE(' 2012-08-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
       tablespace RTRN_PART_201207
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201208 values less than (TO_DATE(' 2012-09-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201208
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201209 values less than (TO_DATE(' 2012-10-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201209
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201210 values less than (TO_DATE(' 2012-11-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201210
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201211 values less than (TO_DATE(' 2012-12-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201211
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201212 values less than (TO_DATE(' 2013-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
          tablespace RTRN_PART_201212
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201301 values less than (TO_DATE(' 2013-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
          tablespace RTRN_PART_201301
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201302 values less than (TO_DATE(' 2013-03-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201302
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201303 values less than (TO_DATE(' 2013-04-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201303
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201304 values less than (TO_DATE(' 2013-05-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
       tablespace RTRN_PART_201304
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201305 values less than (TO_DATE(' 2013-06-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201305
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201306 values less than (TO_DATE(' 2013-07-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201306
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201307 values less than (TO_DATE(' 2013-08-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201307
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201308 values less than (TO_DATE(' 2013-09-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201308
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201309 values less than (TO_DATE(' 2013-10-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201309
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201310 values less than (TO_DATE(' 2013-11-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201310
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201311 values less than (TO_DATE(' 2013-12-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201311
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
      partition PART_201312 values less than (TO_DATE(' 2014-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
        tablespace RTRN_PART_201312
        pctfree 1
        initrans 1
        maxtrans 255
        storage
          initial 8M
          next 1M
          minextents 1
          maxextents unlimited
    --COMPRESS --FOR OLTP
    as select *
    from retailer_transaction RT
    WHERE RT.DWH_NUM = 1441336376Edited by: user5716448 on 26-Mar-2013 07:16

    >
    Normal table fine but trying syntax below but tabel properties show no compression
    >
    What properties? You didn't show any query or result that shows if the table is compressed or not.
    >
    nOW HSOING AT TABLE LEVEL OR ON TABLE PORPETIES BUT WHEN check user_tab_partitions shows as compressed for oltp
    >
    I have no idea what any of that means.
    Again - you didn't post anything showing if the table is compressed or not. And without the DDL for the source table no one can try to reproduce your results.
    Thanks for using code tags and posting some of the DDL needed but you should edit your post and REMOVE all of the extra partition definitions since all they do is bloat the listing.
    This works for me in vanilla 11.2.0.1.0
    create table EMP_PART parallel
    COMPRESS FOR OLTP
    partition by range (hiredate)
    INTERVAL (NUMTOYMINTERVAL(1,'MONTH'))
    subpartition by hash (deptno)
    subPARTITIONS 4
      partition all_data values less than (to_date('01/01/2013', 'mm/dd/yyyy')
    as select * from emp
    select table_name, compression, compress_for, composite, partition_name
    from user_tab_partitions
    TABLE_NAME     COMPRESSION     COMPRESS_FOR     COMPOSITE     PARTITION_NAME
    EMP_PART     ENABLED     OLTP     YES     ALL_DATA

  • Large partitioned tables with WM

    Hello
    I've got a few large tables (6-10GB+) that will have around 500k new rows added on a daily basis as part of an overnight batch job. No rows are ever updated, only inserted or deleted and then re-inserted. I want to stop the process that adds the new rows from being an overnight batch to being a near real time process i.e. a queue will be populated with requests to rebuild the content of these tables for specific parent ids, and a process will consume those requests throughout the day rather than going through the whole list in one go.
    I need to provide views of the data asof a point in time i.e. what was the content of the tables at close of business yesterday, and for this I am considering using workspaces.
    I need to keep at least 10 days worth of data and I was planning to partition the table and drop one partition every day. If I use workspaces, I can see that oracle creates a view in place of the original table and creates a versioned table with the LT suffix - this is the table name returned by DBMSMW.GetPhysicalTableName. Would it be considered bad practice to drop partitions from this physical table as I would do with a non version enabled table? If so, what would be the best method for dropping off old data?
    Thanks in advance
    David

    Hello Ben
    Thank you for your reply.
    The table structure we have is like so:
    CREATE TABLE hdr
    (   pk_id               NUMBER PRIMARY KEY,
        customer_id         NUMBER FOREIGN KEY REFERENCES customer,
        entry_type          NUMBER NOT NULL
    CREATE TABLE dtl_daily
    (   pk_id               NUMBER PRIMARY KEY,
        hdr_id              NUMBER FOREIGN KEY REFERENCES hdr
        active_date         DATE NOT NULL,
        col1                NUMBER
        col2                NUMBER
    PARTITION BY RANGE(active_date)
    (   PARTITION ptn_200709
            VALUES LESS THAN (TO_DATE('200710','YYYYMM'))
            TABLESPACE x COMPRESS,
        PARTITION ptn_200710
            VALUES LESS THAN (TO_DATE('200711','YYYYMM'))
            TABLESPACE x COMPRESS
    CREATE TABLE dtl_hourly
    (   pk_id               NUMBER PRIMARY KEY,
        hdr_id              NUMBER FOREIGN KEY REFERENCES hdr
        active_date         DATE NOT NULL,
        active_hour         NUMBER NOT NULL,
        col1                NUMBER
        col2                NUMBER
    PARTITION BY RANGE(active_date)
    (   PARTITION ptn_20070901
            VALUES LESS THAN (TO_DATE('20070902','YYYYMMDD'))
            TABLESPACE x COMPRESS,
        PARTITION ptn_20070902
            VALUES LESS THAN (TO_DATE('20070903','YYYYMMDD'))
            TABLESPACE x COMPRESS
        PARTITION ptn_20070903
            VALUES LESS THAN (TO_DATE('20070904','YYYYMMDD'))
            TABLESPACE x COMPRESS
        ...For every day for 20 years
    /The hdr table holds one or more rows for each customer and has it's own synthetic key generated for every entry as there can be multiple rows having the same entry_type for a customer. There are two detail tables, daily and hourly, which hold detail data at those two granularities. Some customers require hourly detail, in which case the hourly table is populated and the daily table is populated by aggregating the hourly data. Other customers require only daily data in which case the hourly table is not populated.
    At the moment, changes to customer data require that the content of these tables are rebuilt for that customer. This rebuild is done every night for the changed customers and I want to change this to be a near real time rebuild. The rebuild involves deleteing all existing entries from the three tables for the customer and then re-inserting the new set using new synthetic keys. If we do make this near real time, we need to be able to provide a snapshot of the data asof close of business every day, and we need to be able to report as of a point of time up to 10 days in the past.
    For any one customer, they may have rows in the hourly table that goes out 20 years at a hourly granularity, but once the active date has passed(by 10 days), we no longer need to keep it. This is why we were considering partitioning as it gives us a simple way of dropping off old data, and as a nice side effect, helps to improve performance of queries that are looking for active data between a range of dates (which is most of them).
    I did have a look at the idea of save points but I wasn't sure it would be efficient. So in this case, would the idea be that we don't partition the table but instead at close of business every day, we create a savepoint like "savepoint_20070921" and instead of using dbms_wm.gotodate. we would use dbms_wm.gotosavepoint. Then every day we would do
    DBMS_WM.DeleteSavepoint(
       workspace                   => 'LIVE',
       savepoint_name              => 'savepoint_20070910', --10 days ago
       compress_view_wo_overwrite  => TRUE,
    DBMS_WM.CompressWorkspace(
       workspace                   => 'LIVE,
       compress_view_wo_overwrite  => TRUE,
       firstSP                     => 'savepoint_20070911', --the new oldest save point
       );Is my understanding correct?
    David
    Message was edited by:
    fixed some formatting
    David Tyler

  • How to add new column in partition table

    Hi,
    In Oracle 10g Database, I have one table (X) with list partition . I have added one new column to "X" by "Alter Table" command. Please advise whether any other command needs to be executed since it is a partition table .
    The "X" table is used for partition swapping with another table (Y). I have added the same column also in table "Y". Will there be any issue while swapping the partion with the following command
    alter table X exchange partition partition_name with table Y
    Version Details :
    Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 OS
    Solaris 5.10
    Thanks in advance

    you would have to explicitly put that into the create table as select - the partition details.
    ops$tkyte%ORA10GR2> create table t1
    2 PARTITION BY RANGE (dt)
    3 (
    4 PARTITION part1 VALUES LESS THAN (to_date('13-mar-2003','dd-mon-yyyy')) ,
    5 PARTITION part2 VALUES LESS THAN (to_date('14-mar-2003','dd-mon-yyyy')) ,
    6 PARTITION junk VALUES LESS THAN (MAXVALUE)
    7 )
    8 COMPRESS
    9 as
    10 select * from t;
    Table created.
    Source:http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:69076630635645
    Hth
    Girish Sharma

  • Performance between two partitionned tables with different structure

    Hi,
    I would like if there is a difference between two partitionned tables with different structure in term of performance (access, query, insertions, updates ).
    I explain myself in detail :
    I have a table that stores one value every 10 minutes in a day (so we have 144 values (24*6) in the whole day), with the corresponding id.
    Here is the structure :
    | Table T1 |
    + id PK |
    + date PK |
    + sample1 |
    + sample2 |
    + ... |
    + sample144 |
    The table is partionned on the column date, with a partionned every months. The primary key is based on the columns (id, date).
    There is an additionnal index on the column (id) (is it useful ?).
    I would like to know if it is better to have a table with just (id, date, value) , so for one row in the first table we'll have 144 rows in the future? table. The partition will already be on the columns (id, date) with the index associated.
    What are the gains or loss in performance with this new structure ( access, DMLs , storage ) ?
    I discuss with the Java developers and they say it is simpler to manage in their code.
    Oracle version : Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
    Thanks & Regards
    From France
    Oliver
    Edited by: 998239 on 5 avr. 2013 01:59

    I mean storage in tablespaces and datafiles on disk.
    Can you justify please and give me concrete arguments why the two structures are equivalent ( except inserting data in T(id, date,value))
    because i have to make a report.i didnt say any thing like
    two structures are equivalent ( except inserting data in T(id, date,value)i said
    About structure : TABLE1(id, date, value) is better than TABLE1(id, date, sample1, .... sample144)because
    1) oracle has restriction for numbers of column. Ok you can have 144 columns now but for future if you must have more than 1000 columns , what will you do?
    2) Restrictions on Table Compression (Table compression is not supported for tables with more than 255 columns.)
    3) store same type values on diffrent columns is bad practise
    http://docs.oracle.com/cd/B28359_01/server.111/b28318/schema.htm#i4383
    i remember i seen Toms article about this but now i cant find it sorry ((( if i found i will post here

  • Gathering statistics on partitioned and non-partitioned tables

    Hi all,
    My DB is 11.1
    I find that gathering statistics on partitioned tables are really slow.
    TABLE_NAME                       NUM_ROWS     BLOCKS SAMPLE_SIZE LAST_ANALYZED PARTITIONED COMPRESSION
    O_FCT_BP1                        112123170     843140    11212317 8/30/2011 3:5            NO                    DISABLED
    LEON_123456                      112096060     521984    11209606 8/30/2011 4:2           NO                   ENABLED
    O_FCT                           115170000     486556      115170 8/29/2011 6:3            YES        
    SQL> SELECT COUNT(*)  FROM user_tab_subpartitions
      2  WHERE table_name =O_FCT'
      3  ;
      COUNT(*)
           112I used the following script:
    BEGIN
      DBMS_STATS.GATHER_TABLE_STATS(ownname          => user,
                                    tabname          => O_FCT',
                                    method_opt       => 'for all columns size auto',
                                    degree           => 4,
                                    estimate_percent =>10,
                                    granularity      => 'ALL',
                                    cascade          => false);
    END;
    /It costs 2 mins for the first two tables to gather the statistics respectively, but more than 10 mins for the partitioned table.
    The time of collecting statistics accounts for a large part of total batch time.
    And most jobs of the batch are full load in which case all partitions and subpartitions will be affected and we can't just gather specified partitions.
    Does anyone have some experiences on this subject? Thank you very much.
    Best regards,
    Leon
    Edited by: user12064076 on Aug 30, 2011 1:45 AM

    Hi Leon
    Why don't you gather stats at partition level? If your partitions data is not going to change after a day (date range partition for ex), you can simply do at partition level
    GRANULARITY=>'PARTITION' for partition level and
    GRANULARITY=>'SUBPARTITION' for subpartition level
    You are gathering global stats every time which you may not require.
    Edited by: user12035575 on 30-Aug-2011 01:50

  • Create list-range partition table

    Database version: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi
    I am trying to create a partition table with LIST-Range, and I am getting this following error, is oracle 10.2.0.4 database supports to create list-range partition(composite)
    SQL> CREATE TABLE tbp_list_range
    REPORT_DATE DATE,
    member_id_01 varchar2(2),
    DATE_SERVICE date,
    member_id varchar2(15)
    PARTITION BY LIST(member_id_01)
    SUBPARTITION BY RANGE (DATE_SERVICE)
    PARTITION SPTYR04M01_C VALUES('AA','aa')
    NOLOGGING
    COMPRESS (
    SUBPARTITION PTYR12M011 VALUES LESS THAN (TO_DATE(' 2012-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')),
    SUBPARTITION PTYR12M021 VALUES LESS THAN (TO_DATE(' 2012-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')),
    SUBPARTITION recent1 VALUES LESS THAN (MAXVALUE)
    PARTITION SPTYR04M01_Yo VALUES('BJ','bj')
    NOLOGGING
    COMPRESS (
    SUBPARTITION PTYR12M01 VALUES LESS THAN (TO_DATE(' 2012-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')),
    SUBPARTITION PTYR12M02 VALUES LESS THAN (TO_DATE(' 2012-02-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')),
    SUBPARTITION recent2 VALUES LESS THAN (MAXVALUE)
    SUBPARTITION BY RANGE (DATE_SERVICE)
    ERROR at line 9:
    ORA-00922: missing or invalid option
    SQL> select * from v$version;
    BANNER
    Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi
    PL/SQL Release 10.2.0.4.0 - Production
    CORE 10.2.0.4.0 Production
    TNS for Linux: Version 10.2.0.4.0 - Production
    NLSRTL Version 10.2.0.4.0 - Production
    Any help would be greatly appreciated.
    Thanks,

    any possible work around for this scenario on 10.2.0.4
    --thanks                                                                                                                                                                                               

  • Need to uncompress a hash partitioned table

    I am working on oracle 11.1.0.7 database on solaris.
    We had issues loading data into compressed tables, so we are trying to uncompress the tables and their partitions.
    When I tried uncompressing a hash partitioned table, I am getting this error
    SQL> alter table sample move partition SYS_1 nocompress;
    alter table sample move partition SYS_1 nocompress
    ERROR at line 1:
    ORA-14260: incorrect physical attribute specified for this partition
    I am able to move the table, it is just the nocompress option which doesn;t work.
    SQL> alter table sample move partition SYS_1;
    Table altered.
    Can't we uncompress a hash partitioned table which is compressed?

    You have to do it in two steps
    alter table sample modify partition SYS_1 nocompress;
    alter table sample move partition SYS_1;Best regards
    Maxim

Maybe you are looking for