sql >> Databáze >  >> RDS >> PostgreSQL

Po odstranění většiny velké tabulky restartujte čísla primárních klíčů existujících řádků

Nejprve zrušte primární klíč a vytvořte dočasnou sekvenci.

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

Pro aktualizaci použijte sekvenci:

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

Znovu vytvořte primární klíč a zrušte sekvenci

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

Pokud na této tabulce existuje závislost na cizím klíči, budete se s tím muset nejprve vypořádat a aktualizace bude složitější procedura.



  1. Nejlepší řešení stránkování pomocí SQL Server 2005?

  2. PERIOD_DIFF() Příklady – MySQL

  3. nedefinovaná chyba indexu z php arrya

  4. MySQL Spatial CONTAINS ukazuje špatný výsledek