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

Kunci utama dengan pemesanan ASC atau DESC?

Saya pikir masuk akal untuk melakukan itu, karena secara semantik indeks dalam urutan menaik atau menurun adalah sama, tetapi PostgreSQL tidak mendukungnya. Tidak ada cara untuk mengontrol urutan indeks dari indeks yang dibuat secara otomatis untuk mendukung kunci utama.

PostgreSQL tidak akan mengizinkan Anda membuatnya dengan membuat indeks secara manual sebagai UNIQUE indeks dengan DESC mengurutkan urutan kemudian membuat PRIMARY KEY yang dideklarasikan kendala dengan menggunakan ALTER TABLE ... ADD CONSTRAINT ... PRIMARY KEY USING INDEX ... . Ini akan gagal dengan:

ERROR:  index "foopk" does not have default sorting behavior

Saya tidak tahu dari atas kepala saya mengapa Pg membutuhkan ini. Mencari kode sumber untuk kesalahan di atas mungkin akan menemukan Anda komentar yang sesuai.

Anda bisa mendapatkan PRIMARY KEY -seperti perilaku tanpa metadata kendala hanya dengan membuat indeks unik secara terpisah. Itu mungkin baik untuk 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. SQL Tidak Kosong bukannya Tidak NULL

  2. JOOQ tidak menghasilkan prosedur kelebihan beban bernilai tabel dari PostgreSql

  3. Akses PostgreSQL melalui C++-Interface (Kesalahan Linker)

  4. Menemukan poligon tetangga - kueri postgis

  5. tidak ada kumpulan koneksi dengan yang utama ditemukan