Quando inserisco nuovi elementi (caratteristiche) in un altro livello di Postgres, posso farlo in due modi:
- Disegnare nuovi elementi (con 'Aggiungi funzione') che faccio raramente o
- Copiare (o tagliare) alcuni elementi da un altro livello Postgre (livello Sorgente) e incollarlo nel livello target che faccio di frequente
Nel primo esempio, il salvataggio delle modifiche funziona normalmente perché questo layer ottiene gid dalla sequenza del database postgre * nextval ('layer_name_gid_seq' :: regclass) *
Nel secondo esempio, ho riscontrato un errore durante il salvataggio delle modifiche, perché durante la copia di un elemento dal livello di origine al livello di destinazione qgis è stato copiato gid dell'elemento dal livello di origine. Quando si tenta di salvare le modifiche, viene restituito questo errore:
Impossibile eseguire il commit delle modifiche al livello „Cjevovodi“
Errori: ERRORE: 1 funzione / i non aggiunta.
Errori del provider:
errore PostGIS durante l'aggiunta di funzioni: ERRORE: il valore della chiave duplicata viola il vincolo univoco "cjevovodi_okill_pkey"
DETTAGLIO: La chiave (gid) = (5) esiste già.
Ho provato a copiare * nextval ('layer_name_gid_seq' :: regclass) * in field gid, ma questa sequenza non può essere incollata in field gid poiché il campo è definito come numerico.
Qualcuno conosce un modo semplice per copiare elementi dal livello sorgente (con gid esistente) assegnare un nuovo gid?
Grazie!