Salve,
ho un shape puntuale con relativa tabella degli attributi e un’altra tabella (tabella .dbf) che ho collegato alla prima attraverso un join con un campo comune.
se provo a modificare la tabella degli attributi dello shape tutto funziona ma non mi fa modificare i valori dei campi della tabella collegata, come mai? è possibile farlo?
aggiungo che entrambe le tabelle sono caricate in un database di PostgreSQL.
No. Non puoi modificare i dati delle tabelle in join. Per farlo devi crearti una vista in pg e definire una regola nella vista. Cerca sulla documentazione di pg: rules e on update do instead…
Salve,
ho un shape puntuale con relativa tabella degli attributi e un’altra tabella (tabella .dbf) che ho collegato alla prima attraverso un join con un campo comune.
se provo a modificare la tabella degli attributi dello shape tutto funziona ma non mi fa modificare i valori dei campi della tabella collegata, come mai? è possibile farlo?
aggiungo che entrambe le tabelle sono caricate in un database di PostgreSQL.
grazie,
ho creato la vista e la regola e funziona,
Unica cosa che non mi è ancora chiaro è che nel creare la regola
CREATE OR REPLACE RULE aggiorna_dativ18 AS
ON UPDATE TO v_elementi_pi DO INSTEAD UPDATE dativ18 SET n_utente = new.n_utente
WHERE dativ18.id = new.id;
imposto il nome del campo che voglio aggiornare (n_utente) ma in realtà è possibile aggiornare tutti i campi della tabella di origine, cosa sbaglio?
···
Il giorno 27 febbraio 2015 19:03, Luca Lanteri <lklanteri@gmail.com> ha scritto:
No. Non puoi modificare i dati delle tabelle in join. Per farlo devi crearti una vista in pg e definire una regola nella vista. Cerca sulla documentazione di pg: rules e on update do instead…
Salve,
ho un shape puntuale con relativa tabella degli attributi e un’altra tabella (tabella .dbf) che ho collegato alla prima attraverso un join con un campo comune.
se provo a modificare la tabella degli attributi dello shape tutto funziona ma non mi fa modificare i valori dei campi della tabella collegata, come mai? è possibile farlo?
aggiungo che entrambe le tabelle sono caricate in un database di PostgreSQL.
Direi niente. basta aggiungere tutti i campi che vuoi modificare, nello stesso modo che hai già fatto, separati da virgola se ricordo bene.
Luca
grazie,
ho creato la vista e la regola e funziona,
Unica cosa che non mi è ancora chiaro è che nel creare la regola
CREATE OR REPLACE RULE aggiorna_dativ18 AS
ON UPDATE TO v_elementi_pi DO INSTEAD UPDATE dativ18 SET n_utente = new.n_utente
WHERE dativ18.id = new.id;
imposto il nome del campo che voglio aggiornare (n_utente) ma in realtà è possibile aggiornare tutti i campi della tabella di origine, cosa sbaglio?
···
Il giorno 27 febbraio 2015 19:03, Luca Lanteri <lklanteri@gmail.com> ha scritto:
No. Non puoi modificare i dati delle tabelle in join. Per farlo devi crearti una vista in pg e definire una regola nella vista. Cerca sulla documentazione di pg: rules e on update do instead…
Salve,
ho un shape puntuale con relativa tabella degli attributi e un’altra tabella (tabella .dbf) che ho collegato alla prima attraverso un join con un campo comune.
se provo a modificare la tabella degli attributi dello shape tutto funziona ma non mi fa modificare i valori dei campi della tabella collegata, come mai? è possibile farlo?
aggiungo che entrambe le tabelle sono caricate in un database di PostgreSQL.
Il giorno 27 febbraio 2015 19:03, Luca Lanteri <lklanteri@gmail.com> ha scritto:
No. Non puoi modificare i dati delle tabelle in join. Per farlo devi crearti una vista in pg e definire una regola nella vista. Cerca sulla documentazione di pg: rules e on update do instead…
Salve,
ho un shape puntuale con relativa tabella degli attributi e un’altra tabella (tabella .dbf) che ho collegato alla prima attraverso un join con un campo comune.
se provo a modificare la tabella degli attributi dello shape tutto funziona ma non mi fa modificare i valori dei campi della tabella collegata, come mai? è possibile farlo?
aggiungo che entrambe le tabelle sono caricate in un database di PostgreSQL.
Scusa. Ti sei spiegato bene,sono io che ho letto di fretta.
Mi pare strano che ti faccia aggiornare gli altri campi. Sei sicuro che le modifiche vengano poi veramente salvate in tabella?
Hai provato a chiudere e riaprire la tabella da qgis? Magari c’è un problema di refresh.
Luca
···
Il giorno 28 febbraio 2015 11:38, Luca Lanteri <lklanteri@gmail.com> ha scritto:
Direi niente. basta aggiungere tutti i campi che vuoi modificare, nello stesso modo che hai già fatto, separati da virgola se ricordo bene.
Luca
grazie,
ho creato la vista e la regola e funziona,
Unica cosa che non mi è ancora chiaro è che nel creare la regola
CREATE OR REPLACE RULE aggiorna_dativ18 AS
ON UPDATE TO v_elementi_pi DO INSTEAD UPDATE dativ18 SET n_utente = new.n_utente
WHERE dativ18.id = new.id;
imposto il nome del campo che voglio aggiornare (n_utente) ma in realtà è possibile aggiornare tutti i campi della tabella di origine, cosa sbaglio?
Il giorno 27 febbraio 2015 19:03, Luca Lanteri <lklanteri@gmail.com> ha scritto:
No. Non puoi modificare i dati delle tabelle in join. Per farlo devi crearti una vista in pg e definire una regola nella vista. Cerca sulla documentazione di pg: rules e on update do instead…
Salve,
ho un shape puntuale con relativa tabella degli attributi e un’altra tabella (tabella .dbf) che ho collegato alla prima attraverso un join con un campo comune.
se provo a modificare la tabella degli attributi dello shape tutto funziona ma non mi fa modificare i valori dei campi della tabella collegata, come mai? è possibile farlo?
aggiungo che entrambe le tabelle sono caricate in un database di PostgreSQL.
Hai perfettamente ragione, è un problema di refresh
ho chiuso e riaperto la tabella ed ha aggiornato solo il campo definito nella regola.
grazie!!!
···
Il giorno 28 febbraio 2015 12:52, Luca Lanteri <lklanteri@gmail.com> ha scritto:
Scusa. Ti sei spiegato bene,sono io che ho letto di fretta.
Mi pare strano che ti faccia aggiornare gli altri campi. Sei sicuro che le modifiche vengano poi veramente salvate in tabella?
Hai provato a chiudere e riaprire la tabella da qgis? Magari c’è un problema di refresh.
Il giorno 27 febbraio 2015 19:03, Luca Lanteri <lklanteri@gmail.com> ha scritto:
No. Non puoi modificare i dati delle tabelle in join. Per farlo devi crearti una vista in pg e definire una regola nella vista. Cerca sulla documentazione di pg: rules e on update do instead…
Salve,
ho un shape puntuale con relativa tabella degli attributi e un’altra tabella (tabella .dbf) che ho collegato alla prima attraverso un join con un campo comune.
se provo a modificare la tabella degli attributi dello shape tutto funziona ma non mi fa modificare i valori dei campi della tabella collegata, come mai? è possibile farlo?
aggiungo che entrambe le tabelle sono caricate in un database di PostgreSQL.