Flashback table

Hello
I want to know if ALLOW the MOVEMENT of the LINE is required on all tables to support the return of flame?

Let's take an example

Create table emp (identification number, name varchar2 (10));
drop table emp;

Flashback table emp to before drop;

would this work? I have not activated the movement line on table above. I have 10g Express edition, so I'm not able to verify the check it.please he answer me with a terse response

Thanks in advance

http://download.Oracle.com/docs/CD/E11882_01/server.112/e17118/statements_9012.htm#SQLRF01802
http://download.Oracle.com/docs/CD/B19306_01/server.102/b14200/statements_9012.htm#SQLRF01802

Concerning

Etbin

Edited by: Etbin on 31.8.2011 21:18
10g added link

Tags: Database

Similar Questions

  • ORA-00439: feature not enabled: Flashback Table

    If someone could help because I do not know why I get the error at the end of the script.

    Thank you very much

    CODD> select * from v$version;
    
    
    BANNER
    --------------------------------------------------------------------------------
    Oracle Database 11g Express Edition Release 11.2.0.2.0 - Production
    PL/SQL Release 11.2.0.2.0 - Production
    CORE    11.2.0.2.0      Production
    TNS for 32-bit Windows: Version 11.2.0.2.0 - Production
    NLSRTL Version 11.2.0.2.0 - Production
    
    
    CODD> create table test (cola number) enable row movement;
    
    
    Table created.
    
    
    CODD> drop table test;
    
    
    Table dropped.
    
    
    CODD> select original_name, operation, ts_name, droptime from recyclebin;
    
    
    ORIGINAL_NAME                    OPERATION TS_NAME                        DROPTIME
    -------------------------------- --------- ------------------------------ -------------------
    TEST                             DROP      USERS                          2014-01-08:13:08:27
    
    
    CODD> flashback table test to before drop;
    
    
    Flashback complete.
    
    
    CODD> insert into test values(10);
    
    
    1 row created.
    
    
    CODD> insert into test values(20);
    
    
    1 row created.
    
    
    CODD> select current_timestamp from dual;
    
    
    CURRENT_TIMESTAMP
    ---------------------------------------------------------------------------
    08-JAN-14 13.10.50.330000 +00:00
    
    
    CODD> insert into test values(100);
    
    
    1 row created.
    
    
    CODD> flashback table test to timestamp timestamp '2014-01-08 13:10:50.00 +00:00';
    flashback table test to timestamp timestamp '2014-01-08 13:10:50.00 +00:00'
    *
    ERROR at line 1:
    ORA-00439: feature not enabled: Flashback Table
    
    
    
    
    CODD> commit;
    
    
    Commit complete.
    
    
    CODD> flashback table test to timestamp timestamp '2014-01-08 13:10:50.00 +00:00';
    flashback table test to timestamp timestamp '2014-01-08 13:10:50.00 +00:00'
    *
    ERROR at line 1:
    ORA-00439: feature not enabled: Flashback Table
    

    You use the Express edition. This includes no Flashback Table.

    Oracle® Database Express Edition

  • URGENT: Need to flashback table, how to find SNA for quite some time before the update that's happened?

    Hi all

    I have a new database 11G, I haven't used before flashback, but my retention time is a day... I have once the developer did a massive update to a table to corrupt.

    How can I find the RCS for this time so I can try this table of flashback?

    Thank you

    Cayenne

    Thank you.. I also found that it works:

    SQL > select timestamp_to_scn (to_timestamp('20140103152000','YYYYMMDDHH24MISS')) SNA double;

    SNA

    ----------

    98344246

    Although does NOT work all the time. But that's just what Oracle when you give him a timestamp to flashback to: it converts the timestamp of a SNA and then restores the data based on the SNA.

    See table of Flashback in the language SQL doc

    http://docs.Oracle.com/CD/B28359_01/server.111/b28286/statements_9012.htm

    TIMESTAMP CLAUSE

    Specify a value of timestamp corresponding to the point in time to which you want to return to the table. The expr must evaluate to a valid time stamp in the past. The table will flash back to a period of about 3 seconds to the specified timestamp.

    This precision "3 seconds" is because of this conversion to SNA - Oracle uses its internal table.

    YVERT is accurate, if you know, but you typically do not have.

    Read and consider these warnings in app dev guide advanced

    http://docs.Oracle.com/CD/B28359_01/AppDev.111/b28424/adfns_flashback.htm

    Guidelines for Oracle Flashback Query

    . . .

    General guidelines for Oracle Flashback Table

    . . .

    • For querying the latest data at a specific time, use a SNA. If you use a timestamp, questioned real time can be up to 3 seconds before the time you specify. Oracle database uses the SNA and assigns them to the timestamps to a granularity of 3 seconds.

    For example, suppose values SNA 1000 and 1005 are mapped on the timestamps 08:41 and 08:46, respectively. A query for a moment between 08:41 and 08:45:59 is mapped to the SCN 1000; an Oracle Flashback Query at 08:46 is mapped to the SNA 1005.

    By reason of this time-to-SNA map, if you specify a time slightly after a DDL (such as a table creation) Oracle database operation can use a SNA which is located just before the DDL operation, causing the error ORA-1466.

    . . .

  • doubt on FLASHBACK TABLE

    Dear members,
    I do FLASHBACK TABLE as the user sys. I know that the FLASHBACK TABLE cannot be used for the SYS user.
    always I have run this command with clouse to file and
    When I run this command with timestamp clouse, I get error.
    Can you get it someone please tell me why this is happening?
    ORACLE: 11 GR 2
    OS: FEDORA 14
    -----
    $ sqlplus / as sysdba
    SQL > insert into values t11 ('k');

    1 line of creation.

    SQL >! day;
    Sea 30 mai 15:45: 13 IST 2012

    SQL > insert into values t11 ('z');

    1 line of creation.

    SQL > drop table t11.

    Deleted table.

    SQL > select * from dba_recyclebin;

    OWNER OBJECT_NAME ORIGINAL_NAME OPERATION TYPE TS_NAME CREATETIME DROPTIME DROPSCN NOM_PARTITION RELATED BASE_OBJECT PURGE_OBJECT SPACE CANCAN
    ------------------------------ ------------------------------ -------------------------------- --------- ------------------------- ------------------------------ ------------------- ------------------- ---------- -------------------------------- --- --- ---------- ----------- ------------ ----------
    SYS, BIN$ wT5v1Gw96zbgQGSsOaoM4g == $0 T11 DROP TABLE NISHANT 2012-05 - 30:14:47:37 2012-05 - 30:15:45:36 17728226 YES YES 85115 85115 85115 8

    SQL > flashback table "BIN$ wT5v1Gw96zbgQGSsOaoM4g == $0 ' timestamp to_time (May 30, 2012 15:45:13 ',' dd/mm/yyyy hh24:mi:ss');
    flashback table "BIN$ wT5v1Gw96zbgQGSsOaoM4g == $0" to to_time timestamp (May 30, 2012 15:45:13 ',' dd/mm/yyyy hh24:mi:ss')
    *
    ERROR on line 1:
    ORA-08185: Flashback not supported for user SYS


    SQL > flashback table "BIN$ wT5v1Gw96zbgQGSsOaoM4g == $0" before dropping.

    Flashback complete.

    before drop between recyclebin area (* flashback drop option *)

    trying to flashback with data undo timestamp (* flashback table option *), is not supported for sys.

    and the table created in the non-system tablespace

    ----------
    SYS, BIN$ wT5v1Gw96zbgQGSsOaoM4g == $0 T11 DROP TABLE NISHANT 2012-05 - 30:14:47:37 2012-05 - 30:15:45:36 17728226 YES YES 85115 85115 85115 8

    independent system LMT TBS will support recyclebin functionality

    Published by: rash on May 30, 2012 18:07

  • Prerequisite to FLASHBACK TABLE

    Version: 10.2, 11.2

    I will say I've accidentally updated a table without specifying the WHERE clause. Can I use FLASHBACK TABLE command to restore it to the former State.

    Question1
    I have to run the FLASHBACK TABLE before UNDO_RETENTION period. That is to say. If my UNDO_RETENTION is set to 900 (15 minutes), I have to run the less command FLASHBACK TABLE 15 minutes of the error to the user. Right?


    Question2
    My current UNDO_RETENTION is 900 and UNDO_TBS size is 2.5 GB. If I want to increase UNDO_RETENTION 7200 (2 hours), I should increase the UNDO_TBS as well. Right? But, how to estimate this?

    Hello

    Question1
    I should execute the FLASHBACK TABLE command before UNDO_RETENTION time expires. ie. If my UNDO_RETENTION is set to 900(15 minutes) , i must execute the FLASHBACK TABLE command withing 15 minutes of the user error. Right?
    

    UNDO_RETENTION initialization parameter must be set to a value that is large enough to cover the period specified in the FLASHBACK TABLE statement.
    doc: http://www.stanford.edu/dept/itss/docs/oracle/10g/server.101/b10739/undo.htm#i1008150

    Question2
    My current UNDO_RETENTION is 900 and UNDO_TBS size is 2.5 gb. If i want to increase UNDO_RETENTION to 7200 (2 hours), i should increase the UNDO_TBS as well. Right ? But , how will i estimate this ?
    

    May not be necessary to increase the cancellation SCT size, maybe check and estimate the size of the cancellation of queries undo_stats

    CONSERVATION OPTIMAL UNDO = UNDO FULL SIZE / (DB_BLOCK_SIZE * UNDO_BLOCK_PER_SEC)

    SELECT MAX (undoblks/((end_time-begin_time) * 3600 * 24))
    'UNDO_BLOCK_PER_SEC '.
    V $ undostat;

    HTH

    -Pavan Kumar N

  • Flashback table does not work in 10.2?

    I thought that you can cancel a water drop and retrieve any table with FLASHBACK TABLE feature that comes with default 10.2 (i.e. no special set-up is required). But I get this error when I try to do.

    ORA-00439: feature not enabled: Flashback Table

    I've used FLASHBACK TABLE < table name > before dropping.

    Ahmer Mansoor says:
    Dear David,

    Please make sure the recyclebin parameter is on, if it is not, then follow these steps.

    SQL > ALTER SYSTEM SET RECYCLEBIN = SCOPE = BOTH;

    Well, you should check before posting a statement that if its working or not. Your answer will not actually in any way. First, the parameter is a static parameter and cannot be changed by the option TOGETHER. It must be spfile and will ask for a restart of the db. Please see below,

    Connected to:
    Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options
    
    SQL> alter system set recyclebin=off;
    alter system set recyclebin=off
                                  *
    ERROR at line 1:
    ORA-02096: specified initialization parameter is not modifiable with this
    option
    
    SQL> alter system set recyclebin=off scope=both;
    alter system set recyclebin=off scope=both
                                    *
    ERROR at line 1:
    ORA-02096: specified initialization parameter is not modifiable with this
    option
    
    SQL> alter system set recyclebin=off scope=spfile;
    
    System altered.
    
    SQL> startup force
    ORACLE instance started.
    
    Total System Global Area  263639040 bytes
    Fixed Size                  1373964 bytes
    Variable Size             205523188 bytes
    Database Buffers           50331648 bytes
    Redo Buffers                6410240 bytes
    Database mounted.
    Database opened.
    
    SQL> show parameter recyclebin
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- -----------------------------
    recyclebin                           string      OFF
    SQL>
    

    Secondly, there is no relationship between the value of the start parameter and the message that receives the OP. If the parameter is set to OFF, it would be the message,

    SQL> conn aman/aman
    Connected.
    SQL> create table test_tab(a number);
    
    Table created.
    
    SQL> drop table test_tab;
    
    Table dropped.
    
    SQL> flashback table test_tab to before drop;
    flashback table test_tab to before drop
    *
    ERROR at line 1:
    ORA-38305: object not in RECYCLE BIN
    
    SQL> show parameter recyclebin
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- --------------------------
    recyclebin                           string      OFF
    SQL> select * from V$version;
    
    BANNER
    ---------------------------------------------------------------------------
    Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
    PL/SQL Release 11.2.0.1.0 - Production
    CORE    11.2.0.1.0      Production
    TNS for 32-bit Windows: Version 11.2.0.1.0 - Production
    NLSRTL Version 11.2.0.1.0 - Production
    
    SQL>
    

    HTH
    Aman...

  • flashback table does not

    Hello

    I use oracle 10g R2 on linux X 86. I got reminiscence are the true value. one of my table was accidentally truncated.
    now I want what he back.other tables are reduced thanks to the flashback technology.

    but this error that "the definition of table has been changed" I not made any changes to the table definition.

    What could be the problem? even if I have backup, but would still like to know and retrieve it using flashback.

    return of flame retention objective has been set at 900. and table was droped well before that.

    Help, please

    Thanks and greetings
    VD

    Well it's okay and it isn't a mistake. Flashback table does NOT work with the DDL changes that you did on your table to Truncate. If you want to return to the table with Flashback, you need to use Flashback Database technology or traditional backup and restore techniques are the only station.
    HTH
    Aman...

  • Flashback Table: Oracle PW

    I find that I restore a table due to the error of the user, to return the data she had this morning - the loss of some data. Oracle 10Gex and then Apex 3.2.1 installation - I didn't know what was the password for database user 'Oracle '.

    When the desktop of the server - running the SQLPlus tool - I can connect to the database with SYS (or SYSTEM) DBA - but those ID's have no rights on the schema - at least I can't see the tables in the schema PRD/tablespace. Yes - during the installation, I created a specific tablespace of the user for the applications and it's data.

    I think that the 'oracle' user is that I need to connect to SQLPlus with to run the commands in flashback the table... but I could be wrong.

    What are your suggestions?

    Help!

    Rich

    Rich,

    Sorry, I don't know what give advised based flashback.
    Don't want to give the wrong information.

    Ask this question in the forums of database - general or SQL and PL/SQL .
    These forums are very active - in half an hour, you will know everything
    you need about flashback or how to restore your data.

    Kind regards
    Lev

  • Table of Flashback and the movement of the line!

    Hello Experts,

    I have a doubt in the next box.

    Movement of the line must be activated for all tables to be able to use the Flashback table feature unless you are flashing back the table TO BEFORE DROP . According to my understanding, you can not enable Row movement for a table that is not partitioned. This finish not FLASHBACK table with activated line movement, you can and you can't activate a movement row for a table that is not partitioned.  So, how can I use FLASHBACK table to NOT partitioned table function?

    Please see the error message when I tried to enable ROW movement for a non-partitioned table below.

    SQL error: ORA-14066: illegal option for a not partitioned index organized table

    14066 00000 - "illegal option for a table held in index unpartitioned.

    * Cause: An attempt was made to issue a CREATE or ALTER TABLE

    command on an unpartitioned ITO, but the order contains a

    option that is legal only for partitioned tables organized by index.

    These options are: ENABLE ROW MOVEMENT and DISABLE ROW.

    Thank you

    No - your question is about FLASHBACK and IOT.

    So, how can I use FLASHBACK table to NOT partitioned table function?

    I have already posted the link to doc as telss you that you cannot enable row movement for a not partitioned IOT.

    View sample data for this table (in the form of INSERT statements) and queries, DML and FLASHBACK that you try to use this table that is a failure.

  • Flashback work table with a deleted column

    Oracle Database 10 g Express Edition Release 10.2.0.1.0 - product
    PL/SQL Release 10.2.0.1.0 - Production
    CORE 10.2.0.1.0 Production
    AMT for 32-bit Windows: Version 10.2.0.1.0 - Production
    NLSRTL Version 10.2.0.1.0 - Production

    Hello

    I have the following problem.

    I accidentally dropped a column containing the data of a table and to restore the state table, it was before I did.

    I found a reference on the internet which States that you can use flashback to retrieve a table to a set in the past point, even if you deleted a column.
    Flashback Table
    
    Just as the flashback query helps to retrieve rows of a table, FLASHBACK TABLE helps to restore the state of a table to a certain point in time - even if a table structure change has occurred since then. The following simple command will take us to the table state at the specified timestamp:
    
    SQL> FLASHBACK TABLE Employee TO 
               TIMESTAMP ('13-SEP-06 8:50:58','DD-MON-YY HH24: MI: SS');
    
    Reference - http://www.orafaq.com/node/872
    My DBA has sent me the following information;
    Oracle Metalink note  
    
    Limitations and Restrictions on Flashback Table :
    
    Flashback Table operations are not valid for the following type objects: tables that are part of a cluster, materialized views, Advanced Queuing (AQ) tables, static data dictionary tables, system tables, remote tables, object tables, nested tables, or individual table partitions or subpartitions.
    
    The following DDL operations change the structure of a table, so that you cannot subsequently use the TO SCN or TO TIMESTAMP clause to flash the table back to a time preceding the operation: upgrading, moving, or truncating a table; adding a constraint to a table, adding a table to a cluster; modifying or dropping a column; adding, dropping, merging, splitting, coalescing, or truncating a partition or subpartition (with the exception of adding a range partition).
    
    You cannot rollback a FLASHBACK TABLE statement. However, you can issue another FLASHBACK TABLE statement and specify a time just prior to the current time. Therefore, it is advisable to record the current SCN before issuing a FLASHBACK TABLE clause.
    Then my return of flame using DBA in this situation or not?

    Ben

    >
    Is the ORAFAQ, a site with a good reputation for more information.
    >
    I found that it is quite reliable. But when ANY site talking about a newly introduced feature, it must trigger at least one indicator "attention". There may be so many variables affecting the functioning of a new feature or is used unless you see a working example, you must create your own test case.

    As I said some things, like your question above, can be easily verified, so there is no reason to rely on any document to see if it works.
    >
    Is anyway to cancel this kind of thing or it is unrecoverable?
    >
    Almost nothing is "sunk", if you have the right type of backup. For a deleted column, you have an export of the table before the fall.

    Recommended for small changes DDL (for example related to an incremental update) is to take an export of the affected table.

  • Deleted lines flashback: unable to read data - table definition has changed

    Hi all

    Its really Important.

    I unfortunately truncated a table using
    Trancate table mytable;

    and made an alter table to reduce the length of the pricision data.

    But I need back data of tabla

    I used the command to get the deleted lines, below, it shows error.

    query: select * from pol_tot versions between timestamp systimestamp-1 and systimestamp;
    error: ORA-01466: unable to read data - table definition has changed

    query: flashback table pol_tot to timestamp systimestamp - interval '45' minutes;
    error: ORA-01466: unable to read data - table definition has changed

    Well want to share your ideas how can I deleted thoose Records.

    Edited by: 887268 July 8, 2012 12:26

    This

    and Made a alter table to decrease data pricision length.
    

    is the cause of your error.

    Now please do what is obvious.

    -------------
    Sybrand Bakker
    Senior Oracle DBA

  • How FLASHBACK all TABLEs and indexes in a certain pattern for a restoration of p?

    Today I read a few web pages on how to use FLASHBACK to restore to a Restore Point.

    Unfortunately, all of these examples show just how to restore a single TABLE for example

    FLASHBACK TABLE t to RESTORE POINT before_we_do_anything;

    But how can I FLASHBACK all TABLEs (and indexes and other dependent objects) in a certain pattern to a one-step restore point)?

    FLASHBACK myschema.* to before_we_do_anything POINT of RESTORATION;

    does not work.

    Peter

    There is nothing like that. However, you could flashback the entire database to a point in time. It would of course have implications through patterns all the good.

    Nicolas.

  • Change data type of flashback

    If I change the data type of a column, and there were no other structural changes, I have indeed flashback the table to one point more old if I first return they datatype its original definition?

    I would like to try it myself, but I messed up somewhere and disabled my return of flame somehow... maybe for the current session or the entire database, I need to see what is wrong - for now I would like to continue my current reading instead of playing with that.

    Assistance regarding the issue is appreciated, thanks.

    This should answer your question:

    http://docs.Oracle.com/CD/B28359_01/server.111/b28286/statements_9012.htm

    FLASHBACK TABLE

    Goal

    Use of the FLASHBACK TABLE statement to restore a previous state of a table in the event of human error or application. The time in the past including the table can be flashed back is dependent on the amount of undo data in the system. Also, Oracle database cannot restore a table to an earlier state across all DDL operations that modify the structure of the table.

    See that last sentence?

  • Accuracy of Oracle Flashback?

    I ran the following script and was surprised to see the SNA does not change only during the 3 commits, I have published. I had the illusion that the RCS would be updated after each commit.

    drop table alpha cascade constraints;
    purge recyclebin;
    
    create table alpha(
    cola number,
    colb date) enable row movement;
    
    insert into alpha values(1, sysdate);
    execute dbms_lock.sleep(30);
    commit;
    insert into alpha values(2, sysdate);
    execute dbms_lock.sleep(30);
    commit;
    insert into alpha values(3, sysdate);
    execute dbms_lock.sleep(30);
    commit;
    

    When I then tried to do a step backwards to take me where there was only the first line, I actually had to use a lot later at 23:07:55 (see below) either earlier and table brings up no line!

    db > select ora_rowscn, cola, to_char(colb, 'hh24:mi:ss fmdd-Month-YYYY') from alpha;
    
    
    ORA_ROWSCN       COLA TO_CHAR(COLB,'HH24:MI:SSFMDD-MONTH-YYYY')
    ---------- ---------- -----------------------------------------------------
       4939034          1 23:07:55 24-November-2014
       4939034          2 23:08:25 24-November-2014
       4939034          3 23:08:55 24-November-2014
    
    

    db > flashback table alpha to timestamp (timestamp '2014-11-24 23:08:30');
    
    
    Flashback complete.
    
    
    db > select ora_rowscn, cola, to_char(colb, 'hh24:mi:ss fmdd-Month-YYYY') from alpha;
    
    
    ORA_ROWSCN       COLA TO_CHAR(COLB,'HH24:MI:SSFMDD-MONTH-YYYY')
    ---------- ---------- -----------------------------------------------------
       4940017          1 23:07:55 24-November-2014
    

    I make the assumption that the RCS is different because of data in the table, return to old data and using a current SNA to do this, but I do not understand why I had to add on a full 35 seconds to come back to the table when the first line had been committed.

    I suppose that the return of FLAME is not as accurate as I thought it would be.

    It is not quite accurate, as Oracle follows the transaction SNA validated for the block's in the line.

    Can you tell us what part is not clear?

    If you make a change to ANY line in a block, the RCS is stored for the block.

    So if you ask ORA_ROWSCN for ANY line in this block, you will get the SAME NEW value even for the lines that you have NOT changed.

    If the table is created using ROWDEPENDENCIES, Oracle uses 6 bytes for each row to store the YVERT value at the level of the line instead of block level. Then if you query the value of a changed row it will be different from the value for the other lines.

    You can see that by a simple test in the scott schema using the dept table:

    create the table dept_copy rowdependencies in select * from dept

    Select deptno, dname, ora_rowscn in dept

    DEPTNO, DNAME, ORA_ROWSCN

    10, ACCOUNTING, 48004927

    20, RESEARCH *, 48004927

    30, SALES *, 48004927

    40, OPERATIONS, 48004927

    Select deptno, dname, ora_rowscn in dept_copy

    DEPTNO, DNAME, ORA_ROWSCN

    10, ACCOUNTING, 50989490

    20, RESEARCH *, 50989490

    30, SALES *, 50989490

    40, OPERATIONS, 50989490

    The value of ORA_ROWSCN is the same for all rows in the DEPT table and the dept_copy table (but a different value of course).

    Now, we update a row in each table

    update the set dname dept = ' ACCOUNTING * "where DNAME ="ACCOUNTING ".

    update set dept_copy = dname "ACCOUNTING *" where DNAME = "ACCOUNTING".

    Commit

    Select deptno, dname, ora_rowscn in dept

    DEPTNO, DNAME, ORA_ROWSCN

    10, ACCOUNTING *, 50989863

    20, RESEARCH *, 50989863

    30, SALES *, 50989863

    40, OPERATIONS, 50989863

    Select deptno, dname, ora_rowscn in dept_copy

    DEPTNO, DNAME, ORA_ROWSCN

    10, ACCOUNTING *, 50989863

    20, RESEARCH *, 50989490

    30, SALES *, 50989490

    40, OPERATIONS, 50989490

    Hmmm - the DEPT table has a new value for ORA_ROWSCN but it is the same for all lines. This is because it is stored for the block.

    But the DEPT_COPY table has a new value for that ONE line. This is because the Oracle caused ROWDEPENDENCIES add a space to store the value for each line separately as if it were another column in the table.

    Try this code example and see what you get. Don't forget the VALIDATION once you change the line - the value of the CNS to change until you actually agree the data.

  • Allowing the movement line temporarily on partitioned table

    Hello

    Using oracle 11.2.0.3 and have tables that are hash of composite range partitioned.

    We need to update the dates of theses for a small percentage of records 1 < %.

    Normally we have movement line enabled so that can copy the lines in the temporary table, update insert_table, remove lines concerned living table and replace them with the new dates of the partition.

    Another option allowing possibly temporariliy movement line.

    Thoughts?

    Thank you

    Is there any disadvanatges to allowing it for example from performance perspective.

    Haerd was a bad iade of have it activated - perhaps isn't so bad.

    Tom Kyte meets ALL these questions (and more) in this blog:

    https://asktom.Oracle.com/pls/asktom/f?p=100:11:0:P11_QUESTION_ID:35203106066718

    If never actually cause you a row to move, then there is zero overhead. All the movmement of line enable does is give us permission to move a line, if you do not ask us to move the line - extra "nothing happens.
    . . .

    Follow-up Friday, March 10, 2009-02:00 UTC:

    Is there something wrong? Only you can answer that you have any application that expects the rowid is constant for a line? If yes - then it is false, if not - then it's probably OK.

    Any overload? No, it's just allowed to change a rowid if you perform an operation that would have caused a rowid to change - alter table t shrink compact space, flashback table t to..., update t set partition_key = some_value_that_moves_row;

    You can change a table instantly to activate circulation line - whatever the size of the table - it'll be instant - you have no need to do advance if you don't want, fairly easy to add later...

    I recommend you to read the ENTIRE blog because there are many other issues that should relieve your concerns and good examples.

    As says this quote above if you have an application that expects the ROWID is constant for a line, then you might have a problem.

    ROWID is the way the FASTER to search for a line. Sometimes the ETL process are complex and multiple operations on a line by multiple, separate steps.

    You can often get huge performance gains in saving the values ROWID lines collections or tables of work/temp during ETL processing. For example, a query in PL/SQL can use ' RETURN ROWID IN... "to get all of the ROWID that affects the query.

    This set of ROWID can be used in the following queries to locate the exact lines directly without the need of ALL indexes or other search criteria: WHERE ROWID IN...

    If the ROWID has changed during the process, it would be disastrous if these processes are written in:

    1. Enter the current setting of moving the line

    2. turn off the movement of the line during the process

    3 re-enable line movement ONLY if it has been activated prior to the start of the process

Maybe you are looking for