Úvod do pohľadov v MySQL

Zobrazenie SQL nie je nič iné ako virtuálna tabuľka databázy. Pohľad obsahuje polia ako skutočná tabuľka, ale tieto polia pochádzajú z jednej alebo viacerých tabuliek v databáze, ktorá sa vykonáva spustením veľa MySQL dotazov. Vo virtuálnych tabuľkách môžeme vykonávať operácie ako klauzuly WHERE a JOIN. Na druhú stranu, VIEW nie je nič iné ako VYBRAŤ otázky.

syntaxe:

CREATE VIEW view_name AS
SELECT column1, column2, …
FROM table;

  • “CREATE VIEW view_name” prikazuje MySQL na vytvorenie view / virtuálnej tabuľky v názve view_name.
  • Príkaz “AS SELECT column1, column2 FROM table” načíta stĺpce 1 a stĺpec 2 zo skutočnej tabuľky. Potom tieto polia uloží do virtuálnej tabuľky.

Ako vytvoriť zobrazenia v MySQL?

Vytvorme jednu tabuľku zákazníkov s nasledujúcimi atribútmi:

CUSTOMER_ID Meno zákazníka Contact_no e-mail Purchased_amount veľkomesto
184 Ravi Kumar 9887463893 8000.00 Kalkata
987 Vinay Das 9839878678 12000.00 Delhi
452 K.Amarnath 7598759387 15000.00 Kalkata
874 Abhinash Desai 7675878798 5000.00 Mumbai

Vytvoríme jednu tabuľku cutomser_archive s požadovaným atribútom.

Otázka č. 1

CREATE VIEW customer_archive AS
SELECT customer_id, customer_name, contact_no, city
FROM customer;

Výkon:

CUSTOMER_ID Meno zákazníka Contact_no veľkomesto
184 Ravi Kumar 9887463893 Kalkata
987 Vinay Das 9839878678 Delhi
452 K.Amarnath 7598759387 Kalkata
874 Abhinash Desai 7675878798 Mumbai

Túto podmienku môžeme použiť aj pri vytváraní zobrazenia.

Otázka č. 2

CREATE VIEW customer_archive AS
SELECT customer_id, customer_name, contact_no, purchased_amont, city
FROM customer
WHERE purchased_amont > 10000;

Výkon:

CUSTOMER_ID Meno zákazníka Contact_no Purchased_amount veľkomesto
987 Vinay Das 9839878678 12000.00 Delhi
452 K.Amarnath 7598759387 15000.00 Kalkata

Rôzne možnosti zobrazenia v MySQL

Nasledujú rôzne možnosti zobrazenia v MySQL podrobnejšie vysvetliť,

1. DROP: Pohľad / virtuálna tabuľka môže byť vymazaná pomocou príkazu DROP VIEW. Ak chceme odstrániť tabuľku customer_archive,

syntaxe:

DROP VIEW customer_archive;

2. VYTVORIŤ ALEBO VYMEŇOVAŤ: Príkazom VYTVORIŤ ALEBO VYMENIŤ VIEW môžeme aktualizovať zobrazenie / virtuálnu tabuľku.

syntaxe:

CREATE OR REPLACE VIEW view_name AS
SELECT column1, column2, ….
FROM table;

3. JOIN: Tiež môžeme vytvoriť pohľad spojením viacerých tabuliek. Toto spojenie načíta zhodné záznamy z oboch tabuliek. Existujú rôzne druhy spojení, ktoré sa nazývajú vnútorná spojka, ľavá spojka, pravá spojka, celá vonkajšia spojka, krížová spojka atď.

syntaxe:

CREATE VIEW view-name AS
SELECT column1, column2, column3, …
FROM table_name1 INNER JOIN table_name2
ON table_name1.column = table_name2.column;

Hore je príklad vnútorného spojenia. Rovnakým spôsobom môžeme použiť aj ďalšie spojenia. Vo vyššie uvedenom príklade bude pohľad vytvorený vytvorením konsolidácie záznamov, ktoré sú prítomné ako v table_name1, tak v table_name2 na základe spoločného poľa.

Príklady pohľadov v MySQL

Uvažujme vyššie uvedený príklad:

CUSTOMER_ID Meno zákazníka Contact_no e-mail Purchased_amount veľkomesto
184 Ravi Kumar 9887463893 8000.00 Kalkata
987 Vinay Das 9839878678 12000.00 Delhi
452 K.Amarnath 7598759387 15000.00 Kalkata
874 Abhinash Desai 7675878798 5000.00 Mumbai
987 Aseem Kumar 9697679867 18000.00 Cuttack
989 šakti 9847984788 60000.00 Cuttack

Toto je databáza tabuľky zákazníkov.

Vytvoríme ďalší pohľad, pomenovaný ako premium_customer. Podmienky pre prémiových zákazníkov budú pri zakúpení_výška vyššie ako 10 000.

Otázka č. 1

CREATE VIEW premium_customer AS
SELECT customer_id, customer_name, contact_no, purchased_amont, city
FROM customer
WHERE purchased_amont > 10000;

Výkon:

CUSTOMER_ID Meno zákazníka Contact_no Purchased_amount veľkomesto
987 Vinay Das 9839878678 12000.00 Delhi
452 K.Amarnath 7598759387 15000.00 Kalkata
987 Aseem Kumar 9697679867 18000.00 Cuttack
989 šakti 9847984788 60000.00 Cuttack

Ak chceme vynechať túto virtuálnu tabuľku premium_customer, potom je uvedená syntax.

DROP VIEW premium_customer;

Ak je potrebná úprava tejto tabuľky prémií úpravou niektorých podmienok, potom

Otázka č. 2

CREATE OR REPLACE VIEW premium_customer AS
SELECT customer_id, customer_name, contact_no, email, purchased_amont, city
FROM customer
WHERE purchased_amount > 6000;

Výkon:

CUSTOMER_ID Meno zákazníka Contact_no e-mail Purchased_amount veľkomesto
184 Ravi Kumar 9887463893 8000.00 Kalkata
987 Vinay Das 9839878678 12000.00 Delhi
452 K.Amarnath 7598759387 15000.00 Kalkata
987 Aseem Kumar 9697679867 18000.00 Cuttack
989 šakti 9847984788 60000.00 Cuttack

Výhody a nevýhody pohľadov v MySQL

Tu diskutujeme o výhodách a nevýhodách pohľadov v MySQL,

výhody

  • Zabezpečenie: Existuje veľa tabuliek, ktoré sú obmedzené od mnohých používateľov, pretože niektoré atribúty v týchto tabuľkách budú veľmi citlivé. Ak teda dokážeme vytvoriť zobrazenia s určitými konkrétnymi atribútmi pre príslušných používateľov, potom môžu mať používatelia povolenie na prístup k niektorým súborom zobrazení do databázy, ktorá im je autorizovaná. To môže udržiavať bezpečnosť a integritu údajov a používatelia môžu vykonávať svoje úlohy s príslušnými autorizovanými stĺpcami.
  • Jednoduchosť dotazu: Zobrazenie možno vytvoriť vyzdvihnutím údajov z niekoľkých tabuliek. Takže všetky kumulatívne záznamy zo všetkých tabuliek môžu byť reprezentované jednou tabuľkou pomocou vyhľadávacieho dotazu.
  • Štrukturálna jednoduchosť: môžeme vytvoriť špecializovaný alebo personalizovaný pohľad špecifický pre používateľa. Takže môžeme reprezentovať databázu ako množinu virtuálnych tabuliek, ktoré majú zmysel pre používateľa.
  • Konzistentnosť: tu uvádzame konzistentnosť, pretože toto zobrazenie môže predstavovať konzistentný a nezmenený obraz štruktúry databázy, aj keď robíme nejakú manipuláciu s hlavnou tabuľkou alebo hlavnou tabuľkou.
  • Integrita údajov: ak sú údaje prístupné do zobrazenia, databáza vždy skontroluje údaje, aby sa ubezpečila, či spĺňajú obmedzenia integrity alebo nie.

nevýhody

  • Výkon: Pohľady sú virtuálna tabuľka alebo predstaviteľ hlavných tabuliek. Keď spustíme niektoré dotazy na vytvorenie zobrazenia, DBMS ich preloží proti zobrazeniam do dotazov v podkladových tabuľkách. Takže, ak je dotaz na zobrazenie veľmi zložitý a obsahuje viac zdrojov a zložité algoritmy, potom jednoduchá akcia proti týmto názorom vyžaduje značný čas.
  • Obmedzenia aktualizácie: Pri zmene riadkov v zobrazení musí DBMS preložiť požiadavku na aktualizáciu v riadkoch podkladovej zdrojovej tabuľky. Aktualizáciu je možné vykonať jednoduchým dotazom, ale v prípade zložitého dotazu DBMS neumožňuje aktualizáciu, pretože zobrazenia sú často obmedzené iba na čítanie.

záver

Po absolvovaní vyššie popísaných vecí môžeme jasne spoznať význam tohto príkazu. Toto sa hodí v mnohých scenároch v reálnom čase. Hlavnou výhodou tohto postupu je, že môžeme vykonať mnoho komplexných otázok, aby sme vedeli, ako efektívny je náš základný algoritmus. Kľúčovou výhodou príkazu view je udržiavanie bezpečnosti a integrity údajov.

Odporúčané články

Toto je návod na prezeranie v MySQL. Tu diskutujeme o tom, ako vytvoriť pohľady v mysql a ako pochopíme, ako rôzne pohľady fungujú v MySQL. Viac informácií nájdete aj v nasledujúcich článkoch

  1. Top 3 operátorov MySQL
  2. Rôzne príkazy MySQL Query
  3. Top 6 zástupných znakov v MySQL
  4. Ako funguje schéma MySQL?