Bevezetés az SQL nézetekbe

Az összetett SQL lekérdezésekhez a nézeteket egy vagy több táblával hozzák létre. A nézet arra is szolgál, hogy biztonsági célokra beágyazza az asztalot / táblázatokat. A nézet virtuális táblának tekinthető, sorokkal és oszlopokkal, mint egy normál adatbázis-tábla.

Szintaxis a nézet létrehozásához

Nézet létrehozható a CREATE VIEW nyilatkozattal, az alábbiak szerint:

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

Nézet létrehozása SQL példákkal:

Nézzük meg az alábbi táblázatot: MUNKAVÉGZŐ:

A fenti táblázatból az alábbiak szerint készíthetünk nézetet.

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

A fenti nézetben EMPLOYEE_VW az alábbi oszlopok jönnek létre.

SELECT * FROM EMPLOYEE_VW;

Néhány táblát is létrehozhatunk.

Nézzük meg egy másik táblázat OSZTÁLYT az alábbiak szerint.

A fenti Munkavállalók és Osztályok táblázata alapján nézetet tudunk létrehozni:

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

A DEPT_VIEW nézet az alábbi eredményt fogja nyújtani.

SELECT * FROM DEPT_VIEW;

Különböző nézet műveletek SQL nézetekben

Az alábbiakban bemutatjuk az SQL különféle nézetműveleteit:

Frissítés a nézetben

Bár a nézet frissíthető, néhány feltételt meg kell tartani a közleményben. Mint például a nézet frissítése közben a Kiválasztási nyilatkozat nem tartalmazhat DISTINCT kulcsszót, beállított funkciókat, sorrend szerinti mondatot, csoportos küldést vagy birtoklást, alkérdéseket stb. A FROM-záradéknak nem szabad több táblát tartalmaznia. A fentieken kívül a nézetnek NULL értékekkel kell rendelkeznie, ha frissíteni kell. Tehát, amikor frissíteni akarjuk az EMPLOYEE_VW nézetet, miközben a fenti pontokat fókuszban tartjuk, az EMPLOYEE táblázat frissül.

A VIZSGÁLAT LÉTREHOZÁSA VAGY KICSERÉLÉSE kifejezést mezők hozzáadásához vagy eltávolításához használják.

SYNTAX a frissítéshez

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

Frissítsük a DEPT_VIEW nézetet az alábbiak szerint, hogy hozzáadjuk a hely oszlopot.

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;

A fenti lekérdezésből az alábbi eredményt kapjuk.

BEVEZETÉS A NÉPHOZ

Szintaxis a nézetbe való beszúráshoz

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

Egy sor beszúrható az EMPLOYEE_VW megtekintéséhez, az alábbi beszúrás használatával:

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

Beillesztés után az alábbiakban kiválasztott lekérdezés alapján láthatjuk az eredményt.

SELECT * FROM EMPLOYEE_VW;

TÖRLÉS VIZSGÁLATBÓL

Ha töröl egy sort egy nézetből, akkor törli a sort a táblából, amelyen a nézetet létrehozta.

A nézetből való törlés szintaxisa

DELETE FROM view_name WHERE (condition);

Törölhetjük a sort a nézetből az alábbiak szerint:

DELETE FROM EMPLOYEE_VW WHERE NAME = 'MALAY';

A törlés után az eredmény az alábbi lekérdezéssel jeleníthető meg.

SELECT * FROM EMPLOYEE_VW;

VÉGREHAJTÁS

A nézeteket az alábbi szintaxis használatával le lehet vonni:

DROP VIEW view_name;

Ha törölni akarjuk az EMPLOYEE_VW nézetet, akkor az alábbiak szerint törölhető:

DROP VIEW EMPLOYEE_VW;

Az SQL nézetek előnyei és hátrányai

Az alábbiakban bemutatjuk az SQL nézetek előnyeit és hátrányait, az alábbiak szerint:

Előnyök

Az alábbiakban bemutatjuk az SQL nézetek használatának előnyeit:

  • Ha bármilyen érzékeny információt meg kell őriznünk azzal, hogy korlátozott hozzáférést biztosítunk a felhasználók számára, akkor a nézeteket erre a célra használjuk. A nézeteket arra használják, hogy csak a szükséges adatokat jelenítsék meg a felhasználók számára az érzékeny adatok biztonságának megőrzése révén.
  • Mivel az adatbázis nézet sok olyan táblához társul, amelyeken a nézet létrejön, egyszerűsíti a lekérdezés összetettségét.
  • A nézet arra szolgál, hogy elrejtse az adatbázisban felhasznált mögöttes táblák összetettségét a végfelhasználóktól.
  • A nézetek hasznosak az adatbázis újratervezésekor, hogy ne érintsék az ugyanazt az adatbázist használó más alkalmazásokat.
  • A kiszámított oszlopok adatai nagyon könnyen kiszámíthatók, ha a nézetből lekérdezzük az adatokat, mivel a nézetek lehetővé teszik a kiszámított oszlopok használatát.

hátrányok

Annak ellenére, hogy a nézetek számos előnnyel járnak, ennek még vannak hátrányai, amint az alábbiakban szerepel:

  • A nézet használatának egyik fő hátránya akkor jelenik meg a képen, ha gyakran módosítjuk az asztal szerkezetét, amelyen a nézet készül. Tehát amikor az asztal szerkezete megváltozik, a nézetet is meg kell változtatni.
  • A nézet használata lelassítja a lekérdezések teljesítését.

Következtetés

A nézeteket sok előnyeik miatt széles körben használják. Egy extra biztonsági réteget adnak az adatbázishoz, amely nagyon fontos minden relációs adatbázis-kezelő rendszerhez. A nézetek rugalmasak, ha az adatokat a végfelhasználóknak teszik ki, mivel csak a szükséges adatokat jelenítik meg, például csak olvasható nézetekkel, a felhasználók számára biztosított jogosultságok korlátozása érdekében. Ugyanakkor a nézetek is hátrányosak lehetnek, ha az alapul szolgáló táblázati struktúrák gyakran változnak, ezáltal megnövekszik a nézetek táblázati struktúrák szerinti megváltoztatásának összetettsége. Tehát a kép sok előnyeivel együtt a nézetek kissé kevésbé ajánlottak, amikor az adatok lekérdezésének teljesítése elengedhetetlen az üzlet számára. Attól függ, hogy az adatbázis igényeinek megfelelően választjuk-e meg a nézet használatát az üzleti követelmény megfelelő érvényesítésével, hogy a nézetekből több előnyt szerezzünk a rendszer teljesítményének növelése érdekében.

Ajánlott cikkek

Ez az SQL Views útmutatója. Itt tárgyaltunk egy nézet létrehozásáról az SQL-ben és a szintaxisban a nézet létrehozásához, valamint az SQL-nézetek előnyeinek és hátrányainak. A további javasolt cikkeken keresztül további információkat is megtudhat -

  1. Oracle PL / SQL interjúkérdések
  2. Mi a MySQL séma?
  3. Mi az SQL befecskendezés?
  4. Mi a T-SQL?
  5. Tanulja meg az INSERT nyilatkozatot az Oracle-ben
  6. Különböző nézetbeállítások a MySQL-ben