Introduktion til SQL Views

Ved komplekse SQL-forespørgsler oprettes visninger ved hjælp af en eller flere tabeller. Visning bruges også til at tilvejebringe indkapsling af tabellen / tabellerne til sikkerhedsmæssige formål. En visning betragtes som en virtuel tabel med rækker og kolonner som en normal databasetabel.

Syntaks for at oprette visning

En visning kan oprettes ved hjælp af CREATE VIEW-sætningen som nedenfor:

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

Oprettelse af en visning i SQL med eksempler:

Lad os overveje nedenstående tabel MEDARBEJDERE:

Vi kan oprette en visning fra ovenstående tabel som nedenfor.

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

I ovenstående udsigt EMPLOYEE_VW oprettes nedenstående kolonner.

SELECT * FROM EMPLOYEE_VW;

Vi kan oprette visninger fra mere end en tabel.

Lad os overveje en anden tabel AFDELING som nedenfor.

Vi kan oprette en visning fra ovenstående tabeller for MEDARBEJDERE og AFDELING som nedenfor:

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

Visningen DEPT_VIEW har det følgende resultat.

SELECT * FROM DEPT_VIEW;

Forskellige visningsoperationer i SQL Views

Nedenfor er forskellige visningsoperationer i SQL er som følger:

Opdater i Vis

Selvom en visning kan opdateres, er vi nødt til at holde et par betingelser i meddelelsen. Såfremt, mens en opdatering af en visning, den valgte udsagn ikke bør indeholde et DISTINCT-nøgleord, indstille funktioner, rækkefølge efter klausul, Gruppe efter eller have, undespørgsler osv. FROM-klausulen skal heller ikke indeholde flere tabeller. Ud over ovenstående bør visningen ikke have NULL-værdier, hvis den skal opdateres. Så når vi ønsker at opdatere visningen EMPLOYEE_VW med at holde ovenstående punkter i fokus, opdateres tabellen EMPLOYEE.

Opret eller udskift VIEW-sætning bruges til at tilføje eller fjerne felter fra en visning.

SYNTAX til opdatering

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

Lad os opdatere visningen DEPT_VIEW som nedenfor for at tilføje placeringskolonnen.

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;

Fra ovenstående forespørgsel får vi nedenstående resultat.

INDSÆTNING I VISNING

Syntaks, der skal indsættes i en visning

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

En række kan indsættes for at se EMPLOYEE_VW ved at bruge indsæt i en sætning som nedenfor:

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

Efter indsættelse kan vi se resultatet ved nedenstående valg af forespørgsel.

SELECT * FROM EMPLOYEE_VW;

Sletning fra et syn

Sletning af en række fra en visning sletter rækken fra tabellen, som visningen blev oprettet på.

Syntaks til sletning fra en visning

DELETE FROM view_name WHERE (condition);

Vi kan slette rækken fra visningen som nedenfor:

DELETE FROM EMPLOYEE_VW WHERE NAME = 'MALAY';

Efter sletning kan resultatet vises ved nedenstående forespørgsel.

SELECT * FROM EMPLOYEE_VW;

DROPPING A VIEW

Visningerne kan slettes ved hjælp af nedenstående syntaks:

DROP VIEW view_name;

Hvis vi vil slette visningen EMPLOYEE_VW, kan den slettes som nedenfor:

DROP VIEW EMPLOYEE_VW;

Fordele og ulemper ved SQL Views

Nedenfor er nogle fordele og ulemper ved SQL Views som følger:

Fordele

Nedenfor er fordelene ved at bruge visninger i SQL:

  • Hvis vi har brug for at bevare følsomme oplysninger ved at give begrænset adgang til brugerne, bruges visninger til dette formål. Visninger bruges til kun at vise de krævede data til brugerne ved at holde følsomme data sikre.
  • Da en databasevisning er forbundet med mange tabeller, hvorpå visningen oprettes, forenkler den forespørgslens kompleksitet.
  • Visningen bruges til at skjule kompleksiteten af ​​de underliggende tabeller, der bruges i en database for slutbrugerne.
  • Visninger er nyttige i tilfælde af omdesign af databasen for ikke at påvirke andre applikationer, der bruger den samme database.
  • Dataene til de beregnede kolonner kan beregnes meget let, når vi forespørger om dataene fra visningen, da visninger muliggør beregnede kolonner.

Ulemper

På trods af de mange fordele, som udsigterne tilbyder, har det stadig nogle ulemper, der er anført som nedenfor:

  • En af de største ulemper ved at bruge udsigt kommer ind i billedet, når vi ofte ændrer bordstrukturer, hvorpå visningen oprettes. Så når tabelstrukturerne ændres, skal visningen også ændres.
  • Brug af visning nedsætter også forespørgslernes ydeevne.

Konklusion

Synspunkter er vidt brugt til deres mange fordele. De tilføjer et ekstra sikkerhedslag til databasen, som er meget vigtig for ethvert relationsdatabaseadministrationssystem. Visninger er fleksible i tilfælde af eksponering af dataene for slutbrugerne ved kun at vise de data, der er nødvendige, f.eks. Ved hjælp af read-only-visninger for at begrænse privilegierne for brugerne. Men også synspunkter kan være ufordelagtige, hvis de underliggende bordstrukturer ændres meget hyppigt og derved øge kompleksiteten ved at ændre visningerne i henhold til tabelstrukturen. Så med mange fordele i billedet, udsigter kommer med en mindre mindre anbefalet, når udførelsen af ​​forespørgslen af ​​data er afgørende for virksomheden. Det afhænger af os at vælge brugen af ​​visning i vores database ved at validere forretningsbehovet korrekt for at få flere fordele ved visninger for at øge systemets ydelse.

Anbefalede artikler

Dette har været en guide til SQL Views. Her har vi drøftet Oprettelse af en visning i SQL og Syntax for at oprette visning sammen med fordelene og ulemperne ved visninger i SQL. Du kan også gennemgå vores andre foreslåede artikler for at lære mere -

  1. Oracle PL / SQL Interview spørgsmål
  2. Hvad er MySQL-skema?
  3. Hvad er SQL-injektion?
  4. Hvad er T-SQL?
  5. Lær INSERT-erklæringen i Oracle
  6. Forskellige visningsmuligheder i MySQL