Indietro

ⓘ Colonna virtuale




Colonna virtuale
                                     

ⓘ Colonna virtuale

Nei database le Colonne Virtuali sono campi di una tabella il cui valore viene calcolato in base al valore di altre colonne, o di altre espressioni deterministiche. Non fanno parte degli standard SQL e sono implementate solo da alcuni DBMS, come MariaDB, SQL Server e Oracle.

Le Colonne Virtuali naturalmente non sono compatibili con la normalizzazione dei database, perché creano una ridondanza.

                                     

1. Implementazione

Le Colonne Virtuali, nelle varie implementazioni, possono essere di due tipi:

  • Persistent
  • Virtual

I valori delle colonne Virtual vengono calcolati "al volo" quando è necessario, per esempio quando devono essere restituiti da una query di tipo SELECT. I valori nelle colonne Persistent invece vengono calcolati al momento in cui la riga viene scritta su disco, e scritti insieme a tutti gli altri valori. A seconda dei casi si può preferire un tipo o laltro: le Virtual non occupano spazio su disco ma richiedono lelaborazione di unespressione ad ogni query che le coinvolge; le Persistent invece non richiedono alcun lavoro aggiunto da parte della CPU, ma occupano spazio su disco. Ad ogni modo non è sempre possibile scegliere, perché alcuni DBMS supportano solo un tipo di colonne.

                                     

1.1. Implementazione Sintassi

Per creare una Colonna Virtuale, si utilizza questa sintassi allinterno di un comando CREATE TABLE o ALTER TABLE:

  • espressione è lespressione SQL usata per calcolare i valori.
  • tipo è il tipo di dato della Colonna Virtuale.
  • testo è il commento da associare alla colonna opzionale.
                                     

1.2. Implementazione Le Colonne Virtuali in Oracle

Le Colonne Virtuali sono state aggiunte in Oracle a partire dalla versione 11g, release 1.

Lunico tipo di Colonne Virtuali supportate da Oracle sono le Virtual, pertanto non esiste la possibilità di scrivere tali valori su disco. Per ovviare a questa mancanza, è possibile utilizzare le viste materializzate.

                                     

1.3. Implementazione Sintassi

Per creare una Colonna Virtuale, si utilizza la seguente sintassi allinterno di un comando CREATE TABLE o ALTER TABLE:

                                     

1.4. Implementazione SQL Server

SQL Server supporta le Colonne Virtuali, ma le chiama Computed Column colonne calcolate.

Lunico tipo supportato in SQL Server è Persisted, che equivale di fatto a Persistent.

                                     

1.5. Implementazione Strumenti di business intelligence

Negli strumenti di business intelligence come Tableau, Microsoft Power BI o il tabular model di Microsoft Analysis Service le colonne virtuali chiamate colonne calcolate sono essenziali per produrre dati e grafici significativi.

                                     

2. Alternative alle Colonne Virtuali

Nei DBMS che non supportano le Colonne Virtuali, è possibile ottenere funzionalità equivalenti o simili utilizzando:

  • le viste, per sostituire le colonne di tipo Virtual;
  • le viste materializzate, oppure trigger che riempiono una tabella apposita, per sostituire le colonne Persistent.

Entrambe le soluzioni sono più complesse e meno semplici da mantenere, pertanto si tende a preferire le Colonne Virtuali se sono supportate.

                                     

2.1. Alternative alle Colonne Virtuali Viste

Le viste possono contenere colonne lette direttamente dalle colonne di una tabella e altre colonne calcolate in base a unespressione SQL. Le viste possono quindi sostituire le colonne di tipo Virtual. Alcuni DBMS supportano le viste materializzate, che possono sostituire le colonne di tipo Persistent, al costo però di duplicare tutti i dati di una tabella, e quindi anche lo spazio occupato sul disco. Inoltre, non esiste una soluzione per simulare sia colonne Persistent sia Virtual allinterno di ununica vista.

                                     

2.2. Alternative alle Colonne Virtuali Trigger

I Trigger possono scrivere dati in una tabella subito dopo unistruzione UPDATE o INSERT; in questo modo, si possono emulare le colonne di tipo Persistent. Questa soluzione è generalmente più lenta, e richiede che vengano mantenuti due trigger indipendentemente dal numero di colonne che si desidera riempire.

                                     

2.3. Alternative alle Colonne Virtuali Indici funzionali

Gli indici funzionali sono una caratteristica di PostgreSQL. Questi sono molto simili alle colonne virtuali e spesso ne sopperiscono la mancanza. Si tratta di indici che non contengono il valore di una tabella come gli indici normali, ma il valore di unespressione SQL.

                                     
  • grafica e di scansione 3D permette, in uno scenario di realtà virtuale l anastilosi virtuale la ricostruzione non riguarda solo costruzioni o parti strutturali
  • la colonna sonora del film d animazione Ghost in the Shell, composta da Kenji Kawai. M01 Making of Cyborg M02 Ghosthack EXM Puppetmaster M04 Virtual Crime
  • Rinascimento Virtuale Soundtrack venduti al Festival e dall editore dei CD Borgatti, per ēX Records con musiche che costituiranno la colonna sonora dell evento
  • con la malavita, altri si pentiranno ma sarà troppo tardi. Un videogioco virtuale e dall epilogo orribile, presagisce il destino infausto degli due ultimi
  • La colonna sonora del film, composta da Moroder, ha ricevuto l Oscar alla migliore colonna sonora nel 1979 e il Golden Globe per la migliore colonna sonora
  • Björk Digital è una mostra immersiva in realtà virtuale sulla cantautrice islandese Björk, con video musicali in VR tratti dal suo ottavo album in studio
  • anche da apparati non in grado di gestire la concatenazione virtuale La concatenazione virtuale si associa sempre più a protocolli di mappatura, come il
  • che un giocatore distrugge, l avversario riceverà una colonna di mostri. Spesso queste colonne sono facilmente eliminabili con una sola bomba, ed in genere
  • All interno c è il vano per contenere l esplosivo Miles, rivista militare virtuale IED Striuli, p. 54. Lorenzo Striuli, IED: la nuova minaccia? , in Rivista

Anche gli utenti hanno cercato:

colonscopia virtuale milano,

...
...
...