PostgreSQL-VIEWS

Advertisements

Le visualizzazioni sono pseudo-tabelle. Cioè, non sono tabelle reali; tuttavia appaiono come tabelle ordinarie da SELEZIONARE. Una vista può rappresentare un sottoinsieme di una tabella reale, selezionando determinate colonne o determinate righe da una tabella ordinaria. Una vista può anche rappresentare tabelle unite., Poiché alle viste vengono assegnate autorizzazioni separate, è possibile utilizzarle per limitare l’accesso alla tabella in modo che gli utenti vedano solo righe o colonne specifiche di una tabella.

Una vista può contenere tutte le righe di una tabella o righe selezionate da una o più tabelle. Una vista può essere creata da una o più tabelle, che dipende dalla query PostgreSQL scritta per creare una vista.

Le viste, che sono una specie di tabelle virtuali, consentono agli utenti di eseguire le seguenti operazioni:

  • Strutturare i dati in un modo che gli utenti o le classi di utenti trovano naturale o intuitivo.,

  • Limitare l’accesso ai dati in modo tale che un utente può vedere solo i dati limitati invece di tabella completa.

  • Riassumere i dati da varie tabelle, che possono essere utilizzati per generare report.

Poiché le viste non sono tabelle ordinarie, potrebbe non essere possibile eseguire un’istruzione DELETE, INSERT o UPDATE su una vista. Tuttavia, è possibile creare una REGOLA per correggere questo problema di utilizzo di ELIMINA, INSERISCI o AGGIORNA in una vista.

Creazione di viste

Le viste PostgreSQL vengono create utilizzando l’istruzione CREATE VIEW., Le viste PostgreSQL possono essere create da una singola tabella, da più tabelle o da un’altra vista.

La sintassi di base di CREATE VIEW è la seguente:

CREATE VIEW view_name ASSELECT column1, column2.....FROM table_nameWHERE ;

È possibile includere più tabelle nell’istruzione SELECT in modo molto simile a quello che si usa nella normale query SELECT di PostgreSQL. Se è presente la parola chiave TEMPORANEA o TEMPORANEA facoltativa, la vista verrà creata nello spazio temporaneo. Le viste temporanee vengono automaticamente eliminate alla fine della sessione corrente.,

Esempio

Considera, la tabella AZIENDALE ha i seguenti record −

Ora, di seguito è riportato un esempio per creare una vista dalla tabella AZIENDALE. Questa vista verrebbe utilizzata per avere solo poche colonne dalla tabella AZIENDALE-

testdb=# CREATE VIEW COMPANY_VIEW ASSELECT ID, NAME, AGEFROM COMPANY;

Ora, è possibile interrogare COMPANY_VIEW in modo simile a quando si interroga una tabella effettiva. Di seguito è riportato l’esempio −

testdb=# SELECT * FROM COMPANY_VIEW;

Questo produrrebbe il seguente risultato −

 id | name | age----+-------+----- 1 | Paul | 32 2 | Allen | 25 3 | Teddy | 23 4 | Mark | 25 5 | David | 27 6 | Kim | 22 7 | James | 24(7 rows)

Eliminare le viste

Per eliminare una vista, è sufficiente utilizzare l’istruzione DROP VIEW con view_name., Base DROP VISTA sintassi è la seguente −

testdb=# DROP VIEW view_name;

Il comando seguente consente di eliminare COMPANY_VIEW vista, che abbiamo creato nella sezione precedente −

testdb=# DROP VIEW COMPANY_VIEW;
Pubblicità

Author: admin

Lascia un commento

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