Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza del computer >> Programmazione >> PHP /MySQL Programmazione >> .

Cos'è la vista in MySQL?

In Mysql, una vista è una tabella virtuale basata sul set di risultati di un'istruzione SQL. Non memorizza i dati direttamente. Invece, memorizza la * query * che definisce come recuperare i dati. Quando si esegue una domanda di vista, MySQL esegue la query sottostante e restituisce il risultato come se fosse un vero tavolo.

Pensalo come una query immagazzinata.

Ecco una rottura degli aspetti chiave:

Caratteristiche chiave e caratteristiche delle viste MySQL:

* Tabella virtuale: Una vista non è un tavolo fisico. Non occupa spazio di archiviazione per archiviare i dati. È semplicemente una definizione di query.

* Basato su una query: Viene creata una vista utilizzando un'istruzione `Crea View`, che include un'istruzione` Select`. Questa istruzione `Select` specifica il modo in cui la vista dovrebbe recuperare e presentare i dati.

* Derivazione dei dati: Le visualizzazioni derivano i loro dati da una o più tabelle di base sottostanti (o altre viste).

* Dati dinamici: I dati visualizzati attraverso una vista sono sempre aggiornati. Quando si esegue una domanda di vista, MySQL rieegge la query sottostante. Questo ti assicura di vedere gli ultimi dati delle tabelle di base.

* Viewing di query: Puoi interrogare una vista proprio come faresti una tabella normale usando le istruzioni `Select`.

* aggiornabile vs. non aggiornabile: Alcune visualizzazioni sono aggiornabili, il che significa che è possibile utilizzare le istruzioni `Insert`,` Update` e `Elimina` per modificare i dati sottostanti attraverso la vista. Tuttavia, molte viste non sono aggiornabili, in particolare quelle che coinvolgono aggregazioni, join o colonne calcolate.

* Privilegi: Puoi concedere e revocare i privilegi sulle visualizzazioni, in modo simile a come gestisci i privilegi sui tavoli.

Vantaggi dell'utilizzo delle visualizzazioni:

* Abstrazione dei dati: Le viste nascondono la complessità delle tabelle e delle domande sottostanti. È possibile creare viste che presentano solo le colonne pertinenti a utenti o applicazioni specifici.

* Sicurezza: Le viste possono limitare l'accesso a determinate colonne o righe di una tabella. È possibile concedere agli utenti l'accesso a una vista che mostra solo un sottoinsieme dei dati, senza dare loro accesso diretto alla tabella sottostante.

* Semplificazione di query complesse: Le viste ti consentono di abbattere query complesse in pezzi più piccoli e più gestibili. È possibile creare una vista per ogni passaggio del processo e quindi combinare queste viste per ottenere il risultato finale.

* Coerenza dei dati: Se è necessario utilizzare la stessa query in più punti, puoi definirla come una vista. Ciò garantisce che la query sia coerente in tutti gli usi. Se è necessario modificare la query, devi solo modificare la definizione della visualizzazione.

* Resusabilità del codice: Le opinioni incapsulano query, consentendo di riutilizzarle attraverso diverse applicazioni o report.

* Rinomonimento di colonne: Le visualizzazioni consentono di rinominare le colonne dalle tabelle sottostanti, fornendo nomi più descrittivi o intuitivi.

Esempio:

Supponiamo che tu abbia una tabella chiamata `Employers` con le seguenti colonne:

* `Employee_id`

* `First_name`

* `last_name`

* `Dipartimento '

* `stipendio '

Puoi creare una vista chiamata "Manager" che mostra solo i dipendenti che sono manager e il loro nome completo:

`` `sql

Crea view manager come

SELEZIONARE

Employee_id,

Concat (first_name, '', last_name) come full_name,

dipartimento,

stipendio

DA

dipendenti

DOVE

dipartimento ='management';

`` `

Ora puoi interrogare la vista "manager" in questo modo:

`` `sql

Seleziona * dai manager;

`` `

Ciò restituirà solo i dipendenti che lavorano nel dipartimento "Management", insieme al loro documento di identità, nome completo (calcolato dal nome e cognome), del dipartimento e dello stipendio. Non è necessario ripetere la funzione `Concat 'o la clausola` dove' ogni volta che si desidera vedere queste informazioni.

Creazione di una vista:

`` `sql

Crea View View_Name come

Seleziona colonna1, colonna2, ...

Da table_name

Dove condizione;

`` `

Far cadere una vista:

`` `sql

Drop View View_name;

`` `

Considerazioni importanti:

* Performance: Mentre le opinioni offrono molti vantaggi, a volte possono avere un impatto sulle prestazioni se la query sottostante è complessa. MySQL deve eseguire la query ogni volta che si accede alla vista. Prendi in considerazione l'utilizzo di visualizzazioni materializzate (se supportate dalla tua versione o configurazione MySQL) o ottimizzando attentamente la query se le prestazioni diventano un problema.

* Restrizioni di aggiornamento: Non tutte le viste sono aggiornabili. Visualizzazioni con join, aggregazioni (ad es., `Sum`,` avg`), `distinte`,` gruppo per alcune sottoquerie in genere non sono aggiornabili. MySQL ti darà spesso un errore se provi a modificare una vista non aggiornabile.

* Dipendenze: Le visualizzazioni dipendono dalle tabelle sottostanti. Se si lascia cadere o modificando una tabella utilizzata da una vista, la vista può non essere valida.

In sintesi, le opinioni sono un potente strumento in MySQL per semplificare le query, migliorare l'astrazione dei dati e migliorare la sicurezza. Forniscono un modo per creare tabelle virtuali che presentano i dati in modo personalizzato e riutilizzabile. Ricorda di considerare l'aggiornamento e le implicazioni delle prestazioni durante la progettazione e l'utilizzo delle visualizzazioni.

 

Programmazione © www.354353.com