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

Lampirkan LIST partisi ke tabel yang ada di postgres 11

Kutipan dari manual

Jadi, Anda tidak dapat mengubah tabel yang tidak dipartisi menjadi tabel yang dipartisi.

Anda perlu membuat tabel baru (dengan nama berbeda) yang dipartisi, membuat semua partisi yang diperlukan, lalu menyalin data dari tabel lama ke tabel baru yang dipartisi.

Sesuatu seperti:

create table clients_partitioned
(
  .... all columns ...
)
PARTITION BY LIST  (client_id);

Kemudian buat partisinya:

create table clients_1 
   partition of clients_partioned
   values in (1,2,3);

create table clients_1 
   partition of clients_partioned
   values in (4,5,6);

Kemudian salin datanya:

insert into clients_partitioned
select *
from clients;

Setelah selesai, Anda dapat menghapus tabel lama dan mengganti nama tabel baru:

drop table clients;
alter table clients_partitioned rename to clients;

Jangan lupa untuk membuat kembali kunci dan indeks asing Anda.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cari tahu jumlah bulan antara 2 tanggal

  2. KESALAHAN:hapus di atas meja melanggar batasan kunci asing. ID kunci masih direferensikan dari tabel (banyak)

  3. Pesan dengan hubungan has_many

  4. Manakah opsi akses data terbaik yang tersedia untuk kerangka Play dengan Scala dan PostgreSQL?

  5. GALAT:subquery di FROM tidak dapat merujuk ke relasi lain dengan level kueri yang sama