[Gfoss] AddGeometryColumn

a.furieri a lqt.it a.furieri a lqt.it
Ven 18 Nov 2011 15:39:29 CET


On Fri, 18 Nov 2011 14:39:38 +0100, Massimo Paone wrote
> Questo significa che io dovrei creare necessariamente le varie view 
> a partire dalle TABELLE iniziali e NON DALLA VIEW che le joina?
> 

Ciao Massimo,

pensa alle VIEW come ad una specie di "guscio virtuale"
che ti consente di leggere in tuoi dati in modo
semplicificato e meglio organizzato.

appunto: "ti consentono di leggere", cioè di fare
delle SELECT.

ma le VIEW (almeno per SQLite, come per moltissimi
DBMS) sono rigorosamente read-only: i comandi
INSERT, UPDATE e DELETE sono tassativamente proibiti
per una VIEW: devi necessariamente accedere alla
TABLE sottostante per modificare i dati.

e naturalmente non puoi creare una nuova colonna
"attaccandola" ad una VIEW: la dovrai piuttosto
definire in una delle TABLE sottostanti.

insomma, fino a che si parla di SELECT una TABLE
ed una VIEW sono praticamente indistinguibili.
N.B.: puoi anche creare una VIEW che mette in
JOIN altre 2 o 3 VIEWs, non c'è nulla di anomalo.

ma qualsiasi altra operazione che implichi modificare
i dati (oppure modificare la struttura dei dati)
è tassativamente proibita per una VIEW.

-------------

piccolo excursus storico che ti aiuterà a capire
meglio: i DBMS esistono da quasi 40 anni, cioè
ben da prima che approdassero dalle parti del GIS.

allora, prova a pensare ad un sistema contabile
ed amministrativo, con tanto di informazioni
anagrafiche, finanziarie, di carriera, promozioni,
procedimenti disciplinari, listini prezzi, sconti
riservati a clienti particolari etc
ovviamente sono tutte informazioni riservate,
per un motivo o per un altro.

ecco quindi che i "dati grezzi" staranno nelle
TABLEs vere e proprie: e magari pochissimi
addetti della direzione centrale saranno abilitati 
a modificare ed inserire i dati.

viceversa, un oceano di VIEWs consentirà
a tutti gli altri uffici (e pure al pubblico
esterno, magari via web) di consultare "quasi" 
tutto: escluso ovviamente i dati sensibili, 
che saranno  accuratamente nascosti ed assolutamente
inaccessibili ed invisibili.

ovviamente gli Spatial DMBS sono semplicemente
DBMS "normali", a cui viene attaccata qualche
estensione un po' buffa: ma la logica operativa 
resta pur sempre la stessa di cui sopra.

ciao Sandro


Maggiori informazioni sulla lista Gfoss