Partitioning table in oracle 10g - how to add

Hello friends,

I hope you are all fine and great.

In fact - I have a small question on oracle 10g partitioning of tables...


I have a table with the partition below...

CREATE TABLE X_ACC_ASSETS_GPC_AGG
(
X_ACC_ASSETS_GPC_AGG_RK NUMBER (10) NOT NULL,
X_AS_OF_DT DATE NOT NULL,
ACCOUNT_RK NUMBER (10) NOT NULL,
X_UNIV_ACCOUNT_ID NUMBER (10),
ACCOUNT_ID VARCHAR2 (10 BYTE),
X_ASSET_TYPE_CD VARCHAR2 (6 BYTE),
X_AUC_AMT NUMBER (18.5).
X_FIRM_AMT NUMBER (18.5).
X_ADJ_SRCE_AMT NUMBER (18.5).
DATE OF PROCESSED_DTTM
) PARTITION BY RANGE (X_AS_OF_DT)
(
P200712 PARTITION VALUES LESS THAN (TO_DATE (' 2008-01-01 00:00:00 ',' SYYYY-MM-DD HH24:MI:SS ',' NLS_CALENDAR = GREGORIAN '))
NOLOGGING
NOCOMPRESS
TABLESPACE KAW_DATA
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE)
64K INITIALS
MINEXTENTS 1
MAXEXTENTS 2147483645
DEFAULT USER_TABLES
),
.
.
.
.


P201112 PARTITION
NOLOGGING
NOCOMPRESS
TABLESPACE KAW_DATA
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE)
64K INITIALS
MINEXTENTS 1
MAXEXTENTS 2147483645
DEFAULT USER_TABLES
),
PARTITION PMAX
NOLOGGING
NOCOMPRESS
TABLESPACE KAW_DATA
PCTFREE 10
INITRANS 2
MAXTRANS 255
STORAGE)
64K INITIALS
MINEXTENTS 1
MAXEXTENTS 2147483645
DEFAULT USER_TABLES
)
) NOPARALLEL;







My question is:
(1) how to add a partition to say P201201...
Since I already said PARTITION PMAX can I still add partition?
(2) can I add a partition even if the table contains data?


==========================
I tried to add the partition... say

ALTER TABLE X_ACC ADD PARTITION P201201 THE VALUES BELOW TO
(TO_DATE (' 2012-01-01 00:00:00 ',' SYYYY-MM-DD HH24:MI:SS ',' NLS_CALENDAR = GREGORIAN '))
NOLOGGING
NOCOMPRESS
TABLESPACE KAW_DATA
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE)
64K INITIALS
MINEXTENTS 1
MAXEXTENTS 2147483645
DEFAULT USER_TABLES
)



but the error...
"linked partition must gather greater than that of the last partition.



Thank you/kumar

Yes. With the help of DBMS_REDEFENITION, you can partition an existing table. Visit this link on how to do it.

http://www.Oracle-base.com/articles/Misc/PartitioningAnExistingTable.php

Tags: Database

Similar Questions

  • export table from oracle 10g with oracle 8i exp utlity

    Hello

    I export table from oracle 10g with oracle 8i exp the binaries:
    bash-2.05$ exp pin/pin file=prakash.dmp tables=prakash@APPSDB
    
    Export: Release 8.1.7.0.0 - Production on Tue Aug 4 09:58:18 2009
    
    (c) Copyright 2000 Oracle Corporation.  All rights reserved.
    
    
    Connected to: Oracle8i Enterprise Edition Release 8.1.7.0.0 - 64bit Production
    With the Partitioning option
    JServer Release 8.1.7.0.0 - 64bit Production
    Export done in UTF8 character set and UTF8 NCHAR character set
    
    About to export specified tables via Conventional Path ...
    EXP-00011: PIN.PRAKASH@APPSDB does not exist
    Export terminated successfully with warnings.
    I can't please inputs appreciated.

    axis/axis here is the user and pwd to oracle 8i
    Prakash is the name of a table in oracle 10g

    appsdb is the link of database

    Thank you

    Prakash GR

    axis/axis here is the user and pwd to oracle 8i

    Prakash is the name of a table in oracle 10g >

    To export the database 10g PRAKASH table, use the 8i export utility.

    log tables = prakash.log file = prakash.dmp exp = feedback = 100000 PRAKASH

    Who is the owner of the table? You have the TNS entry for the 10g database in your NET80 folder. If this isn't the case, then put an entry in there. Then, when you are prompted for the user name

    username:newcolsys@tns_alias/password

    HTH
    Anand

  • not able to uninstall oracle 10g, how I uninstall oracle 10g IAM?

    actually iam using oracle10g in my laptop. now I just want to change for oracle 11g. I tried to uninstall 10g it shows uninstalled successfully. but when I tried to install 11g it shows already oracle is installed on your laptop...

    now how do I install 11g without formatting... can my drive you give me the solution for this...

    Hello

    You must uninstall oracle 10g by

    1.Oracle Universal Installer from Start menu

    2. Run regedit.exe and delete the HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE key.

      This contains registry entries for all Oracle products.

    3 make sure that he didn't there no service oracle left behind in the services Panel

    4 restart your computer

    5.Delete the "C:\Oracle" directory, or the oracle_base directory on which you had installed oracle 10g

    regards,

    -DM

  • Oracle 10g, how to determine the memory allocated is healthy or sufficient.

    Hi guys,.

    I have a 10.2.0.5 production database.
    Currently, my server has 8 GB of physical RAM.
    / 3GB is allocated to the SGA and 1 GB for the PGA.
    Let's say a day is needed for the application (for example, weblogic) to increase the pool of connections from 20 to 50.
    How are we able to know if the memory allocated is sufficient for the existing load as well as the increase in workload?
    CPU is altogether would apply us we can generate on the CPU. If the load is low, I assumed is quite safe to increase the connection.
    Please share your experiences of dealing with this situation.

    Thank you

    Chewy wrote:
    How are we able to know if the memory allocated is sufficient for the existing load as well as the increase in workload?

    There are a set of views memory Advisor which will tell you if your memory structures of appropriate size:
    v$ db_cache_advice
    v$ shared_pool_advice
    v$ java_pool_advice
    v$ sga_target_advice
    v$ pga_target_advice
    --
    John Watson
    Oracle Certified Master s/n
    http://skillbuilders.com

  • migration in partitioned table

    Hello world

    I need to migrate on a two table range-list partitioned table, one of them is partitioned list, the other is not. The largest contains 400 million lines (partitioned), the smallest contains 90 million lines. The database cannot insert all of the table at a time, so I started to migrate the tables into pieces. I have two options:

    1 create pieces using a date_field (IDO_ID)
    2. create the pieces with the help of a generated field (MIGR_RANK) using the list field (TAB_KOD) and a number generated randomly, which limits the lines to migrate a line no more than 1 million of partitioning

    My questions are the following:
    1. is it possible that the insert is slow due to the large number (about 750) list partitions? Can I use the 2. method, inserting only one partition? Or a kind of simple is enough for partitioning columns? How does the insert works in Oracle for a partitioned table? Especially in a range-list partitioned table?
    2. How can I adjust the database to migrate two tables in one step (if possible)?

    Thanks in advance,
    Gabor

    Published by: csiszgab on Sep 28, 2012 07:47

    Whenever you provide post your Oracle version 4-digit (result of SELECT * FROM V$ VERSION).
    >
    I need to migrate on a two table range-list partitioned table, one of them is partitioned list, the other is not. The largest contains 400 million lines (partitioned), the smallest contains 90 million lines. The database cannot insert all of the table at a time, so I started to migrate the tables into pieces. I have two options:
    >
    -Oracle is certainly able to process the entire table in one so why do you say otherwise?

    You can speed up insert PARALLEL aid (for the source and target tables), using the direct-path load (APPEND indicator) and NOLOGGING mode on the target table.
    >
    1. is it possible that the insert is slow due to the large number (about 750) list partitions? Can I use the 2. method, inserting only one partition? Or a kind of simple is enough for partitioning columns? How does the insert works in Oracle for a partitioned table? Especially in a range-list partitioned table?
    >
    Your "2" is not just insert in a partition. You said your target table was partitioned ' range-list' but your source is only 'list' partitioned. Therefore a partition target: data from the "one" won't a single list.

    Load using the entire table at once without (other than the partition key) index on the target table.

  • Is there a way to fill the boss way recursive/dynamically in oracle 10g

    Hello

    I want to complete the following template and then use the result as a virtual table in oracle 10g.

    SELECT 2 FROM DUAL;

    UNION ALL

    4. SELECT FROM DUAL;

    ALL UNIONL

    8. SELECT FROM DUAL;

    .

    .

    .

    .

    UNION ALL

    . SELECT POWER (2.61) FROM DUAL;

    Is it possible that I can use the recursion or dynamic query with "with clause" and avoid writing all these statements.

    Thank you

    YG

    Hi GY,.

    In 10g, you can use a clause of the TYPE:

    SELECT nbr

    OF THE DOUBLE

    MODEL

    DIMENSION (2 d)

    MEASURES (number 0)

    RULES ITERATE (61)

    (nbr [ITERATION_NUMBER] = power (2, ITERATION_NUMBER + 1))

    ORDER BY nbr;

    From 11 g 2, you can use a WITH recursive clause:

    WITH v (n, lvl) AS (SELECT 2 n, 1 lvl FROM DUAL

    UNION ALL

    SELECT 2 * n, 1 + lvl

    V

    WHERE the lvl<=>

    )

    Select n v

  • How to add the candidate key?

    Hello
    can you explain to me what is candidate key?

    Suppose I created the table

    SQL > create table t3
    (a number;
    b the number,
    c number);
    Table created.

    Now how to add candidate key?

    Now how to add candidate key?

    Maybe

    alter table t3 add candidate_key number;
    

    (Sorry, couldn't resist.)

    Concerning
    Peter
    http://en.Wikipedia.org/wiki/Candidate_key

    Published by: Peter on December 10, 2009 02:12
    -You wonder how this was considered "correct".

  • How can I add data file to an existing table on Oracle RAC ASM with no OMF? Thank you!

    How can I add data file to an existing table on Oracle RAC ASM with no OMF? Thank you!

    Hello

    So I guess you have some files in ASM, see your first existing file structure

    Select file_name

    from dba_data_files;

    and to add to an existing table, the example below (even if you're better sticking with OMFs!)-is that what you are looking for?

    SQL > create tablespace TEST1

    2 datafile '+ DATA' size 1 M;

    Created tablespace.

    SQL > select file_name in dba_data_files;

    FILE_NAME

    --------------------------------------------------------------------------------

    +Data/orcl2/datafile/users.259.859820983

    +Data/orcl2/datafile/undotbs1.258.859820983

    +Data/orcl2/datafile/SYSAUX.257.859820983

    +Data/orcl2/datafile/system.256.859820981

    +Data/orcl2/datafile/example.269.859821049

    +Data/orcl2/datafile/Test1.271.859843053

    6 selected lines.

    SQL > alter tablespace TEST1

    2 Add datafile ' + DATA / mynewfile01.dbf ' size 2 m;

    Tablespace altered.

    SQL > select file_name in dba_data_files;

    FILE_NAME

    --------------------------------------------------------------------------------

    +Data/orcl2/datafile/users.259.859820983

    +Data/orcl2/datafile/undotbs1.258.859820983

    +Data/orcl2/datafile/SYSAUX.257.859820983

    +Data/orcl2/datafile/system.256.859820981

    +Data/orcl2/datafile/example.269.859821049

    +Data/orcl2/datafile/Test1.271.859843053

    + DATA / mynewfile01.dbf

    Thank you

  • Oracle 10g EM (how to add a target)

    Hi all

    I have configured em 10 gr 2 oracle to prod db, but I want to add another target IE cloned a (IE on the same machine RHEL4.0)

    How to add the target to oracle 10g EM, please let me know if anyone knows.
    Thank you
    KK

    There is a way to add another target in the console database. But even in this case, at one point, only one target would be maintained. If you want to manage multiple targets in a single unified window, then wages, Console is the way forward not free database console.

    HTH
    Aman...

  • Oracle Excessive Partition table

    People,
    We have a server Oracle 10 g. My question concerns an Oracle table that until now has 183 scores. Whoever created this table, put in place to add a new partition at the end of each month. I checked and verified in each partition, there are anywhere between 20 000 and 40 000 lines. Each line consists of 218 bytes. My manager is to get rid of these partitions. He just wants me to check that let down the barriers would not impact the response time that much. I can see Adding a partition of all ranks from 500 000 to 1 000 000, but having a partition for 20, 000 to 40 000 lines seems excessive to me. At the pace partitions are added to this table, in 5 years, it might have more than 600 scores. Finally, like anything else in life, there must be some back of draw for Oracle table partitioning. I saw a lot of 'Pros' on the Web but not 'jerks '.

    I would appreciate your opinion on it.

    Seyed

    I agree with your idea that the partitioning for 40K lines (with the information provided) seems excessive. Do the calculation lines 40 K * 218 partitions should be out only about 8 million, I would not immediately consider a candidate for partitioning.

    Partitioning of the benefits that you are aware of; most of them involves the use of large data sets. Pruning is a huge advantage by excluding the vast amounts of data that are unwanted review of the join.

    There are disadvantages too, for the most part buried under the volume of data partitions work usually with. There is a performance slightly beat on standard queries against a partitioned table while SQL decides which partitions to hit. You can observe this by querying the table, then by a specific partition trying only to get data for a specific partition.

    There is also the question of how many partitions you want to keep track of? You ask the right questions.

    Its possible that the partitions help performance; the only way to be sure is to create a table that is not partitioned using DEC, indexes, and constraints such as the partitioned table and run performance tests.

  • How to add a transient attribute of a table values in the new attribute group wise transient that is to say wise customer?

    Mr President.

    How to add a transient attribute of a table values in the new attribute group wise transient that is to say wise customer?

    as below

    custwisevalue.png

    Concerning

    Hello world

    for an overview in the following form

    This is the sql query that reach this format

    SELECT c.name customer_name,
            p.name product_name,
            sl.sal_qty,
            sl.unit_sal_price,
            sl.sal_qty*sl.unit_sal_price AS salesvalue,
            CASE
              WHEN ROW_NUMBER () OVER (partition by c.cust_id order by p.prod_id desc,sl.sal_id desc) = 1 THEN
                  SUM (sl.sal_qty*sl.unit_sal_price) OVER (PARTITION BY c.cust_id)
            END totals
    FROM customer c INNER JOIN sales s ON s.cust_id = c.cust_id
    INNER JOIN salesline sl ON sl.sal_id = s.sal_id
    INNER JOIN product p ON p.prod_id = sl.prod_id
    ORDER BY c.cust_id,p.prod_id,sl.sal_id
    

    Cheers and enjoy

    Respect of

  • How to create a partitioned table

    Apex 4.2

    Oracle 11g

    There is a large table, which have 160000 rows, I would like to create a partitioned table to improve performance, but could not find a way to create a.

    Concerning

    Hello

    I don't see how your question relates to APEX, unless you mean how to make APEX builder object Explorer.

    Answer is simple, you can do it from the object browser.

    You should write a ddl script to create the partitioned table, and run it from sql commands.

    Kind regards

    Jari

  • Oracle 10g EE - partitioning

    We installed there and partitioning years was activated.

    Subsequently, we noticed that the sys and system tables use partitioning.

    Could we be penalized for the use of partitioning when we were not actively using it and it came standard with installation?  Our application does not use any element which is partitioned, but one could say that the database benefits indirectly from the partitioned tables.

    If we are asked to change the partitioning to false, how that will affect existing partitions. I can't imagine the objects just to settle as if by magic. There was hope.

    RMAN is not a license option but setting SQL must extra tuning pack under license. Oracle Partitioning is divided into system and user of partitioning. Oracle Partitioning is an additional cost for only user partitioning option.


    You can see this metalink note. This will give all your answer on licenses and you can show it to your management. If you are more affected, you can call Oracle and ask. But I think that this note of support Oracle will be sufficient for you.

    Common questions about the Option of partitioning installed in the Oracle (licenses, Install, Remove) (Doc ID 1312416.1) database

    Also check this note for other needs of licensing options:

    http://docs.Oracle.com/CD/B28359_01/license.111/b28287/options.htm

  • modifies an existing large partitioned table to automatically add the partitions

    Hello world

    According to me, it is not possible to modify an existing large partitioned table, to add partitions automatically as you insert it into this one. What would be the best way to do this? Dbms_redefinition? DEC + copy dependant rename?

    Any ideas?

    Thank you.

    current version:
    Oracle Database 11 g Enterprise Edition Release 11.2.0.3.0 - 64 bit Production
    With partitioning, Real Application Clusters, Automatic Storage Management, OLAP,.
    Options of Data Mining and Real Application Testing

    >
    According to me, it is not possible to modify an existing large partitioned table, to add partitions automatically as you insert it into this one. What would be the best way to do this? Dbms_redefinition? DEC + copy dependant rename?

    Any ideas?
    . . .
    I guess what I'm looking for is
    ALTER TABLE XXX INTERVAL DEFINED (NUMTOYMINTERVAL(1,'MONTH'));

    The following problem, I see is my required interval varies 01 hours of daylight at the time month 01 day 01 01 of the following month.
    >
    The best way to do it is to change your way of thinking.

    Do not be afraid to break the Oracle actually trying things. Just ALTER the table.

    drop table part_test cascade constraints;
    
    create table part_test(id number, entry_date date)
    partition by range (entry_date)
    (
    partition old_years values less than (to_date('01/01/2013 01:00:00', 'mm/dd/yyyy hh24:mi:ss')),
    partition jan_2013 values less than (to_date('02/01/2013 01:00:00', 'mm/dd/yyyy hh24:mi:ss'))
    )
    
    insert into part_test values(1, to_date('01/01/2013 00:00:00', 'mm/dd/yyyy hh24:mi:ss'));
    
    insert into part_test values(2, to_date('01/01/2013 02:00:00', 'mm/dd/yyyy hh24:mi:ss'));
    
    alter table part_test set interval(numtoyminterval(1,'MONTH')); 
    
    insert into part_test values(2, to_date('02/01/2013 02:00:00', 'mm/dd/yyyy hh24:mi:ss'));
    
    SQL> set serveroutput on
    SQL> select partition_name, high_value
      2  from dba_tab_partitions
      3  where table_name = 'PART_TEST';
    
    PARTITION_NAME
    ------------------------------
    HIGH_VALUE
    --------------------------------------------------------------------------------
    
    OLD_YEARS
    TO_DATE(' 2013-01-01 01:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
    
    JAN_2013
    TO_DATE(' 2013-02-01 01:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
    
    SYS_P225
    TO_DATE(' 2013-03-01 01:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIA
    
    SQL>
    

    Note the limit of the score for SYS_P225 that was created? It includes the same ' time 1' of the highest range partition that existed before the ALTAR.

  • How to move the lob segment in a partitioned table

    My Oracle 11.2, I have a partitioned table that I want to switch to a different tablespace

    After invoking the script, there are still inside for the insensitive lob segment table
    CREATE TABLE BONGO.AAA_3
    (
      ID       NUMBER,
      DATUM    DATE,
      OBJEKAT  BLOB
    )
    TABLESPACE BONGODATA_HUGE
    PCTUSED    40
    PCTFREE    10
    INITRANS   1
    MAXTRANS   255
    LOGGING
    PARTITION BY RANGE (DATUM)
    (  
      PARTITION P_MAXVALUE VALUES LESS THAN (MAXVALUE)
        LOGGING
        NOCOMPRESS
        TABLESPACE BONGODATA_HUGE
    LOB (OBJEKAT) STORE AS 
            (   TABLESPACE  BONGODATA 
              ENABLE        STORAGE IN ROW
              CHUNK       8192
              RETENTION
              NOCACHE
              STORAGE    (
                          INITIAL          64K
                          NEXT             1M
                          MINEXTENTS       1
                          MAXEXTENTS       UNLIMITED
                          PCTINCREASE      0
                          FREELISTS        1
                          FREELIST GROUPS  1
                          BUFFER_POOL      DEFAULT
                         )
            )
        PCTUSED    40
        PCTFREE    10
        INITRANS   1
        MAXTRANS   255
        STORAGE    (
                    INITIAL          64K
                    NEXT             1M
                    MINEXTENTS       1
                    MAXEXTENTS       UNLIMITED
                    FREELISTS        1
                    FREELIST GROUPS  1
                    BUFFER_POOL      DEFAULT
                   )
    )
    NOCOMPRESS 
    NOCACHE
    NOPARALLEL
    MONITORING;
    How to move this lob segment in a partitioned table?

    or, is there a package for data move in storage?

    concerning

    ALTER TABLE current_table MOVE PARTITION nom_partition
    TABLESPACE destination_table_space
    LOB (column_name) STORE AS (TABLESPACE current_tablespace);

Maybe you are looking for