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

Mengapa tidak dapat membuat tabel partisi?

"Partisi tabel deklaratif", yaitu partisi sebagai fitur kelas satu dari DBMS dengan sintaksnya sendiri, adalah ditambahkan di PostgreSQL 10 .

Di versi sebelumnya, Anda dapat mencapai efek yang sama dengan sedikit usaha menggunakan "warisan tabel". Ada halaman di manual yang menjelaskan cara melakukannya secara manual , diringkas sebagai:

  1. Buat tabel "master", dari mana semua partisi akan mewarisi.
  2. Buat beberapa tabel "anak" yang masing-masing diwarisi dari tabel master.
  3. Tambahkan batasan tabel ke tabel partisi untuk menentukan nilai kunci yang diizinkan di setiap partisi.
  4. Untuk setiap partisi, buat indeks pada kolom kunci, serta indeks lain yang mungkin Anda inginkan.
  5. Secara opsional, tentukan pemicu atau aturan untuk mengalihkan data yang dimasukkan ke tabel master ke partisi yang sesuai.
  6. Pastikan bahwa parameter konfigurasi constraint_exclusion tidak dinonaktifkan di postgresql.conf. Jika ya, kueri tidak akan dioptimalkan seperti yang diinginkan.

Untuk mempermudah ini, jika Anda tidak dapat meningkatkan ke versi 10, Anda dapat menggunakan ekstensi seperti pg_partman yang memberi Anda fungsi tambahan untuk menyiapkan dan mengelola kumpulan partisi.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kueri PostgreSQL untuk daftar nilai yang diizinkan dalam batasan?

  2. Bagaimana aplikasi Ruby on Rails saya dapat mengakses database tanpa kata sandi?

  3. Ubah Pengumpulan Basis Data, Ctype di Postgresql

  4. Gabung kiri dengan nama tabel dinamis yang berasal dari kolom

  5. Pernyataan BREAK di PL/pgSQL