"But this adds the column at the end." - column order in the table
definition is unreliable; when you output you should specify the column
order yourself.

 

As to populating within a sequence that has missing values that is more
trouble than it is worth.

 

If you want to add a column and make it the primary key you need to indicate
such in your ALTER TABLE statement by adding "PRIMARY KEY" to the end of it:
"ALTER TABLE t ADD COLUMN c serial PRIMARY KEY"

 

If you really feel you need to do as you explain I would advise giving more
context as to what and why you are doing that so alternative solutions can
be presented.

 

David J

 

From: pgsql-general-ow...@postgresql.org
[mailto:pgsql-general-ow...@postgresql.org] On Behalf Of Adarsh Sharma
Sent: Friday, February 11, 2011 6:14 AM
To: pgsql-general@postgresql.org
Subject: [GENERAL] Auto-Increment in Postgres

 

Dear all, 


I have an Integer column in Postgres database table. Let's say the column
has below values : 


1 
2 
3 
4 
5 
6 
7 
8 
9 
10 


Now if i deleted some rows where id= 3 ,5 and 8  or it have these type of
data then

The data look like as : 

1 
2 
4 
6 
7 
9 
10 

I want to have it id's as 
1 
2 
3 
4 
5 
6 
7 
and next data is inserted right at 8 .

I follow these steps

alter table meta_test drop column metadataid;

alter table meta_test add metadataid serial;

But this adds the column at the end but i want to it as primary key.

Please help how to achieve it. 


Thanks & best Regards 
Adarsh Sharma 

Reply via email to