How can we manage the gap in a primary key column created
by a sequence?
Ex:a company has empno as primary key generated by a
sequence and some employees leaves in between.What is the
best way to manage this gap?

Answer Posted / harikanthkoneti

yes...yes........ you can do it simply by updating that
table using rownum yar. see my example below.
SQL> create table test(sno number(2),sname varchar2(20));

Table created.

now if you have the data in the table like follows.

SQL> select * from test;

SNO SNAME
---------- --------------------
1 sdf
3 sdf
6 ewr
7 rt
90 drt

now just do the following simple statement.


SQL> update test set sno=rownum;

5 rows updated.


now here is the o/p for eliminating the gap generated by the
sequence.

SQL> select * from test;

SNO SNAME
---------- --------------------
1 sdf
2 sdf
3 ewr
4 rt
5 drt
then do the commit. thats all....................
now enjoy with this coding


suppose if you want to allocate the with any kind of series
of values for updating the table just follow the below
procedure

SQL> update test set sno=sql.nextval;

NOTE:sql is the sequence.

this statement will updates ur table with
what ever you given with the start with value and it ll
increment by which value you had given in the increment by
clause.

Is This Answer Correct ?    1 Yes 3 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

How do I learn what codesets are available in oracle?

575


How do I start tns listener?

542


how may join possible between (requisition with purchase order)

1699


How do I spool to a csv formatted file using sqlplus?

548


How to set up autotrace for a user account?

596






How to revoke create session privilege from a user in oracle?

559


Explain the use of log option in exp command.

533


Explain the use of file option in exp command.

601


How can I create database in oracle?

570


How to define an anonymous block?

618


What is an oracle and why it is used?

623


You have 4 instances running on the same UNIX box. How can you determine which shared memory and semaphores are associated with which instance?

1447


Explain temporal data types in oracle

608


How to use "for" statements in oracle?

593


How to use subqueries with the in operator using oracle?

612