PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Mulai ulang nomor kunci utama dari baris yang ada setelah menghapus sebagian besar tabel besar

Lepaskan kunci utama terlebih dahulu dan buat urutan sementara.

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

Gunakan urutan untuk memperbarui:

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

Buat ulang kunci utama dan lepaskan urutannya

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

Jika ada ketergantungan kunci asing pada tabel ini, maka Anda harus mengatasinya terlebih dahulu dan pembaruan akan menjadi prosedur yang lebih rumit.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. pg_dump dan pg_restore Postgresql di berbagai versi utama?

  2. urlencode hanya dengan fungsi bawaan

  3. Bagaimana cara mengkonfigurasi Caching PreparedStatement dengan Postgres dan Tomcat7 JDBC Pool?

  4. Migrasi Jalur Terbang dengan java

  5. Batasi bergabung menjadi satu baris