English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Viste di SQLite

Le viste sono semplicemente statement SQLite memorizzate con un nome correlato nel database. In realtà sono una combinazione di tabelle che rappresentano una forma di query SQLite predefinita.

Una vista può includere tutte le righe di una tabella o righe selezionate da una o più tabelle. Puoi creare una vista da una o più tabelle, a seconda della query SQLite che stai scrivendo per creare la vista.

Le viste come tabelle virtuali permettono agli utenti di -

  • Costruisci i dati in modo naturale o intuitivo per l'utente o per le categorie di utenti.

  • Limita l'accesso ai dati in modo che gli utenti possano vedere solo una porzione di dati, non l'intera tabella.

  • Riunisci i dati da vari tabella, che possono essere utilizzati per generare report.

Le viste SQLite sono readonly, quindi potresti non essere in grado di eseguire statement DELETE, INSERT o UPDATE sulla vista. Tuttavia, puoi creare trigger sulla vista che verranno attivati quando si tenta di eliminare, inserire o aggiornare la vista, eseguendo le operazioni necessarie nel corpo del trigger.

Crea una vista

UsaCREATE VIEWLa statement crea una vista SQLite. Puoi creare una vista SQLite da una tabella, da più tabelle o da un'altra vista.

Ecco la sintassi di base per CREATE VIEW.

CREATE [TEMP | TEMPORARY] VIEW view_name AS SELECT column1, column2.....FROM table_name WHERE [condition];

Puoi includere più tabelle in una query SELECT come faresti con una query SQL SELECT standard. Se ci sono le parole chiave opzionali TEMP o TEMPORARY, verrà creata la vista nel database temp.

Esempio

La tabella COMPANY contiene i seguenti record-

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1           Paul        32          California  20000.0
2           Allen       25          Texas       15000.0
3           Teddy       23          Norway      20000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0
6           Kim         22          South-Hall  45000.0
7           James       24          Houston     10000.0

Ecco un esempio di come creare una vista dalla tabella COMPANY. Questa vista sarà utilizzata solo per alcune colonne della tabella COMPANY.

sqlite> CREATE VIEW COMPANY_VIEW AS
SELECT ID, NAME, AGE
FROM  COMPANY;

Ora, è possibile effettuare query su COMPANY_VIEW come se si interrogassero una tabella reale. Ecco un esempio-

sqlite> SELECT * FROM COMPANY_VIEW;

Questo produrrà i seguenti risultati.

ID          NAME        AGE
----------  ----------  ----------
1           Paul        32
2           Allen       25
3           Teddy       23
4           Mark        25
5           David       27
6           Kim         22
7           James       24

Eliminazione della vista

Per eliminare una vista, è sufficiente utilizzare la frase DROP VIEW insieme aview_nameLa sintassi di base di DROP VIEW è la seguente-

sqlite> DROP VIEW view_name;

Le seguenti istruzioni_elimineranno la vista COMPANY_VIEW_che abbiamo creato nella sezione precedente.

sqlite> DROP VIEW COMPANY_VIEW;