Ú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 -
- Dotazové otázky Oracle PL / SQL
- Co je MySQL Schema?
- Co je SQL Injection?
- Co je T-SQL?
- Naučte se INSERT prohlášení v Oracle
- Různé možnosti zobrazení v MySQL