BULK UPDATE

Hi,
I am trying to do Update in batches, but with very little success. I did some reading and tried using BULK COLLECT and FORALL to accomplish the task. I am not sure where I messed up but only one row is being updated. Also I am not sure if there is a better wasy of doing this.
I am currently using 10.2.
Any help would be appreciated. The goal is to update "temp_emp_new" based on "temp_emp_base".
Create the base tables:
CREATE TABLE temp_emp_base AS
SELECT ROWNUM AS emp_id
     , SYSDATE - (365 * ROWNUM) AS emp_dob
  FROM all_objects
WHERE ROWNUM < 11;
COMMIT ;
CREATE TABLE temp_emp_new
    emp_id NUMBER,
    emp_dob DATE
INSERT INTO temp_emp_new
   SELECT emp_id
        , NULL AS emp_dob
     FROM temp_emp_base;
COMMIT ;Try to update temp_emp_new based on temp_emp_base:
DECLARE
   TYPE emp_id_tab IS TABLE OF temp_emp_new.emp_id%TYPE;
   TYPE emp_tab IS TABLE OF temp_emp_new%ROWTYPE;
   CURSOR emp_cur
   IS
      SELECT emp_id
        FROM temp_emp_new;
   t_emp_id       emp_id_tab     := emp_id_tab ();
   l_start           NUMBER;
   l_size            NUMBER            := 5;
   l_cnt             NUMBER            := 0;
   dml_errors        EXCEPTION;
   PRAGMA EXCEPTION_INIT (dml_errors, -24381);
BEGIN
   l_start := DBMS_UTILITY.get_time;
   OPEN emp_cur;
   LOOP
      DBMS_APPLICATION_INFO.set_client_info ('processing ' || l_cnt || ' thru ' || (l_cnt + l_size));
      FETCH emp_cur
      BULK COLLECT INTO t_emp_id
           LIMIT l_size;
      BEGIN
         FORALL i IN t_emp_id.FIRST .. t_emp_id.LAST SAVE EXCEPTIONS
            UPDATE temp_emp_new mza
               SET (mza.emp_dob) =
                      (SELECT NVL (mza.emp_dob, m.emp_dob) AS emp_dob
                         FROM temp_emp_base m
                        WHERE mza.emp_id = m.emp_id
                          AND m.emp_id = t_emp_id (i));
         COMMIT;
      EXCEPTION
         WHEN dml_errors
         THEN
            FOR i IN 1 .. SQL%BULK_EXCEPTIONS.COUNT
            LOOP
               DBMS_OUTPUT.put_line (   'Error occurred during iteration '
                                     || SQL%BULK_EXCEPTIONS (i).ERROR_INDEX
                                     || ' Oracle error is '
                                     || SQL%BULK_EXCEPTIONS (i).ERROR_CODE);
            END LOOP;
      END;
      EXIT WHEN t_emp_id.COUNT = 0;
      l_cnt := l_cnt + l_size;
   END LOOP;
   CLOSE emp_cur;
   DBMS_OUTPUT.put_line ('Bulk Updates   : ' || (DBMS_UTILITY.get_time - l_start));
   COMMIT;
END;

Managed to correct my mistake.
I just thought about it a little more and got the answer. Actually I think it was just about taking a fresh look in the morning.
Thanks for the suggestions anyways.
DECLARE
The table types and cursor are now created from "temp_emp_base".
I am also creating a Table Type for the column whose values I need for the UPDATE.
   TYPE emp_id_tab IS TABLE OF temp_emp_base.emp_id%TYPE;
   TYPE emp_dob_tab IS TABLE OF temp_emp_base.emp_dob%TYPE;
   TYPE emp_tab IS TABLE OF temp_emp_base%ROWTYPE;
   CURSOR emp_cur
   IS
      SELECT emp_id, emp_dob
        FROM temp_emp_base;
   t_emp_id                      emp_id_tab := emp_id_tab();
   t_emp_dob                     emp_dob_tab := emp_dob_tab();
   l_start                       NUMBER;
   l_size                        NUMBER := 5;
   l_cnt                         NUMBER := 0;
   dml_errors                    EXCEPTION;
   PRAGMA EXCEPTION_INIT(dml_errors, -24381);
BEGIN
   l_start := DBMS_UTILITY.get_time;
   OPEN emp_cur;
   LOOP
      DBMS_APPLICATION_INFO.set_client_info('processing ' || l_cnt || ' thru ' ||(l_cnt + l_size) );
      FETCH emp_cur
      BULK COLLECT INTO t_emp_id, t_emp_dob LIMIT l_size;
      BEGIN
  The UPDATE statement updates "temp_emp_new" and the BULK COLLECT
  has the data from "temp_emp_base"
         FORALL i IN t_emp_id.FIRST .. t_emp_id.LAST SAVE EXCEPTIONS
            UPDATE temp_emp_new mza
               SET mza.emp_dob = NVL(mza.emp_dob, t_emp_dob(i) )
             WHERE mza.emp_id = t_emp_id(i);
         COMMIT;
      EXCEPTION
         WHEN dml_errors THEN
            FOR i IN 1 .. SQL%BULK_EXCEPTIONS.COUNT LOOP
               DBMS_OUTPUT.put_line('Error occurred during iteration '
                  || SQL%BULK_EXCEPTIONS(i).ERROR_INDEX
                  || ' Oracle error is '
                  || SQL%BULK_EXCEPTIONS(i).ERROR_CODE);
            END LOOP;
      END;
      EXIT WHEN t_emp_id.COUNT = 0;
      l_cnt := l_cnt + l_size;
   END LOOP;
   CLOSE emp_cur;
   DBMS_OUTPUT.put_line('Bulk Updates   : ' ||(DBMS_UTILITY.get_time - l_start) );
   COMMIT;
END base;

Similar Messages

  • No Data Found Exception in bulk updates

    I am trying to catch no data found exception in bulk updates when it does not find a record to update in the forall loop.
    OPEN casualty;
    LOOP
    FETCH casulaty
    BULK COLLECT INTO v_cas,v_adj,v_nbr
    LIMIT 10000;
    FORALL i IN 1..v_cas.count
    UPDATE tpl_casualty
         set casualty_amt = (select amt from tpl_adjustment where cas_adj = v_adj(i))
         where cas_nbr = v_nbr(i);
    EXCEPTION WHEN NO_DATA_FOUND THEN dbms_output.put_line('exception')
    I get this error at the line where i have exception:
    PLS-00103: Encountered the symbol "EXCEPTION" when expecting one of the following:
    begin case declare end exit for goto if loop mod null pragma
    raise return select update while with <an identifier>
    <a double-quoted delimited-identifier> <a bind variable> <<
    close current delete fetch lock insert open rollback
    savepoint set sql execute commit forall merge pipe
    Can someone pls direct me on how to get around this?
    If I do not handle this exception, the script fails when it attempts to update a record that does not exist and the error says : no data found exception.
    Thanks for your help.
    Edited by: user8848256 on Nov 13, 2009 6:15 PM

    No Data Found isn't an exception raised when an UPDATE cannot find any records to process.
    SQL%ROWCOUNT can be used to determine the number of rows affected by an update statement, but if 0 rows are updated then no exception will be raised (it's just not how things work).
    If you post your actual CURSOR (casualty) declaration, it's quite possible we can help you create a single SQL statement to meet your requirement (a single SQL will be faster than your current implementation).
    Have you looked in to using the MERGE command?

  • How can I do a bulk update?

    Hi
    In our BC4J application I need to perform a "bulk update", that is, I need to iterate over all the rows of a View and set one attribute on each one. Tracing the SQL session, I note that the BC4J framework is doing a select for update where pk = ... for each row. Is there something similar to the "executeQuery" view method, that does a "select for update"? something like an "executeQueryAndLockAllRows()?"
    I'm using PESSIMISTIC locking mode.
    Thanks,
    Ramiro

    Hi
    In our BC4J application I need to perform a "bulk update", that is, I need to iterate over all the rows of a View and set one attribute on each one. Tracing the SQL session, I note that the BC4J framework is doing a select for update where pk = ... for each row. Is there something similar to the "executeQuery" view method, that does a "select for update"? something like an "executeQueryAndLockAllRows()?"You can use batch-update features on an entity for update if your entity does not contain any refresh-on-update flags and any large data types (lobs). See help on Batch Update in the Tuning panel of an entity wizard/editor.
    It will still execute select..for..update but the network roundtrip will occur in a batch rather than one roundtrip for every row leading to a much faster batch-update performance.
    I'm using PESSIMISTIC locking mode.
    Thanks,
    Ramiro

  • [CS3] Is there a way to stop the modal alert on EVERY SINGLE ERROR during a bulk update?

    I've inherited quite a mess I'll admit -- I've got ~ 8000 pages each with different dreamweaver templates with the entire site being in a varying state of disrepair.  I need to perform a global change -- I'm thinking the way to go about this is to update the templates (thre are ~40 of them, not nested) and let the process run through. However, I've encountered difficulties.
    After about ~2300 files loaded into the site cache, dreamweaver crashes -- there is no error, it's an unhandled exception.... it consistently crashes at this point.  I'm not sure if this is a specific page causing the problem, or if it's that I'm trying to load 8K files into the site cache....  So anyway, with it crashing consistently trying to build the site cache, I basically press "stop" whenever it tries, and that seems to abort the building and the 'update pages' screen comes up and tries to update the files.
    My next problem is that there are countless errors in each of these pages and templates -- ranging from the 'template not found' when an old or outdated file is referencing a template that has been deleted -- to various mismatched head or body tags.  Of course, and this is probably the most annoying thing I've ever encountered,  this bulk process that should run over 1000s of files without interaction seems to feel the need to give me a modal alert for every single error.  The process stops until I press 'OK'
    I'm talking update 5-10 files, error... hit 'return', another 5-10 files are processed, another alert, hit 'return' -- rinse and repeat.  Oh, and I made the mistake one time of hitting 'return' one too many times -- oh yes, this will STOP the current update because default focus is on the 'Stop' button, for whatever reason. and if I want to get the rest of the files, I need to run it again -- from the start.
    Is there a way to silence these errors?   They're already showing up in the log, I wouldn't mind going through it once the entire site has been udpated to clean thing up ... but I'm updating quite literally thousands of pages here, I would wager that 1/3 of them have some form of an error on it... do I really need to press "OK" two thousand times to do a bulk update with this program?
    Any tips from the pros?

    This one might help.
    Allow configuration of Automatic Updates in Windows 8 and Windows Server 2012
    Regards, Dave Patrick ....
    Microsoft Certified Professional
    Microsoft MVP [Windows]
    Disclaimer: This posting is provided "AS IS" with no warranties or guarantees , and confers no rights.

  • Bulk update height of Hyperlinks in a PDF document

    When we export our InDesign document to PDF, hyperlinks are automatically generated for each item in the Table of Contents (TOC). This is great, but the problem is the hyperlink area of each line overlaps with the hyperlink area of the next line. This can create confusion in Adobe Reader and Apple Preview when a user clicks near the top or bottom of a TOC heading on a line, thinking it will take them to that heading in the document but instead they are taken to the preceeding or following heading in the document.
    We currently have to open the PDF up in Adobe Acrobat and manually go through and reduce the height of every hyperlink in our document, particularly in the TOC (using the Link Tool). Is there anyway in InDesign to change the height of hyperlinks that are exported? If not, is there a way to bulk update the height of all the hyperlinks using Acrobat rather than doing each one individually/manually (maybe some sort of script)?
    Many thanks : ) Lee

    Yes, you can create a script in Acrobat that loops through the links and adjusts the link's "rect" property to suit your needs. You'll want to consult the Acrobat JavaScript Reference, and look at the doc.getLinks method in particular: http://livedocs.adobe.com/acrobat_sdk/9.1/Acrobat9_1_HTMLHelp/JS_API_AcroJS.88.479.html
    along with the Link object properties: http://livedocs.adobe.com/acrobat_sdk/9.1/Acrobat9_1_HTMLHelp/JS_API_AcroJS.88.802.html
    Post again if you get stuck.
    I don't know what control you have over this on the InDesign side of things. You may want to ask in one of the InDesign forums if you haven't already.

  • Regd bulk update of values in the table..

    HI ,
    I have a search page.. Have used autocustomization to create it ..This page will be used to query data from a table and then we also need to update couple of results table fields and save them.
    THere is a results region . i have included the multiselect option of table which has got me a select column as the first column in the table. Also have included a tableaction and an upate button with that ..
    Next to the table actions , Update button , I need to have a field , where in i can enter value and it shud update the updatable fields of rows in the table as bulk .. with the same value in the field next to update..
    SOme what like batch update for the table with same values..
    Could you please tell me hw do we do this ?
    Regards,
    Preeti

    Hi,
    As the update button is clicked then :
    if(pageContext.getParameter("Update")!= null)
    // Grab the value of the field next to update button
    String value = pageContext.getParameter("<id of text input>");
    //then loop through the rows
    for ( int i=0;i<row.length;i++)
    // then set the value of Attribute which you want
    row.setAttribute("<Attribute name>",value);//if this Attribute is on a text input in table then automatically it will be reflected for all rows of the table. (Bulk Update)
    Thanks,
    Gaurav

  • Problem in bulk update on partitioned table

    Hi,
    As per my old discussions on my huge table t_utr with 220 million rows,
    I'm running a bulk update statement on the table which may update 10 to 10 million rows in a single update statement.
    The problem is that when the statement has to update more number of rows, the update statement take more time.
    Here I want to know, when a update statement has to update more rows, will it impact the performance?
    Regards
    Deepak

    > I'm running a bulk update statement on the table
    which may update 10 to 10 million rows in a single
    update statement.
    Bulk updates does not make SQL statements execute any faster.
    > The problem is that when the statement has to update
    more number of rows, the update statement take more
    time.
    It is not a problem, but a fact.
    > Here I want to know, when a update statement has to
    update more rows, will it impact the performance?
    You have a car capable of traveling 120km/h. You drive from point A to point B. These are 10 km apart. It takes 5 minutes.
    Obviously when you travel from A to Z that are a 1000 km apart, it is going to take a lot longer than just 5 minutes.
    Will updating more rows impact performance? No. Because you cannot compare the time it takes to travel from point A to B with the time it takes to travel from point A to Z. It does not make sense wanting to compare the two. Or thinking that a 1000km journey will be as fast to travel than a 10km journey.
    Updating 10 rows cannot be compared to updating 10 million rows. Expecting a 10 million row update to be equivalent in "performance" to a 10 row update is ludicrous.
    The correct question to ask is how to optimise a 10 million row update. The optimisation methods for a large update is obviously very different than those of a small update. E.g. 5 I/Os per row updated is insignificant when updating 10 rows. But is very significant when updating 10 million rows.

  • BULK updates

    Hi All,
    I have a table which has around 50 million rows. I want to update a particular column for all the rows in the table based on some join conditons with other tables.
    the conventional update method is taking too much time. no matter if i use a indexed column based update etc etc.. i came to know about BULK updates may be faster.
    can anyone please help me on this? bulk update example code would be helpful.. any example document also would be better.

    The conventional syntax can sometimes force a nested-loop/filter plan:
    UPDATE table1 t1
    SET    col1 =
           ( SELECT col2 FROM table2 t2
             WHERE  t2.x = t1.x );in which case updating a view may give you more flexibility and a more efficient join:
    UPDATE
    ( SELECT t1.col1, t2.col2
      FROM   table1 t1
             JOIN table2 t2 ON t2.x = t1.x
      WHERE  ... )
    SET col1 = col2Have you also made sure you are only updating the rows you need? i.e. those that are different to the desired value (bearing in mind nulls etc).
    Edited by: William Robertson on Sep 21, 2010 7:26 PM

  • Bulk Update query

    Hello Friends,
    Can some one suggest me is that any possible bulk update query which consumes less timings?
    Table - MyTable
    id - PK.
    orderid - Order Id.
    Subid - Sub Id for an Order.
    lineitem - LineItemId.
    ProducId - Product Id.
    Now i want to update the Subid to My Table for Every Order on Basis of LineItemId..
    For Ex:
    I will be having the records in MyTable as for a single Order...there can mutilple Subid's.
    UPDATE MyTable SET subid = 1 WHERE orderid = 123 AND lineitem = 1;
    UPDATE MyTable SET subid = 1 WHERE orderid = 123 AND lineitem = 2;
    UPDATE MyTable SET subid = 5 WHERE orderid = 123 AND lineitem = 2000;
    I worked out three scenarios as follows,
    Case1:
    UPDATE MyTable SET subid = 5 WHERE orderid = 123 AND lineitem = 2000;
    Case2:
    UPDATE MyTable SET subid = 1 WHERE orderid = 123 AND lineitem in(1,2,3.....1000);
    UPDATE MyTable SET subid = 2 WHERE orderid = 123 AND lineitem in(1001,1002,.....1100);
    Case3:
    UPDATE MyTable SET subid= CASE WHEN lineitem = 1 THEN 1 WHEN lineitem = 2 THEN 2 .....WHEN 1000 THEN 1000 END WHERE orderid = 123;
    Please suggest me which update consumes less time and helpful for updating more records nearly 5000 - 10000 at a single table.

    You are comparing three cases that are not equal to each other:
    Case1:
    UPDATE MyTable SET subid = 5 WHERE orderid = 123 AND lineitem = 2000;
    Here you update the records with orderid = 123 and lineitem = 2000
    Case2:
    UPDATE MyTable SET subid = 1 WHERE orderid = 123 AND lineitem in(1,2,3.....1000);
    UPDATE MyTable SET subid = 2 WHERE orderid = 123 AND lineitem in(1001,1002,.....1100);
    This are multiple update statement to update all records with orderid = 123 and lineitems between 1 and 1100.
    Case3:
    UPDATE MyTable SET subid= CASE WHEN lineitem = 1 THEN 1 WHEN lineitem = 2 THEN 2 .....WHEN 1000 THEN 1000 END WHERE orderid = 123;
    And here all records with orderid = 123, regardless of the lineitem are updated.
    So my guess is that 1 will be the fastest as it is updating the least amount of records, followed by 2 and then 3. But it is a really weird comparison.
    I think you'd better make up your mind first about which records need to be updated and how. And then it is best to use one update statement to do the job.
    Regards,
    Rob.

  • Bulk Update Connected SharePoint Sites via powershell

    Hello
    Is there a way to Bulk Update Connected SharePoint Sites via powershell?
    Yasser

    Sure you can, call the following PSI method from PowerShell passing in the correct parameter values:
    http://msdn.microsoft.com/en-us/library/office/gg206217(v=office.15).aspx
    Paul
    Paul Mather | Twitter |
    http://pwmather.wordpress.com | CPS

  • Best practice: bulk update (inverse of REF CURSOR SELECT)??

    To move data from the database to the application, there are REF CURSORS. However, there is no easy way to move updates/inserts from a dataset back to the database.
    Could someone provide some guidelines or simple examples of how to do bulk updates (and I'm talking multiple columns for multiple rows).
    I guess the way to go is arraybind. Are there any guidelines on how to handle them in .Net and PL/SQL ?

    You don't use the DECLARE keyword when defining stored procedures. The IS/ AS keyword is what you use instead.
    CREATE OR REPLACE PROCEDURE TEST_REF
    IS
      TYPE REF_EMP IS REF CURSOR RETURN EMPLOYEES%ROWTYPE;
      RF_EMP REF_EMP;
      V_EMP EMPLOYEES%ROWTYPE;
    BEGIN
      DBMS_OUTPUT.ENABLE(1000000);
      OPEN RF_EMP FOR
        SELECT *
          FROM EMPLOYEES
         WHERE EMPLOYEE_ID > 100;
      FETCH RF_EMP INTO V_EMP;
      DBMS_OUTPUT.PUT_LINE(V_EMP.FIRST_NAME || ' ' || V_EMP.LAST_NAME);
      CLOSE RF_EMP;
    EXCEPTION
      WHEN OTHERS
        THEN DBMS_OUTPUT.PUT_LINE(SQLERRM);
    END TEST_REF;will compile. It seems a bit odd that you are opening a cursor and only fetching the first row from it. I would tend to suspect that you want to loop over every row that is returned.
    Justin

  • Doubt on bulk update

    Hi,
    We have the below code block to do one of our bulk updates. Its taking way too long to finish. its 10g 10.2.0.4 version.
    can anyone pls suggest any other alternatives to make this code run faster ?
    DECLARE
    CURSOR s_cur IS
    SELECT /*+ PARALLEL(item_dscr_copy_t 4) */ id.item_dscr_id,rdc.dscr_id
    FROM   rgn_t r
    INNER JOIN item_t i
    ON    i.item_origin_rgn_id = r.rgn_id
    INNER JOIN item_dscr_t id
    ON    i.item_rec_id = id.item_rec_id
    INNER JOIN dscr_config_t dc
    ON    dc.dscr_id   = id.dscr_id
    AND   dc.enty_dscr = 'ITEM'
    INNER JOIN rgn_t eur
    ON    dc.rgn_id = eur.rgn_id
    AND   eur.rgn_mnm = 'EU'
    INNER JOIN dscr_config_t rdc
    ON    rdc.dscr_name = dc.dscr_name
    AND   rdc.rgn_id    = i.item_origin_rgn_id
    AND   rdc.enty_dscr = 'ITEM'
    WHERE r.rgn_mnm LIKE 'EU%'
    AND   r.rgn_mnm != 'EU';
    TYPE t_item_dscr_id IS TABLE OF item_dscr_t.item_dscr_id%TYPE;
    TYPE t_dscr_id IS TABLE OF item_dscr_t.dscr_id%TYPE;
    ar_item_dscr_id t_item_dscr_id;
    ar_dscr_id t_dscr_id;
    BEGIN
      OPEN s_cur;
      LOOP
        FETCH s_cur BULK COLLECT INTO ar_item_dscr_id, ar_dscr_id LIMIT 10000;
        FORALL i IN ar_item_dscr_id.FIRST .. ar_item_dscr_id.LAST
        UPDATE item_dscr_copy_t
        SET    dscr_id = ar_dscr_id(i)
        WHERE  item_dscr_id = ar_item_dscr_id(i);
        COMMIT;
        EXIT WHEN s_cur%NOTFOUND;
      END LOOP;
      CLOSE s_cur;
    END;

    Hi,
    did you try it without the hint? Are there maybe triggers on the table item_dscr_copy_t? How is the table item_dscr_copy_t indexed? And also the others?
    Look at the first poster, and maybe you can give us more information.*yes i did. but didnt help. there are no triggers. pls find below regarding the index information of this table.
    i am not able to generate the explain plan for this code block !
    i tried to generate but its telling ORA-00905: missing keyword error.*
    OWNER     INDEX_NAME     INDEX_TYPE     TABLE_OWNER     TABLE_NAME     TABLE_TYPE     UNIQUENESS     COMPRESSION     PREFIX_LENGTH     TABLESPACE_NAME     INI_TRANS     MAX_TRANS     INITIAL_EXTENT     NEXT_EXTENT     MIN_EXTENTS     MAX_EXTENTS     PCT_INCREASE     PCT_THRESHOLD     INCLUDE_COLUMN     FREELISTS     FREELIST_GROUPS     PCT_FREE     LOGGING     BLEVEL     LEAF_BLOCKS     DISTINCT_KEYS     AVG_LEAF_BLOCKS_PER_KEY     AVG_DATA_BLOCKS_PER_KEY     CLUSTERING_FACTOR     STATUS     NUM_ROWS     SAMPLE_SIZE     LAST_ANALYZED     DEGREE     INSTANCES     PARTITIONED     TEMPORARY     GENERATED     SECONDARY     BUFFER_POOL     USER_STATS     DURATION     PCT_DIRECT_ACCESS     ITYP_OWNER     ITYP_NAME     PARAMETERS     GLOBAL_STATS     DOMIDX_STATUS     DOMIDX_OPSTATUS     FUNCIDX_STATUS     JOIN_INDEX     IOT_REDUNDANT_PKEY_ELIM     DROPPED
    OGRDSTEST     ITEM_DSCR_COPY_PK_IDX     NORMAL     OGRDSTEST     ITEM_DSCR_COPY_T     TABLE     UNIQUE     DISABLED          TS_OGRDSTEST     2     255     65536          1     2147483645                              10     YES     3     574360     248371394     1     1     4075325     VALID     248371394     471350     9/22/2010 11:23:33 PM     1     1     NO     N     N     N     DEFAULT     NO                              YES                    NO     NO     NO
    OGRDSTEST     ITEM_DSCR_COPY_AK1_IDX     NORMAL     OGRDSTEST     ITEM_DSCR_COPY_T     TABLE     UNIQUE     DISABLED          TS_OGRDSTEST     2     255     65536          1     2147483645                              10     YES     3     899469     253494137     1     1     229355809     VALID     253494137     313109     9/22/2010 11:23:52 PM     1     1     NO     N     N     N     DEFAULT     NO                              YES                    NO     NO     NO
    OGRDSTEST     ITEM_DSCR_COPY_IE2_IDX     NORMAL     OGRDSTEST     ITEM_DSCR_COPY_T     TABLE     NONUNIQUE     DISABLED          TS_OGRDSTEST     2     255     65536          1     2147483645                              10     YES     3     765890     132524340     1     1     247182885     VALID     275152467     433984     9/22/2010 11:24:23 PM     1     1     NO     N     N     N     DEFAULT     NO                              YES                    NO     NO     NO
    OGRDSTEST     ITEM_DSCR_COPY_IE3_IDX     NORMAL     OGRDSTEST     ITEM_DSCR_COPY_T     TABLE     NONUNIQUE     DISABLED          TS_OGRDSTEST     2     255     65536          1     2147483645                              10     YES     3     1571028     48695047     1     3     175338510     VALID     268330841     201031     9/22/2010 11:25:12 PM     1     1     NO     N     N     N     DEFAULT     NO                              YES                    NO     NO     NO
    OGRDSTEST     ITEM_DSCR_COPY_IE4_IDX     NORMAL     OGRDSTEST     ITEM_DSCR_COPY_T     TABLE     NONUNIQUE     DISABLED          TS_OGRDSTEST     2     255     65536          1     2147483645                              10     YES     3     656319     16631783     1     2     44415572     VALID     277273348     514143     9/22/2010 11:25:46 PM     1     1     NO     N     N     N     DEFAULT     NO                              YES                    NO     NO     NO
    OGRDSTEST     CTXT_ITEM_DSCR_CP_TXT_IDX     DOMAIN     OGRDSTEST     ITEM_DSCR_COPY_T     TABLE     NONUNIQUE     DISABLED               0     0                                                  0     YES                                   VALID               9/22/2010 11:25:47 PM     1     1     NO     N     N     N          NO               CTXSYS     CONTEXT     STOPLIST CTXSYS.EMPTY_STOPLIST     NO     VALID     VALID          NO     NO     NO

  • Bulk Update Validation

    Is it possible to keep the latest changes to fields user makes on bulk updatable forms when submit fails because of one field validation. For example, if I'm checking one of the field 'x' to be correct email address, also user might have changed some other fields, so if the validation fails on field x while submitting, then it will erase the latest changes in other fields also. Is there way we can avoid this?.
    Thanks,
    Surya

    Thanks for quick reply Scott. Right, it's multi-row updateable reports and trying to preserve the values. I'm not uisng the wizard to generate the updateable report, because the of conditional columns. There was known issue with bulk updates, if the updateable columns are conditional. Here is the description of the page.
    1. Region
    1. Page with a region sql query(updatetable report) contains about 40 columns and columns are conditionally dispalyed. These condinal columns condtions are set in "report atrributes". I've created this region with my own select statement. The region display and conditions works fine.
    2. Process
    I've written a corresponding process to update the table, this works fine.
    3. Validation
    Type : function returning boolean
    when submit button is pressed
    validation :
    DECLARE
    v_error_flag BOOLEAN := TRUE;
    BEGIN
    FOR i IN 1 .. wwv_flow.g_f01.COUNT LOOP
    IF i BETWEEN wwv_flow.g_flow_current_min_row AND
    wwv_flow.g_flow_current_min_row + wwv_flow.g_flow_current_max_rows THEN
    IF (wwv_flow.g_f02(i) IS NULL) THEN
    v_error_flag := FALSE;
    END IF;
    END IF;
    END LOOP;
    RETURN v_error_flag;
    END;
    basically the above condition checking for wwv_flow.g_f02(i) is null or not and returning true or false. The error message will be displayed inline with field and notification. The validation works fine, but does not retain values of the validation field and other fields also, this is the main problem.
    4. branch
    onsubmit: After processing(after computation,validation and branching)
    branch to page or url and using the page number.
    Please let me know if you need any further information. I've an example page in my application, incase if you want to take a closer look at it. Any quick help is really appreciated.
    thanks,
    Surya

  • Oracle 9i Problem when using multicolumn bulk update with "save exceptions"

    I'm running into a problem with Oracle 9i when running a multicolumn update with "save exceptions". The problem occurs when updating 4 or more fileds. (The data being updated are 40 character text strings)
    I'm updating 1000 records at a time, in bulk.
    The problem goes away when I don't use "save exception" (i.e. catch the exception the normal "pre-Oracle 9i" way) or when I use "save exception" with 3 or fewer fields.
    (I don't get any exceptions when running without the "save exception")
    Thanks

    The problem is an ORA-14403 error detected during bulk updates only when "save exception" is used with more than 3 fields being updated.
    Remove the "save exception" I can update any number of fields.
    or
    Reduce the number of fields being updated to 3 or less and use save exceptions and the 14403 error goes away.
    (I'd like to use "save exception" without having to break the "update" into two separate 3 field updates.)
    Thanks,
    Len

  • Bulk update of CLI Credentials in Prime 2.1

    I have a number of devices in Prime 2.1 which use a managment TACACS account plus SNMP to talk with Prime. The managment TACACS account password has now been changed and thus Prime is not able to use this account to manage the devices. This there a way to update all of my devices in Prime with the new password at once?
    Many thanks MIke 

    Hi Mike ,
    Bulk update is unfortulately not possible  ,there is an enhancement BUG for the same::
    CSCuh80466    Bulk telnet/ssh credential update for wired devices not there in PI 2.0
    You can try to do this via Template .
    Design >Feature design >cli template > system template
    select TACACS server template , edit it as per your need and click " save as new Template" and then you will find that save template under "My template" . try deploying it
    Thanks-
    Afroz
    **Ratings Encourages Contributors ***

Maybe you are looking for

  • Blackberry Development using WebDynpro for Java

    Hello We are trying to run a webdynpro application on Blackberry Storm.The application contains Standard UI Elements like table,group.The application runs but the table is not gettiing displayed. Could anyone help us with this.

  • BUS1001006 VIEWCREATED

    Hello everyone, I've made a SUB of BUS1001006, and added a new method which are calling a FM. This FM reads materialmaster and adds salesviews for all sales orgs. I use the BAPI_MATERIAL_SAVEDATA to save the views. I'm using the event fro BUS1001006

  • Restoring a picture from wallpaper

    I took a picture from my 6680 phone and saved it as wallpaper. I accidently deleted the image from memory card but it still shows as the wallpaper image. How would I restore this image in my memory card?

  • ALV TAB CODE

    Hi i have created one tab in alv tool bar and i have to write code for that please tell me where i have to write code as i am using function module programing and i have to write code for exporting that alv report into excel format please help me for

  • Disappearing mail with homefolders

    Hello, We have some home folders, which we used with OD. Everything seems to be working fine, accept the mail. We pop the mail at our provider. The strange thing is that several times a day the mail is disappearing and we get the message "message 'me