Tutorial MySQL – VIEW

mysql-logo

In questa lezione del tutorial MySQL incominceremo a parlare delle view. Vedremo cosa sono le view, cosa servono e quali sono i vantaggi e gli svantaggi del loro utilizzo.

Database MySQL – Cosa sono le VIEW

Una view (che significa vista) è un oggetto del database che rappresenta i dati di una o più tabelle. Si potrebbe definire come una tabella virtuale i cui dati provengono da una SELECT SQL. La cosa interessante è che la view può essere anche creata con i dati di più tabelle unite da una JOIN.

Poiché la view è simile ad una tabella, visto che contiene righe e colonne, potremo accedere e ricercare i dati all’interno di essa tramite dei semplici comandi SELECT.

La maggior parte dei database evoluti, tra cui MySQL, consentono di creare delle view che sono anche aggiornabili tramite il comando UPDATE; tuttavia una view per essere aggiornabile deve soddisfare alcuni requisiti, altrimenti rimane una view in sola lettura. Vedremo nelle prossime lezioni quali sono i requisiti che deve avere una view per essere aggiornabile.

Essendo la view una tabella virtuale, basata su altre tabelle, è possibile in MySQL creare una view basata su altre view.

Una view è un oggetto dinamico i cui contenuti cambiano col tempo. Il database memorizza al suo interno la view come una SELECT SQL. Quando cambiano i dati delle tabelle alle quali la view si riferisce, le modifiche si riflettono anche sulla view.

Database MySQL – vantaggi delle view

L’utilizzo di una view in un database comporta diversi vantaggi:

  • Una view consente di semplificare query complesse, Le informazioni inserite in una view possono provenire da diverse tabelle, semplificando agli utenti la ricerca delle informazioni. Una view può essere creata tramite una complessa JOIN tra più tabelle, ma nella ricerca è sufficiente una semplice SELECT.
  • L’uso delle view aiuta a limitare l’accesso ai dati per alcuni utenti. Se in una tabella abbiamo delle colonne con dei dati sensibili e altre con dei dati pubblici possiamo creare una view che contiene solamente i dati pubblici. Successivamente, tramite i permessi utente del database possiamo impedire ad alcuni utenti l’accesso alla tabella di origine, consentendo solamente l’accesso alla view.
  • Una view fornisce ad un database un ulteriore strato di sicurezza. E’ possibile creare delle view in sola lettura in modo che gli utenti che accedono possano solamente visualizzare le informazioni ma non abbiano i permessi per modificare i dati del database.
  • Una view può contenere dei dati calcolati. Le colonne della view possono contenere dati aggregati con GROUP BY, e dati calcolati tramite le funzioni di MySQL.

Database MySQL – svantaggi delle view

L’uso delle view può comportare anche alcuni svantaggi:

  • Prestazioni. L’accesso ai dati di una view può essere lento, soprattutto se la view è stata creata prendendo le informazioni da altre view.
  • Dipendenza dalle tabelle. I dati di una view provengono dalle tabelle del database, una modifica alla struttura di queste tabelle potrebbe comportare la necessità di modificare o ricreare la view.
  • Non è possibile creare indici all’interno di una view.

Tags:

About the Author

Post a Reply

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Top