At all indexes on tables of the same value in the structure of the event

Hello

I have a panel with the four bays and I use a structure of the event.

Now, I want that change of the index of array_1 also affects the index of 3 other tables at the same index.

But there is only a property "value Exchange" and no property 'index-change' in the properties of the table.

So I read the 'index' property and write in the other table.

But: It seems as if I have to do so within the period of waiting-section of the structure of the event.

Is there another way to do this?

Thanks for help

You can use the mouse event on each table to detec the event (of course, that will attract not only a change of index, but I don't think you care too) and then use the 'values of the indices' property on all the table to set.

See annex VI (LV2012), hope this helps

Tags: NI Software

Similar Questions

  • Implementation of associative array (indexes per Table) in the procedure

    Hi guys,.

    I'm trying to implement collections in the procedure. I am trying to store integer values as well as the names & to print the same list of names. Here is my procedure

    create or replace procedure (coll_proc)

    )

    is

    pay type is table of the index number to varchar2 (20);

    salary_list salary;

    L_Name varchar2 (2000);

    Start

    salary_list ('Aude'): = 62000.

    salary_list ("Mohammed"): = 50000;

    ("Julian") salary_list: = 45000;

    L_Name: = salary_list.first;

    l_name is not null loop

    dbms_output.put_line (' the wages of ' |) L_Name | « est » ||' ='|| TO_CHAR (salary_list (L_Name)));

    L_Name: = salary_list. Next (L_Name);

    end loop;

    end;

    Below is the error

    "Error (2.1): PLS-00103: encountered the symbol") "when expecting one of the following numbers: Remove current exists prior" "

    You people could please check this & tell me that where I'm going wrong.

    Hello

    It seems that you have all the parameters in your stored procedure, so remove the "()" after the name of the procedure.

    create or replace procedure coll_proc
    is
      type salary is table of number index by varchar2(20);
      salary_list salary;
      l_name varchar2(2000);
    begin
      salary_list('Rajnish'):=62000;
      salary_list('Minakshi'):=50000;
      salary_list('Seetha'):=45000;
    
      l_name:= salary_list.first;
      while l_name is not null loop
        dbms_output.put_line('Salary of ' ||l_name|| 'is'||'='|| to_char(salary_list(l_name)));
        l_name:=salary_list.next(l_name);
      end loop;
      end;
    

    I tried this and able to create the procedure

    Procedure created.
    

    Kind regards

    Jitendra

  • Index on the Table of the Publisher (the CDC configuration)

    We have installation Aync Auto Journal CDC on Oracle 11.1.0.7. Everything works well, but had a question about the performance of select on tables owned by the Publisher.

    According to my understanding, the changes are captured in the tables belonged to the Publisher and Subscriber had view based on these tables. Our data warehouse application reads these views (tables both editor)

    I'm not seeing any indexes on tables in the editor and see as bad performance on select on these views/tables. Thinking to create indexes on columns - CSCN$ ROW_ID$, on which we build our selection.

    Can someone share such an experience or any idea on this...?

    Thank you in advance!
    Mahesh

    Mahesh,

    I saw two or three questions identical to what you say. It is possible to create additional indexes on changing tables (the table of the editor you alluded) on columns as CSCN$, RSID$ etc. Since the imputation has fill in the change table, it would have a minor overload to fill these indices as well.

    Thank you
    Florent

  • How to index a table on multiple sites?

    Hello

    How to index a table on multiple sites?

    I searched this issue and was not able to find the answer. I understand that it can be done with loops, but I don't know how.

    I use the detector of crete vi for frequency domain data collected a VNA (s2p) file. The products contain a table of amplitudes and a table of locations. The problem is that the locations refer to the index of table of amplitude, which is not the same as the frequency. My idea is that I can use this output of the places table to index the frequency to the detected peak frequencies table and then draw these, as well as some analysis data and manipulation on them. Currently, I can do this only by consulting table on the front panel.

    The entrance to the peak detector is currently a table 1 d of the scale (what is the problem?).

    I also looked at the supply frequency & estimate VI, but this VI seems only exit of scalar data for the largest peak, not exactly what I'm looking for.

    Thanks for your help.

    You have a second table for the tested frequency?  If so, then you are right that you just need to index this table with the indexes by the Ridge detector.  Use a loop for.  Automatic index to the index, use index in array to get the value of the frequency and autoindex on frequencies.

  • Find the table if element have the same element in all indexes

    Hello

    I need to check if a table have the same element in all its indexes. (Example: an array of size 4, should have index 0... 3 1 and during the next iteration index whether no. 2 overall indexes...) How can I check if all indexes have same number)

    Attached to the VI I did.

    Anyone can offer better than this.

    get the first element, compare it with the hole dashboard, AND all items

  • get the index of the same values in table

    Hi guys,.

    I'm trying to get the index of array elements with the same value but it can solve mine.

    my case is:


    array1 = [1,2,3,4]; <-here are the names of the pages, always in the order of CSA (these table I used only to check the results of my work, probably will not be for you but maybe...)

    array2 = [1,1,2,2,2,3,4,4,4]; <-these numbers are random, but always in the CSA order (these are the names of pages for items in table 3)

    array3 = [a, b, g, i, f, e, c, h, d]; <-these are all the values of the elements I want to work with later. number of articles is still the same as in array2, their indexes are corresponding.

    array4 = [];

    I need to remove array3 everything, but one of each issue of array2 (as I will remove duplicates) or push to array4 an article of array3 for each number of the array array2 (as I'm going to ignore duplicates)

    don't know is my desc is clear enough, but the result I get is:

    ex. [a, g, e, c]

    above example for each number of array2 array3 items, but do not have to be first, can be second or third if etc exist, but have to be alone.

    I thought that if I get duplicate values, the index in the array array2 and delete this index in array3 will get what I want, but can not solve.

    You will appreciate all help.

    Thank you

    Try something like this:

    var array2 = [1,1,2,2,2,3,4,4,4];
    var array3 = ["a","b","g","i","f","e","c","h","d"];
    
    var tempArray = [];
    var resultArray = [];
    var n , x ;
    
    for(var n=array2.length-1;n>=0;n--)
    {
        var string = ""+array2[n];
        tempArray[string] = array3[n];
    }
    
    for(x in tempArray)
    {
        resultArray.push(tempArray[x]);
    }
    
    resultArray.reverse();
    // a,g,e,c
    

    Hope, that helps.

    Uwe

  • How can find data in a colum prj_no in all the table of the same schema

    Hi all

    I find the list of tables with data that has prj_no = "Axis_11" for all tables in the same schema.



    Thank you
    Nr

    PNR wrote:
    I find the list of tables with data that has prj_no = "Axis_11" for all tables in the same schema.

    1. find the tables with a column of PRJ_NO name. You can find it in USER_TAB_COLUMNS
    2 write a query to read the data in each table, using the UNION/UNION ALL operators to merge the results for each table

  • expdp + query option to export from several tables with the same condition

    Hello

    We want to export a subset of data only from databases to another. Both on AIX.

    Source/testdatabase 11.2.0.3 (non partitioned tables)
    Target productiion 11.2.0.3 database (separate tables)

    Tables of same names of columns but diffrenet structures a partitioning index and traget so only want to import content

    Each source datbaase hascolumn seq number table and want only to extract the last months of data.


    TABLES:table1,table2...
    DUMPFILE=dump_dir
    CONTENT=data_only
    QUERY= table1:"WHERE seq_num >100 "
    want to use expdp but not sure how to make sure that all tables have the seq_num WHERE > 100 condition, if let table1: go out and have just
    QUERY = "WHERE seq_num > 100"this condition would apply to all tables that we want."


    I'm assuming that can also use impdp CONTENT = data_only?

    Any ideas/thoughts?

    Thank you

    QUERY = "WHERE seq_num > 100"this condition would apply to all tables that we want."

    Yes, it will work for all tables, but ensure that all exported table must include this column.

    QUERY
    Default: no
    Goal
    Allows you to filter the data that is exported by specifying a clause of a SQL SELECT statement, which is applied to all tables in the work of export or a specific table.

    The query_clause is usually a WHERE clause for the selection of refined lines, but could be any SQL clause. For example, an ORDER BY clause can be used to accelerate a migration from a table in a heap in a table held in index. * If a [schema]. table_name is not provided, the query is applied to (and must be valid for) all tables in the export job.*

    http://docs.Oracle.com/CD/B19306_01/server.102/b14215/dp_export.htm

  • UPDATE on the same table in the sub query

    DB version: 11.2

    We have a table called SHP_GC_TRACK, which has about 8 million records with partitions. In the below UPDATE, it updates a column based on the SELECT on the same table in a subquery.
    UPDATE shp_gc_track a
       SET f_tran_proc  = 'Y'
     WHERE last_update_date <
              (SELECT MAX (last_update_date)
                 FROM shp_gc_track b
                WHERE a.shp_trx_rowid = b.shp_trx_rowid
                  AND a.c_shp_inst = b.c_shp_inst
                  AND a.f_tran_proc  = b.f_tran_proc 
                  AND b.f_ltr_received = 'D'
                  AND f_rec_code IN ('G', 'W')
                  AND b.f_rec_status = 'B'
                  AND b.c_shp_inst = :b1
                  )
       AND a.c_shp_inst = :b1
       AND a.f_ltr_received = 'D'             -----------------> part of composite index
       AND a.f_tran_proc  = 'N'              -----------------> part of composite index
       AND a.f_rec_code IN ('G', 'W')      --------------> part of composite index  
       AND a.f_rec_status = 'B';              -----------------> part of composite index  
    This UPDATE takes a long time to run and sometimes get hung up.

    We have a composite index on four columns f_ltr_received, f_rec_code, f_rec_status and f_tran_proc. Explain the plan shows that this composite index is used.



    Any way to rewrite this query or suggestion?

    Steve_74 wrote:
    DB version: 11.2

    We have a table called SHP_GC_TRACK, which has about 8 million records with partitions. In the below UPDATE, it updates a column based on the SELECT on the same table in a subquery.

    UPDATE shp_gc_track a
    SET f_tran_proc  = 'Y'
    WHERE last_update_date <
    (SELECT MAX (last_update_date)
    FROM shp_gc_track b
    WHERE a.shp_trx_rowid = b.shp_trx_rowid
    AND a.c_shp_inst = b.c_shp_inst
    AND a.f_tran_proc  = b.f_tran_proc
    AND b.f_ltr_received = 'D'
    AND f_rec_code IN ('G', 'W')
    AND b.f_rec_status = 'B'
    AND b.c_shp_inst = :b1
    )
    AND a.c_shp_inst = :b1
    AND a.f_ltr_received = 'D'             -----------------> part of composite index
    AND a.f_tran_proc  = 'N'              -----------------> part of composite index
    AND a.f_rec_code IN ('G', 'W')      --------------> part of composite index
    AND a.f_rec_status = 'B';              -----------------> part of composite index  
    

    This UPDATE takes a long time to run and sometimes get hung up.

    We have a composite index on four columns f_ltr_received, f_rec_code, f_rec_status and f_tran_proc. Explain the plan shows that this composite index is used.

    Any way to rewrite this query or suggestion?

    Setting updates with subqueries may be difficult: (.) Unfortunately my suggestions below are of the try-it-and-see-what-happens variety - nothing of certain

    First of all, check the index. Is it bitmap or tree? If the tree to see if the more restrictive columns are listed first - this can help with effectiveness of b-tree indexes. Also if the tree a composite bitmap for columns with lots of repeat values instead could help

    Its a correlated subquery so that you cannot run just the subquery first put the result in a scalar varaiable and using the variable in the SQL instead. You can try putting the keys w/join subuqery results in a TWG first to use TWG in SQL to see if I/O is reduced together during these two operations.

    You have the license for the parallel query option? Using parallel DML (this must be activated manually) can help. Check the documentation of the ALTER SESSION command to do so. In addition, the PARALLEL_INDEX() indicator could help

    Display the SQL execution plan

  • Recovery of the records by using the Ref Cursor or indexes per Table (which is better)

    Hi all

    I am interested to know if there is a performance (or other) advantages to return a result set from an Oracle stored procedure for a client application (for example, in Java) by using a Ref Cursor or Index by Table, respectively. Most of the people I met who know Java seem to use a Ref Cursor but did not say why this method is preferable. I'm not too familiar with Java and do not have the opportunity to test the difference between either method, but I am very interested in the other user forum about this view, gauging

    Kind regards

    Kevin.

    KevinFitz wrote:
    Hi zerathul,

    Thanks for the quick and helpful response. A REF CURSOR would be the best solution if the same set of results (content and number of records returned) should be dealt with by the application of the 'customer '. I'm guessing that maybe in this situation 'theoretical' that there might be less network traffic to return the set of results through an associative array,

    Kind regards

    Kevin.

    Yes, it would always be the best solution, because an associative array would mean collecting all the data in memory of expensive PGA on the database server before they pass any return on the network, while a fair Ref cursor is to feed the data over the network (maybe a little extra load, but you were unlikely to notice). Also the client application would treat a ref as of rows returned cursor data recovery and could treat them upon their arrival, an associative array is a collection of data which will then be entirely spent before any treatment could be done and then the treatment should go through the entire table to do.

    REF CURSOR will also provide other information such as the error codes etc regarding SQL if necessary. If you get an error when filling a table on the side of the database, it is not so easy to recover this error to the client.

    REF CURSOR is designed for this purpose. Use them.

  • Change an attribute value in a table of the tree at all levels using the control button.

    Hi all

    I use JDeveloper Version 11.1.1.7.0.

    I have set up on my Table from the tree only when selected in the parent level also chooses the checkbox on the levels of the child associated with a checkbox, see my below base schema.

    My method to achieve this was to follow this guide... Andrejus Baranovskis Blog: box support in ADF tree Table different levels

    1. [Checkbox] status. Name | Employee ID

    -> 2 status [Checkbox] | Name | Employee ID | etc. | etc.

    -> 3 status [Checkbox] | Name | Employee ID | etc. | etc. | etc.

    What I want to do now, is once the box is checked at the parent level and all child nodes checkboxes are also selected, is on pressure of a command button, the value of my 'Status' column has changed through all the levels where the check box is checked.

    The default of my column 'State' is 'untrusted', it should be replaced by "Approved" once the Parent level checkbox is checked (which causes the child nodes also be checked) and you press a command button.

    I searched for some pointers on how to do so for some time,

    I was trying to think of a way to use the attribute of checkboxes that is a Boolean data type, there may be a way to create a method that checks if the Boolean attribute = true and where is the value of the Status column should be changed, the problem is to make it through all three levels of the table from the tree. But I can't understand it, any help would be greatly appreciated.

    Thank you

    Kind regards

    Jamie.

    Hi Jamie,

    I guess that you can apply the same idea that you used to update the Boolean attribute box of your iterator. This time you need to do is to iterate exactly same way but update the Status attribute. Have you tried to do this? So while the first course you'll hand over your boolean, check and update status accordingly.

    What keeps you from doing this?

    Concerning

  • Change all the triggers table in the oracle schema by using a script - possible?


    Is it possible to modify all the triggers table in the oracle schema using a single script or modify each trigger table separately is the only way?

    A couple of alternatives come to mind.

    (1) you can go in SQL Develolper, go to the schema, expand the node for triggers and select all the triggers that you want to change.  Right-click and choose the fast DDL--> save spreadsheet.  Find and replace in the worksheet and then run the script.

    (2) if the trigger is the same for all 70 tables, you can move the PL/SQL out of the trigger and in a procedure in a package and just call the procedure of 70 triggers.  Now, the code is kept in the same place.  For new tables, you can add a call to the procedure and you are done.  If all 70 triggers are not the same, see if you can pass parameters to allow a generalized procedure that they can all use.

    You have not indicated what your triggers.  Are insert you columns of auditing, archiving data, inserting into a table of log, update another table or something else?  What type of trigger is it?  What you trying to accomplish with your triggers?

    Marcus Bacon

  • How to restrict the user to enter not same value in a table

    Greetings!

    I m asking a second time the upfront because I did not answer preivously, so please don't mind if it's a double.

    It was: I have created a table, as shown in the example.

    I want to validate the user name that you see in my example to restrict the user to enter the same value in the user name field before submitting page.

    for example when the user enters data as u see test in user name in the first row, when it goes to the second row and type same username as test "message will appear or restrict the user who has already typed or in use"...

    http://Apex.Oracle.com/pls/Apex/f?p=45296:1:22797340776918:

    It's all done on typing submit prior to registration.

    Please drivers

    Hello

    I m asking a second time the upfront because I did not answer preivously, so please don't mind if it's a double.

    It was: I have created a table, as shown in the example.

    I want to validate the user name that you see in my example to restrict the user to enter the same value in the user name field before submitting page.

    for example when the user enters data as u see test in user name in the first row, when it goes to the second row and type same username as test "message will appear or restrict the user who has already typed or in use"...

    http://Apex.Oracle.com/pls/Apex/f?p=45296:1:22797340776918:

    It's all done on typing submit prior to registration. >

    Stick the code below into the Page header > Javascript > run when loading the Page field.

    $('[input[name="f03"]').blur(function(){
      if ($('input[name="f03"][id!="'+$(this).attr('id')+'"]').val() == $(this).val()) {
         alert('Duplicate Entry.');
         var x = $(this).attr('id');
         setTimeout("(function(p){$('#'+p).focus();})('"+x+"')",100);
      }
    })
    

    Note:
    a.F03 is the 'name' of your column of username in the form of tables.
    b. This only valid values. If your tabular presentation has multiple pages then all of the rows are not currently displayed will be ignored.

    See you soon,.

  • update to column values (false) in a copy of the same table with the correct values

    Database is 10gr 2 - had a situation last night where someone changed inadvertently values of column on a couple of hundred thousand records with an incorrect value first thing in the morning and never let me know later in the day. My undo retention was not large enough to create a copy of the table as it was 7 hours comes back with a "insert in table_2 select * from table_1 to timestamp...» "query, so I restored the backup previous nights to another machine and it picked up at 07:00 (just before the hour, he made the change), created a dblink since the production database and created a copy of the table of the restored database.

    My first thought was to simply update the table of production with the correct values of the correct copy, using something like this:


    Update mnt.workorders
    Set approvalstat = (select b.approvalstat
    mnt.workorders a, mnt.workorders_copy b
    where a.workordersoi = b.workordersoi)
    where exists (select *)
    mnt.workorders a, mnt.workorders_copy b
    where a.workordersoi = b.workordersoi)

    It wasn't the exact syntax, but you get the idea, I wanted to put the incorrect values in x columns in the tables of production with the correct values of the copy of the table of the restored backup. Anyway, it was (or seem to) works, but I look at the process through OEM it was estimated 100 + hours with full table scans, so I killed him. I found myself just inserting (copy) the lines added to the production since the table copy by doing a select statement of the production table where < col_with_datestamp > is > = 07:00, truncate the table of production, then re insert the rows from now to correct the copy.

    Do a post-mortem today, I replay the scenario on the copy that I restored, trying to figure out a cleaner, a quicker way to do it, if the need arise again. I went and randomly changed some values in a column number (called "comappstat") in a copy of the table of production, and then thought that I would try the following resets the values of the correct table:

    Update (select a.comappstat, b.comappstat
    mnt.workorders a, mnt.workorders_copy b
    where a.workordersoi = b.workordersoi - this is a PK column
    and a.comappstat! = b.comappstat)
    Set b.comappstat = a.comappstat

    Although I thought that the syntax is correct, I get an "ORA-00904: 'A'. '. ' COMAPPSTAT': invalid identifier ' to run this, I was trying to guess where the syntax was wrong here, then thought that perhaps having the subquery returns a single line would be cleaner and faster anyway, so I gave up on that and instead tried this:

    Update mnt.workorders_copy
    Set comappstat = (select distinct)
    a.comappstat
    mnt.workorders a, mnt.workorders_copy b
    where a.workordersoi = b.workordersoi
    and a.comappstat! = b.comappstat)
    where a.comappstat! = b.comappstat
    and a.workordersoi = b.workordersoi

    The subquery executed on its own returns a single value 9, which is the correct value of the column in the table of the prod, and I want to replace the incorrect a '12' (I've updated the copy to change the value of the column comappstat to 12 everywhere where it was 9) However when I run the query again I get this error :

    ERROR on line 8:
    ORA-00904: "B". "" WORKORDERSOI ": invalid identifier

    First of all, I don't see why the update statement does not work (it's probably obvious, but I'm not)

    Secondly, it is the best approach for updating a column (or columns) that are incorrect, with the columns in the same table which are correct, or is there a better way?

    I would sooner update the table rather than delete or truncate then re insert, as it was a trigger for insert/update I had to disable it on the notice re and truncate the table unusable a demand so I was re insert.

    Thank you

    Hello

    First of all, after post 79, you need to know how to format your code.

    Your last request reads as follows:

    UPDATE
      mnt.workorders_copy
    SET
      comappstat =
      (
        SELECT DISTINCT
          a.comappstat
        FROM
          mnt.workorders a
        , mnt.workorders_copy b
        WHERE
          a.workordersoi    = b.workordersoi
          AND a.comappstat != b.comappstat
      )
    WHERE
      a.comappstat      != b.comappstat
      AND a.workordersoi = b.workordersoi
    

    This will not work for several reasons:
    The sub query allows you to define a and b and outside the breakets you can't refer to a or b.
    There is no link between the mnt.workorders_copy and the the update and the request of void.

    If you do this you should have something like this:

    UPDATE
      mnt.workorders     A      -- THIS IS THE TABLE YOU WANT TO UPDATE
    SET
      A.comappstat =
      (
        SELECT
          B.comappstat
        FROM
          mnt.workorders_copy B   -- THIS IS THE TABLE WITH THE CORRECT (OLD) VALUES
        WHERE
          a.workordersoi    = b.workordersoi      -- THIS MUST BE THE KEY
          AND a.comappstat != b.comappstat
      )
    WHERE
      EXISTS
      (
        SELECT
          B.comappstat
        FROM
          mnt.workorders_copy B
        WHERE
          a.workordersoi    = b.workordersoi      -- THIS MUST BE THE KEY
          AND a.comappstat != b.comappstat
      )
    

    Speed is not so good that you run the query to sub for each row in mnt.workorders
    Note it is condition in where. You need other wise, you will update the unchanged to null values.

    I wouold do it like this:

    UPDATE
      (
        SELECT
          A.workordersoi
          ,A.comappstat
          ,B.comappstat           comappstat_OLD
    
        FROM
          mnt.workorders        A      -- THIS IS THE TABLE YOU WANT TO UPDATE
          ,mnt.workorders_copy  B      -- THIS IS THE TABLE WITH THE CORRECT (OLD) VALUES
    
        WHERE
          a.workordersoi    = b.workordersoi      -- THIS MUST BE THE KEY
          AND a.comappstat != b.comappstat
      ) C
    
    SET
      C.comappstat = comappstat_OLD
    ;
    

    This way you can test the subquery first and know exectly what will be updated.
    This was not a sub query that is executed for each line preformance should be better.

    Kind regards

    Peter

  • bug using dbms_redefinition on table with the altered text index?

    I think I can found a bug when you use DBMS_REDEFINITION on a table with a text index that has been modified using ALTER INDEX index-name REBUILD PARAMETERS (REPLACE...). It seems that DBMS_REDEFINITION does not recognize the syntax with REPLACE and redefining fails. However, if I remove the text index and re-create it with all the parameters set during the initial creation and no ALTER INDEX command, then redo the redefinition, it works correctly. I have provided below a script that reproduces the problem, then use workaround mentioned. I have provided a copy of the script and executing the script separately, so that it can be copied and pasted to reproduce the problem. It is a simplification of a problem which has emerged over the diagnosis of a larger problem presented by someone on another forum, where the objective was to perform a loop on a group of tables that meet certain criteria and change some columns varchar2, nvarchar2 columns of these tables, where there are indexes in full text on the other columns in the tables and indexes have been changed using the syntax above. This seems to be a bug or am I missing something or is at - it an easier solution for the redefinition?

    -version:
    SCOTT@orcl_11gR2> select * from v$version;
    
    BANNER
    --------------------------------------------------------------------------------
    Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
    PL/SQL Release 11.2.0.1.0 - Production
    CORE    11.2.0.1.0      Production
    TNS for 64-bit Windows: Version 11.2.0.1.0 - Production
    NLSRTL Version 11.2.0.1.0 - Production
    
    5 rows selected.
    
    SCOTT@orcl_11gR2>
    -run the script:
    SCOTT@orcl_11gR2> -- table, data, altered text index:
    SCOTT@orcl_11gR2> CREATE TABLE t_test
      2    (col1  NUMBER PRIMARY KEY,
      3       col2  VARCHAR2 (10),
      4       col3  CLOB)
      5  /
    
    Table created.
    
    SCOTT@orcl_11gR2> INSERT INTO t_test VALUES (1, 'A', 'test data')
      2  /
    
    1 row created.
    
    SCOTT@orcl_11gR2> CREATE INDEX i1 ON t_test (col3) INDEXTYPE IS CTXSYS.CONTEXT
      2  /
    
    Index created.
    
    SCOTT@orcl_11gR2> ALTER INDEX i1 REBUILD PARAMETERS ('REPLACE SYNC (ON COMMIT)')
      2  /
    
    Index altered.
    
    SCOTT@orcl_11gR2> SELECT * FROM t_test WHERE CONTAINS (col3, 'test data') > 0
      2  /
    
          COL1 COL2       COL3
    ---------- ---------- ----------
             1 A          test data
    
    1 row selected.
    
    SCOTT@orcl_11gR2> -- redefinition that fails:
    SCOTT@orcl_11gR2> CREATE TABLE t_test_interim
      2    (col1  NUMBER,
      3       col2  NVARCHAR2 (10),
      4       col3  CLOB)
      5  /
    
    Table created.
    
    SCOTT@orcl_11gR2> DECLARE
      2    v_num_errors  NUMBER;
      3  BEGIN
      4    DBMS_REDEFINITION.CAN_REDEF_TABLE
      5        (USER, 'T_TEST', DBMS_REDEFINITION.CONS_USE_PK);
      6    DBMS_REDEFINITION.START_REDEF_TABLE
      7        (USER, 'T_TEST', 'T_TEST_INTERIM',
      8         'COL1 COL1,TO_NCHAR(COL2) COL2,COL3 COL3',
      9          DBMS_REDEFINITION.CONS_USE_PK);
     10    DBMS_REDEFINITION.SYNC_INTERIM_TABLE
     11        (USER, 'T_TEST', 'T_TEST_INTERIM');
     12    DBMS_REDEFINITION.COPY_TABLE_DEPENDENTS
     13        (USER, 'T_TEST', 'T_TEST_INTERIM',
     14         DBMS_REDEFINITION.CONS_ORIG_PARAMS,
     15         TRUE, TRUE, TRUE, FALSE, v_num_errors, TRUE);
     16    DBMS_REDEFINITION.FINISH_REDEF_TABLE
     17        (USER, 'T_TEST', 'T_TEST_INTERIM');
     18  END;
     19  /
    DECLARE
    *
    ERROR at line 1:
    ORA-29855: error occurred in the execution of ODCIINDEXCREATE routine
    ORA-20000: Oracle Text error:
    DRG-11000: invalid keyword REPLACE
    ORA-06512: at "SYS.DBMS_REDEFINITION", line 1364
    ORA-06512: at "SYS.DBMS_REDEFINITION", line 2025
    ORA-06512: at line 12
    
    
    SCOTT@orcl_11gR2> -- clean up the mess:
    SCOTT@orcl_11gR2> DROP MATERIALIZED VIEW t_test_interim
      2  /
    
    Materialized view dropped.
    
    SCOTT@orcl_11gR2> DROP TABLE t_test_interim CASCADE CONSTRAINTS
      2  /
    
    Table dropped.
    
    SCOTT@orcl_11gR2> BEGIN
      2    DBMS_REDEFINITION.ABORT_REDEF_TABLE
      3        (USER, 'T_TEST', 'T_TEST_INTERIM');
      4  END;
      5  /
    
    PL/SQL procedure successfully completed.
    
    SCOTT@orcl_11gR2> -- drop and recreate index with all parameters without altering:
    SCOTT@orcl_11gR2> DROP INDEX I1
      2  /
    
    Index dropped.
    
    SCOTT@orcl_11gR2> CREATE INDEX I1 ON T_TEST (COL3) INDEXTYPE IS CTXSYS.CONTEXT
      2  PARAMETERS ('SYNC (ON COMMIT)')
      3  /
    
    Index created.
    
    SCOTT@orcl_11gR2> -- redo redefinition:
    SCOTT@orcl_11gR2> CREATE TABLE t_test_interim
      2    (col1  NUMBER,
      3       col2  NVARCHAR2 (10),
      4       col3  CLOB)
      5  /
    
    Table created.
    
    SCOTT@orcl_11gR2> DECLARE
      2    v_num_errors  NUMBER;
      3  BEGIN
      4    DBMS_REDEFINITION.CAN_REDEF_TABLE
      5        (USER, 'T_TEST', DBMS_REDEFINITION.CONS_USE_PK);
      6    DBMS_REDEFINITION.START_REDEF_TABLE
      7        (USER, 'T_TEST', 'T_TEST_INTERIM',
      8         'COL1 COL1,TO_NCHAR(COL2) COL2,COL3 COL3',
      9          DBMS_REDEFINITION.CONS_USE_PK);
     10    DBMS_REDEFINITION.SYNC_INTERIM_TABLE
     11        (USER, 'T_TEST', 'T_TEST_INTERIM');
     12    DBMS_REDEFINITION.COPY_TABLE_DEPENDENTS
     13        (USER, 'T_TEST', 'T_TEST_INTERIM',
     14         DBMS_REDEFINITION.CONS_ORIG_PARAMS,
     15         TRUE, TRUE, TRUE, FALSE, v_num_errors, TRUE);
     16    DBMS_REDEFINITION.FINISH_REDEF_TABLE
     17        (USER, 'T_TEST', 'T_TEST_INTERIM');
     18  END;
     19  /
    
    PL/SQL procedure successfully completed.
    
    SCOTT@orcl_11gR2> DROP TABLE t_test_interim CASCADE CONSTRAINTS
      2  /
    
    Table dropped.
    
    SCOTT@orcl_11gR2> -- results:
    SCOTT@orcl_11gR2> DESC t_test
     Name                                      Null?    Type
     ----------------------------------------- -------- ----------------------------
     COL1                                               NUMBER
     COL2                                               NVARCHAR2(10)
     COL3                                               CLOB
    
    SCOTT@orcl_11gR2> COLUMN col3 FORMAT A10
    SCOTT@orcl_11gR2> SELECT * FROM t_test WHERE CONTAINS (col3, 'test data') > 0
      2  /
    
          COL1 COL2       COL3
    ---------- ---------- ----------
             1 A          test data
    
    1 row selected.
    
    SCOTT@orcl_11gR2> -- clean-up:
    SCOTT@orcl_11gR2> DROP TABLE t_test
      2  /
    
    Table dropped.
    
    SCOTT@orcl_11gR2>
    -script:
    -- table, data, altered text index:
    CREATE TABLE t_test
      (col1  NUMBER PRIMARY KEY,
       col2  VARCHAR2 (10),
       col3  CLOB)
    /
    INSERT INTO t_test VALUES (1, 'A', 'test data')
    /
    CREATE INDEX i1 ON t_test (col3) INDEXTYPE IS CTXSYS.CONTEXT
    /
    ALTER INDEX i1 REBUILD PARAMETERS ('REPLACE SYNC (ON COMMIT)')
    /
    SELECT * FROM t_test WHERE CONTAINS (col3, 'test data') > 0
    /
    -- redefinition that fails:
    CREATE TABLE t_test_interim
      (col1  NUMBER,
       col2  NVARCHAR2 (10),
       col3  CLOB)
    /
    DECLARE 
      v_num_errors  NUMBER;
    BEGIN 
      DBMS_REDEFINITION.CAN_REDEF_TABLE
        (USER, 'T_TEST', DBMS_REDEFINITION.CONS_USE_PK);
      DBMS_REDEFINITION.START_REDEF_TABLE
        (USER, 'T_TEST', 'T_TEST_INTERIM',
         'COL1 COL1,TO_NCHAR(COL2) COL2,COL3 COL3',
          DBMS_REDEFINITION.CONS_USE_PK);
      DBMS_REDEFINITION.SYNC_INTERIM_TABLE
        (USER, 'T_TEST', 'T_TEST_INTERIM');
      DBMS_REDEFINITION.COPY_TABLE_DEPENDENTS
        (USER, 'T_TEST', 'T_TEST_INTERIM',
         DBMS_REDEFINITION.CONS_ORIG_PARAMS, 
         TRUE, TRUE, TRUE, FALSE, v_num_errors, TRUE);
      DBMS_REDEFINITION.FINISH_REDEF_TABLE
        (USER, 'T_TEST', 'T_TEST_INTERIM');
    END;
    /
    -- clean up the mess:
    DROP MATERIALIZED VIEW t_test_interim
    /
    DROP TABLE t_test_interim CASCADE CONSTRAINTS
    /
    BEGIN 
      DBMS_REDEFINITION.ABORT_REDEF_TABLE
        (USER, 'T_TEST', 'T_TEST_INTERIM');
    END;
    /
    -- drop and recreate index with all parameters without altering:
    DROP INDEX I1
    /
    CREATE INDEX I1 ON T_TEST (COL3) INDEXTYPE IS CTXSYS.CONTEXT
    PARAMETERS ('SYNC (ON COMMIT)')
    /
    -- redo redefinition:
    CREATE TABLE t_test_interim
      (col1  NUMBER,
       col2  NVARCHAR2 (10),
       col3  CLOB)
    /
    DECLARE 
      v_num_errors  NUMBER;
    BEGIN 
      DBMS_REDEFINITION.CAN_REDEF_TABLE
        (USER, 'T_TEST', DBMS_REDEFINITION.CONS_USE_PK);
      DBMS_REDEFINITION.START_REDEF_TABLE
        (USER, 'T_TEST', 'T_TEST_INTERIM',
         'COL1 COL1,TO_NCHAR(COL2) COL2,COL3 COL3',
          DBMS_REDEFINITION.CONS_USE_PK);
      DBMS_REDEFINITION.SYNC_INTERIM_TABLE
        (USER, 'T_TEST', 'T_TEST_INTERIM');
      DBMS_REDEFINITION.COPY_TABLE_DEPENDENTS
        (USER, 'T_TEST', 'T_TEST_INTERIM',
         DBMS_REDEFINITION.CONS_ORIG_PARAMS, 
         TRUE, TRUE, TRUE, FALSE, v_num_errors, TRUE);
      DBMS_REDEFINITION.FINISH_REDEF_TABLE
        (USER, 'T_TEST', 'T_TEST_INTERIM');
    END;
    /
    DROP TABLE t_test_interim CASCADE CONSTRAINTS
    /
    -- results:
    DESC t_test
    COLUMN col3 FORMAT A10
    SELECT * FROM t_test WHERE CONTAINS (col3, 'test data') > 0
    /
    -- clean-up:
    DROP TABLE t_test
    /

    No real workaround DBMS_REDEFINITION uses function DBMS_METADATA. GET_DDL() and a string of invalid parameter is returned due to known bugs when you use the ALTER INDEX REBUILD with parameter REPLACE; try to avoid changing the index with REPLACE if you export or use DBMS_REDEFINITION for this table/index.

    Note to change the text index metadata, to change the existing class preference, you can use the REPLACE METADATA, IE

    ALTER INDEX i1 REBUILD PARAMETERS ("replace metadata sync (on commit)" ");

    Will not rebuild the index so that your DOF is to rebuild the index

    ALTER INDEX i1 REBUILD PARAMETERS ('REPLACE SYNC (ON COMMIT)")

Maybe you are looking for

  • Is there an add on for McAfee SiteAdvisor or it is disabled forever

    I use McAfee SiteAdvisor whenever I search. The new update for Firefox has disabled this feature... Is it active again, or is - that permanent. I love Firefox and I also like McAfee and use the SiteAdvisor when searching... I have put my trust in thi

  • Fix - it continues to view as dangerous by security essentials

    After receiving a huge update on 17/06/2012 computer started to act up.  IE 9, which was part of the update would not work, computer was slow and some programs have refused to work.   Have deleted all the programs that I could, fixed install on hp, I

  • Replace the HARD drive - same MODEL same vs P/N

    I intend to replace the HARD drive in my T30 with the same original title Travelstar.  There seems to be a lot of available.  It's cheaper to buy a disk without the caddy and I can transfer the caddy from the old drive.  I found the discs "naked" wit

  • Problems downgrading from Vista to Xp - Sound Blaster Audigy Advanced MB not recognized

    Hello I have an Inspiron 1520 provided with Windows Vista Premium. I downgraded to XP Pro. Everything seemed great until I noticed a beep instead of each sound. I tried to install the driver 92xx Sigmatell from the Dell website, but it does not work.

  • Re: Lost code for Photoshop Elements product key

    I'm kinda in the same situation, I try to re-register my photoshop elements 13 on the same computer but cannot find my product key code.  I went to the adobe site where I am registered in the program before and it tells me that I have no registered p