Úvod do pohledu SQL

Pro složité dotazy SQL jsou pohledy vytvářeny pomocí jedné nebo více tabulek. Pohled se také používá k zajištění zapouzdření tabulky / tabulek pro účely zabezpečení. Pohled je považován za virtuální tabulku s řádky a sloupci jako normální tabulka databáze.

Syntaxe pro vytvoření pohledu

Pohled lze vytvořit pomocí příkazu CREATE VIEW, jak je uvedeno níže:

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

Vytvoření pohledu v SQL s příklady:

Podívejme se na následující tabulku ZAMĚSTNANCI:

Z výše uvedené tabulky můžeme vytvořit pohled níže.

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

Ve výše uvedeném pohledu EMPLOYEE_VW budou vytvořeny sloupce níže.

SELECT * FROM EMPLOYEE_VW;

Můžeme vytvořit pohledy z více než jedné tabulky.

Uvažujme další tabulku ODDĚLENÍ, jak je uvedeno níže.

Z výše uvedených tabulek ZAMĚSTNANCŮ a ODDĚLENÍ můžeme vytvořit pohled níže:

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

Pohled DEPT_VIEW bude mít níže uvedený výsledek.

SELECT * FROM DEPT_VIEW;

Různé operace zobrazení v pohledech SQL

Níže jsou uvedeny různé operace zobrazení v SQL:

Aktualizace v zobrazení

Přestože lze pohled aktualizovat, musíme si v oznámení ponechat několik podmínek. Jako například při aktualizaci pohledu by příkaz select neměl obsahovat klíčové slovo DISTINCT, nastavit funkce, pořadí podle klauzule, seskupit podle nebo mít, dílčí dotazy atd. Také klauzule FROM by neměla obsahovat více tabulek. Kromě výše uvedeného by zobrazení mělo mít hodnoty NOT NULL, pokud je třeba aktualizovat. Pokud tedy chceme aktualizovat pohled EMPLOYEE_VW, aby byly výše uvedené body v centru pozornosti, bude tabulka EMPLOYEE aktualizována.

Příkaz CREATE OR REPLACE VIEW se používá k přidání nebo odebrání polí ze zobrazení.

SYNTAX pro aktualizaci

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

Aktualizujeme pohled DEPT_VIEW podle níže a přidejte sloupec umístění.

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;

Z výše uvedeného dotazu získáme níže uvedený výsledek.

VLOŽENÍ DO ZOBRAZENÍ

Syntaxe pro vložení do pohledu

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

Řádek lze vložit pro zobrazení EMPLOYEE_VW pomocí vložení do příkazu, jak je uvedeno níže:

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

Po vložení můžeme výsledek vidět pomocí níže uvedeného výběrového dotazu.

SELECT * FROM EMPLOYEE_VW;

ODSTRANĚNÍ Z POHLEDU

Odstranění řádku z pohledu odstraní řádek z tabulky, ve které byl pohled vytvořen.

Syntaxe pro odstranění z pohledu

DELETE FROM view_name WHERE (condition);

Řádek můžeme smazat z pohledu níže:

DELETE FROM EMPLOYEE_VW WHERE NAME = 'MALAY';

Po vymazání lze výsledek zobrazit pomocí dotazu níže.

SELECT * FROM EMPLOYEE_VW;

DROPPING ZOBRAZENÍ

Zobrazení lze zrušit pomocí níže uvedené syntaxe:

DROP VIEW view_name;

Pokud chceme smazat pohled EMPLOYEE_VW, lze jej odstranit následujícím způsobem:

DROP VIEW EMPLOYEE_VW;

Výhody a nevýhody pohledu SQL

Níže jsou uvedeny některé výhody a nevýhody zobrazení SQL:

Výhody

Níže jsou uvedeny výhody použití pohledů v SQL:

  • Pokud potřebujeme zachovat jakékoli citlivé informace poskytnutím omezeného přístupu uživatelům, použijí se pro tento účel názory. Zobrazení se používají pouze k zobrazení požadovaných dat uživatelům udržováním citlivých dat v bezpečí.
  • Protože je databázové zobrazení spojeno s mnoha tabulkami, na kterých je toto zobrazení vytvořeno, zjednodušuje to složitost dotazu.
  • Pohled se používá ke skrytí složitosti podkladových tabulek použitých v databázi před koncovými uživateli.
  • Pohledy jsou užitečné v případě přepracování databáze tak, aby neovlivnily žádné jiné aplikace používající stejnou databázi.
  • Data vypočtených sloupců lze velmi snadno spočítat při dotazování dat ze zobrazení, protože pohledy umožňují vypočítané sloupce.

Nevýhody

Navzdory mnoha výhodám, které názory nabízejí, má stále některé nevýhody uvedené níže:

  • Jednou z hlavních nevýhod používání pohledu je obraz, když často měníme struktury tabulek, na kterých je pohled vytvořen. Takže když se změní struktury tabulek, je třeba změnit také pohled.
  • Použití pohledu také zpomaluje výkon dotazů.

Závěr

Názory jsou široce využívány pro mnoho výhod. Dodávají do databáze další vrstvu zabezpečení, která je velmi důležitá pro jakýkoli systém správy relačních databází. Pohledy jsou flexibilní v případě vystavení dat koncovým uživatelům tím, že zobrazují pouze data nezbytná například pomocí zobrazení pouze pro čtení k omezení oprávnění pro uživatele. Pohledy však mohou být také nevýhodné, pokud se základní struktury tabulek často mění, čímž se zvyšuje složitost změny pohledů podle struktur tabulek. Takže s mnoha výhodami na obrázku, zobrazení přicházejí s trochu méně doporučenými, když je výkon dotazu na data zásadní pro podnikání. Záleží na nás, abychom vybrali použití pohledu v naší databázi řádným ověřením obchodního požadavku, abychom získali více výhod z pohledů, abychom zvýšili výkon systému.

Doporučené články

Toto byl průvodce pohledy SQL. Zde jsme diskutovali Vytvoření pohledu v SQL a Syntaxe k vytvoření pohledu spolu s výhodami a nevýhodami pohledů v SQL. Další informace naleznete také v dalších navrhovaných článcích -

  1. Dotazové otázky Oracle PL / SQL
  2. Co je MySQL Schema?
  3. Co je SQL Injection?
  4. Co je T-SQL?
  5. Naučte se INSERT prohlášení v Oracle
  6. Různé možnosti zobrazení v MySQL