sql >> Databasteknik >  >> RDS >> PostgreSQL

Starta om primärnyckelnummer för befintliga rader efter att ha tagit bort större delen av en stor tabell

Släpp primärnyckeln först och skapa en tillfällig sekvens.

alter table mytable drop constraint mydata_pkey;
create temporary sequence temp_seq;

Använd sekvensen för att uppdatera:

update mytable
set id = nextval('temp_seq');

Återskapa primärnyckeln och släpp sekvensen

alter table mytable add primary key (id);
drop sequence temp_seq;

Om det finns ett beroende av främmande nyckel på den här tabellen måste du ta itu med det först och uppdateringen blir en mer komplex procedur.



  1. Migrerar data till Firebase från mysql

  2. Postgres lösenordsautentisering misslyckas

  3. Hur man tar bort de efterföljande utrymmena efter månadens namn i Oracle

  4. Behöver ordna anställdas namn enligt deras stad kolumnvis