Support > Database

Oracle Problem on adding new module

<< < (5/5)

muharihar:
it's happen because last value of sequence (from dependent table) is not updated to the last id from table (primary key)

try this query/script to fix it:

DECLARE
   --seq_web2_menu (sequence name)
   --web2_menu (table name)
   --Replace web2_ with your Elxis Table Prefix
   max_seq   NUMBER (12);
   id_web2   NUMBER (12);
BEGIN
-- SEQ_web2_menu = web2_menu
-- a.ID = primary key

   SELECT NVL (MAX (a.ID), 1)
     INTO id_web2
     FROM web2_menu a;

   SELECT seq_web2_menu.NEXTVAL
     INTO max_seq
     FROM DUAL;

   DBMS_OUTPUT.put_line ('Tabel web2_menu, id = ' || id_web2 || ', seq = ' || max_seq);

   IF id_web2 > max_seq
   THEN
      DBMS_OUTPUT.put_line ('Looping...');

      WHILE max_seq < id_web2
      LOOP
         DBMS_OUTPUT.put_line (' - increment id = ' || id_web2 || ', seq = ' || max_seq);

         IF max_seq > id_web2
         THEN
            EXIT;
         END IF;

         SELECT seq_web2_menu.NEXTVAL
           INTO max_seq
           FROM DUAL;
      END LOOP;
   END IF;
END;



replace "web2_" with your elxis prefix table....

you can do this solution for any sequence problem (by replace related sequence and related table)...

happy try...... ;D

thanks.....

Navigation

[0] Message Index

[*] Previous page

Go to full version