Ketika saya memasukkan elemen (fitur) baru di lapisan Postgres lain, saya bisa melakukannya dengan dua cara:
- Menggambar elemen baru (dengan 'Tambahkan fitur') yang jarang saya lakukan atau
- Menyalin (atau memotong) beberapa elemen dari layer Postgre lain (Source layer), dan menempelkannya ke layer target yang sering saya lakukan
Pada contoh pertama, penghematan hasil edit berjalan normal karena layer ini mendapatkan gid dari urutan basis data postgre * nextval ('layer_name_gid_seq' :: regclass) *
Dalam contoh kedua, saya mendapat kesalahan saat menyimpan suntingan, karena saat menyalin elemen dari lapisan sumber ke lapisan target qgis menyalin gid elemen dari lapisan sumber. Saat mencoba menyimpan hasil edit, kesalahan ini dikembalikan:
Tidak dapat melakukan perubahan pada layer „Cjevovodi“
Kesalahan: ERROR: 1 fitur tidak ditambahkan.
Kesalahan penyedia:
Kesalahan PostGIS saat menambahkan fitur: ERROR: nilai kunci duplikat melanggar batasan unik "cjevovodi_okill_pkey"
DETAIL: Kunci (gid) = (5) sudah ada.
Saya mencoba untuk menyalin * nextval ('layer_name_gid_seq' :: regclass) * di bidang gid, tetapi urutan ini tidak dapat disisipkan di bidang gid karena bidang didefinisikan sebagai numerik.
Adakah yang tahu cara sederhana untuk menyalin elemen dari layer sumber (dengan gid yang ada) menetapkan gid baru?
Terima kasih!