Introduzione alle viste SQL

Per query SQL complesse, le viste vengono create utilizzando una o più tabelle. Inoltre, la vista viene utilizzata per fornire l'incapsulamento della tabella / tabelle per motivi di sicurezza. Una vista è considerata come una tabella virtuale con righe e colonne come una normale tabella di database.

Sintassi per creare una vista

Una vista può essere creata usando l'istruzione CREATE VIEW come di seguito:

CREATE VIEW VIEW_NAME AS
SELECT column1, column2, column3…….
FROM table_name WHERE (condition);

Creazione di una vista in SQL con esempi:

Consideriamo la seguente tabella DIPENDENTE:

Possiamo creare una vista dalla tabella sopra come sotto.

CREATE VIEW EMLOYEE_VW AS
SELECT NAME, AGE, SALARY
FROM EMPLOYEE;

Nella vista sopra EMPLOYEE_VW, verranno create le colonne seguenti.

SELECT * FROM EMPLOYEE_VW;

Siamo in grado di creare viste da più di una tabella.

Consideriamo un'altra tabella DIPARTIMENTO come di seguito.

Possiamo creare una vista dalle precedenti tabelle DIPENDENTI e DIPARTIMENTO come di seguito:

CREATE VIEW DEPT_VIEW AS
SELECT EMPLOYEE.ID, EMPLOYEE.NAME, DEPARTMENT.DEPTNAME
FROM EMPLOYEE, DEPARTMENT
WHERE EMPLOYEE.ID = DEPARTMENT.ID;

La vista DEPT_VIEW avrà il risultato seguente.

SELECT * FROM DEPT_VIEW;

Diverse operazioni di visualizzazione in viste SQL

Di seguito sono riportate varie operazioni di visualizzazione in SQL:

Aggiornamento in vista

Sebbene una vista possa essere aggiornata, è necessario mantenere alcune condizioni nell'avviso. Ad esempio, durante l'aggiornamento di una vista l'istruzione select non deve contenere una parola chiave DISTINCT, impostare funzioni, clausole order by, Group By o Being, sottoquery, ecc. Inoltre, la clausola FROM non deve contenere più tabelle. Oltre a quanto sopra, la vista dovrebbe avere valori NOT NULL se deve essere aggiornata. Pertanto, quando desideriamo aggiornare la vista EMPLOYEE_VW mantenendo i punti precedenti in primo piano, la tabella EMPLOYEE verrà aggiornata.

L'istruzione CREATE O REPLACE VIEW viene utilizzata per aggiungere o rimuovere campi da una vista.

SYNTAX per l'aggiornamento

CREATE OR REPLACE VIEW view_name AS
SELECT column1, column2….
FROM table_name
WHERE (condition);

Cerchiamo di aggiornare la vista DEPT_VIEW come di seguito per aggiungere la colonna della posizione.

CREATE OR REPLACE VIEW DEPT_VIEW AS
SELECT EMPLOYEE.ID, EMPLOYEE.NAME, DEPARTMENT.DEPTNAME, DEPARTMENT.LOCATION
FROM EMPLOYEE, DEPARTMENT
WHERE EMPLOYEE.ID = DEPARTMENT.ID;

SELECT * FROM EMPLOYEE;

Dalla query sopra, otterremo il risultato seguente.

INSERIMENTO in VISTA

Sintassi da inserire in una vista

INSERT INTO view_name(column1, column 2, column3, ….) VALUES(value1, value2, value3, …);

È possibile inserire una riga per visualizzare EMPLOYEE_VW utilizzando insert in un'istruzione come di seguito:

INSERT INTO EMPLOYEE_VW (NAME, AGE, SALARY) VALUES('RAM', '24', '27000.00');

Dopo l'inserimento, possiamo vedere il risultato dalla seguente query di selezione.

SELECT * FROM EMPLOYEE_VW;

ELIMINAZIONE DA UNA VISTA

L'eliminazione di una riga da una vista elimina la riga dalla tabella in cui è stata creata la vista.

La sintassi per l'eliminazione da una vista

DELETE FROM view_name WHERE (condition);

Possiamo eliminare la riga dalla vista come di seguito:

DELETE FROM EMPLOYEE_VW WHERE NAME = 'MALAY';

Dopo l'eliminazione, il risultato può essere visualizzato dalla query seguente.

SELECT * FROM EMPLOYEE_VW;

CADERE UNA VISTA

Le visualizzazioni possono essere eliminate utilizzando la sintassi seguente:

DROP VIEW view_name;

Se vogliamo eliminare la vista EMPLOYEE_VW, può essere eliminata come di seguito:

DROP VIEW EMPLOYEE_VW;

Vantaggi e svantaggi delle viste SQL

Di seguito sono riportati alcuni pro e contro di SQL Views come segue:

vantaggi

Di seguito sono riportati i vantaggi dell'utilizzo delle viste in SQL:

  • Se abbiamo bisogno di conservare qualsiasi informazione sensibile fornendo un accesso limitato agli utenti, le viste vengono utilizzate a tale scopo. Le viste vengono utilizzate per visualizzare solo i dati richiesti agli utenti mantenendo al sicuro i dati sensibili.
  • Poiché una vista del database è associata a molte tabelle su cui viene creata la vista, semplifica la complessità della query.
  • La vista viene utilizzata per nascondere agli utenti finali la complessità delle tabelle sottostanti utilizzate in un database.
  • Le viste sono utili in caso di riprogettazione del database in modo da non influire su altre applicazioni che utilizzano lo stesso database.
  • I dati delle colonne calcolate possono essere calcolati molto facilmente quando eseguiamo una query sui dati dalla vista, poiché le viste abilitano le colonne calcolate.

svantaggi

Nonostante i numerosi vantaggi offerti dalle viste, presenta ancora alcuni svantaggi indicati di seguito:

  • Uno dei principali svantaggi dell'utilizzo della vista viene visualizzato quando cambiamo spesso le strutture della tabella su cui viene creata la vista. Pertanto, quando le strutture della tabella vengono modificate, è necessario modificare anche la vista.
  • Inoltre, l'utilizzo della vista rallenta le prestazioni delle query.

Conclusione

Le viste sono ampiamente utilizzate per i loro numerosi vantaggi. Aggiungono un ulteriore livello di sicurezza al database che è molto essenziale per qualsiasi sistema di gestione del database relazionale. Le viste sono flessibili in caso di esposizione dei dati agli utenti finali mostrando solo i dati necessari, ad esempio, usando le viste di sola lettura per limitare i privilegi agli utenti. Ma anche le viste possono essere svantaggiose se le strutture delle tabelle sottostanti cambiano molto frequentemente aumentando così la complessità della modifica delle viste in base alle strutture delle tabelle. Quindi, con molti vantaggi nell'immagine, le viste sono un po 'meno consigliate quando le prestazioni della query di dati sono vitali per l'azienda. Dipende da noi scegliere l'uso della vista nel nostro database convalidando correttamente i requisiti aziendali in modo da ottenere maggiori vantaggi dalle viste al fine di aumentare le prestazioni del sistema.

Articoli consigliati

Questa è stata una guida a SQL Views. Qui abbiamo discusso della creazione di una vista in SQL e della sintassi per creare una vista insieme ai vantaggi e agli svantaggi delle viste in SQL. Puoi anche consultare i nostri altri articoli suggeriti per saperne di più -

  1. Domande di intervista Oracle PL / SQL
  2. Cos'è lo schema MySQL?
  3. Che cos'è SQL Injection?
  4. Che cos'è T-SQL?
  5. Scopri l'istruzione INSERT in Oracle
  6. Diverse opzioni di visualizzazione in MySQL