Uvod v poglede v MySQL

Pogled SQL ni nič drugega kot virtualna tabela baze podatkov. Pogled vsebuje polja kot resnična tabela, vendar so ta polja iz ene ali več tabel v bazi podatkov, ki se izvajajo z izvajanjem kup poizvedb MySQL. V virtualnih tabelah lahko izvajamo operacije, kot so stavki WHERE in JOIN. Po drugi strani VIEW ni nič drugega kot SELECT poizvedb.

Sintaksa:

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

  • "CREATE VIEW view_name" ukaze MySQL, da ustvari pogled / virtualno tabelo v imenu imena_pregleda.
  • Stavek »KOT IZBIRA stolpec1, stolpec IZ tabele« prenese stolpec1 in stolpec2 iz realne tabele. Nato ta polja shrani v virtualno tabelo.

Kako ustvariti poglede v MySQL?

Ustvarimo eno tabelo kupcev z naslednjimi atributi:

Identifikacijska številka stranke Ime stranke Kontakt_no E-naslov Kupljen_iznesek Mesto
184 Ravi Kumar 9887463893 8000, 00 Kolkata
987 Vinay Das 9839878678 12000, 00 Delhi
452 K.Amarnath 7598759387 15000, 00 Kolkata
874 Abhinash Desai 7675878798 5000, 00 Bombaj

Ustvarili bomo eno tabelo cutomser_archive z našim potrebnim atributom.

Poizvedba 1

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

Izhod:

Identifikacijska številka stranke Ime stranke Kontakt_no Mesto
184 Ravi Kumar 9887463893 Kolkata
987 Vinay Das 9839878678 Delhi
452 K.Amarnath 7598759387 Kolkata
874 Abhinash Desai 7675878798 Bombaj

Pogoj lahko za to poizvedbo uporabimo tudi med ustvarjanjem pogleda.

Poizvedba št. 2

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

Izhod:

Identifikacijska številka stranke Ime stranke Kontakt_no Kupljen_iznesek Mesto
987 Vinay Das 9839878678 12000, 00 Delhi
452 K.Amarnath 7598759387 15000, 00 Kolkata

Različne možnosti pogleda v MySQL

Sledijo različne možnosti prikaza v MySQL, ki podrobneje razlagajo,

1. DROP: Pogled / navidezno tabelo je mogoče izbrisati z ukazom DROP VIEW. Če želimo izbrisati tabelo customer_archive,

Sintaksa:

DROP VIEW customer_archive;

2. USTVARJAJ ALI ZAMENI: Z ukazom CREATE ALI REPLACE VIEW lahko posodobimo pogled / virtualno tabelo.

Sintaksa:

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

3. PRIDRUŽITE se: Tudi pogled lahko ustvarimo tako, da združimo več tabel. To združevanje bo iz obeh tabel prejelo ujemajoče se zapise. Obstajajo različne vrste spojev, imenovanih kot notranji spoj, levi spoj, desni spoj, popolni zunanji spoj, navzkrižni spoj itd.

Sintaksa:

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

Zgoraj je primer notranjega spajanja. Na enak način lahko uporabimo tudi druge povezave. V zgornjem primeru bo prikaz ustvarjen s konsolidacijo zapisov, ki so prisotni v tabeli_ime1 in tabeli_ime2 na podlagi skupnega polja.

Primeri pogledov v MySQL

Upoštevajmo zgornji primer:

Identifikacijska številka stranke Ime stranke Kontakt_no E-naslov Kupljen_iznesek Mesto
184 Ravi Kumar 9887463893 8000, 00 Kolkata
987 Vinay Das 9839878678 12000, 00 Delhi
452 K.Amarnath 7598759387 15000, 00 Kolkata
874 Abhinash Desai 7675878798 5000, 00 Bombaj
987 Aseem Kumar 9697679867 18000.00 Cuttack
989 Sakti 9847984788 60000, 00 Cuttack

To je baza podatkov o tabeli strank.

Ustvarili bomo še en pogled nanjo in ga poimenovali kot premium_customer. Pogoji za premium kupce bodo kupljeni, medtem ko bo znesek višji od 10000.

Poizvedba št. 1

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

Izhod:

Identifikacijska številka stranke Ime stranke Kontakt_no Kupljen_iznesek Mesto
987 Vinay Das 9839878678 12000, 00 Delhi
452 K.Amarnath 7598759387 15000, 00 Kolkata
987 Aseem Kumar 9697679867 18000.00 Cuttack
989 Sakti 9847984788 60000, 00 Cuttack

Če želimo spustiti to virtualno tabelo premium_customer, je spodaj sintaksa.

DROP VIEW premium_customer;

Če je treba spremeniti nekatere pogoje v tej zgornji premijski tabeli, potem spremenite nekatere pogoje

Poizvedba št. 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;

Izhod:

Identifikacijska številka stranke Ime stranke Kontakt_no E-naslov Kupljen_iznesek Mesto
184 Ravi Kumar 9887463893 8000, 00 Kolkata
987 Vinay Das 9839878678 12000, 00 Delhi
452 K.Amarnath 7598759387 15000, 00 Kolkata
987 Aseem Kumar 9697679867 18000.00 Cuttack
989 Sakti 9847984788 60000, 00 Cuttack

Prednosti in slabosti pogledov v MySQL

Tukaj razpravljamo o prednostih in slabostih Pogledi v MySQL,

Prednosti

  • Varnost: Mnogo uporabnikov je omejenih veliko tabel, saj bodo nekateri atributi v teh tabelah zelo občutljivi. Če torej lahko ustvarimo poglede z določenimi atributi za posamezne uporabnike, lahko uporabnikom omogočimo dostop do določenega niza pogledov v bazo podatkov, ki jim je dovoljena. Tako lahko ohranite varnost in celovitost podatkov, pa tudi uporabniki lahko svoje naloge izvajajo v ustreznih pooblaščenih stolpcih.
  • Poenostavitev poizvedbe: Pogled je mogoče ustvariti s pridobivanjem podatkov iz več tabel. Torej je mogoče vse kumulativne zapise iz vseh tabel predstaviti z eno samo tabelo z uporabo poizvedbe po pogledu.
  • Strukturna preprostost: lahko oblikujemo specializiran ali prilagojen pogled za uporabnika. Tako lahko bazo predstavljamo kot nabor virtualnih tabel, ki so smiselne za uporabnika.
  • Doslednost: tu omenjamo skladnost, ker lahko ta pogled predstavlja dosledno in nespremenjeno podobo strukture baze podatkov, tudi če naredimo nekaj manipulacij z glavno mizo ali glavno tabelo.
  • Celovitost podatkov: če do podatkov dostopate do pogleda, baza podatkov vedno preveri podatke, da se prepriča, ali izpolnjujejo omejitve integritete ali ne.

Slabosti

  • Uspešnost: Pogledi so navidezna tabela ali predstavnik glavnih tabel. Ko izvedemo nekaj poizvedb za ustvarjanje pogleda, DBMS prevede te poizvedbe glede na poglede v poizvedbe v spodnjih tabelah. Če je poizvedba o pogledih zelo zapletena in vsebuje več virov in težavnih algoritmov, potem preprosto ukrepanje proti tem pogledom zahteva precej časa.
  • Omejitve posodobitve: Medtem ko spreminjate vrstice v pogledu, mora DBMS zahtevo prevesti v posodobitev vrstic osnovne izvorne tabele. Posodobitev je mogoče opraviti s preprosto poizvedbo, v primeru zapletene poizvedbe pa DBMS ne bo dovoljeval posodabljanja, saj so pogledi pogosto omejeni samo na branje.

Zaključek

Potem ko bomo preučili zgoraj opisane stvari, lahko jasno spoznamo pomen tega ukaza. To je priročno v mnogih scenarijih v realnem času. Glavna prednost tega je, da lahko izvedemo veliko zapletenih poizvedb, samo da vemo, kako učinkovit je naš osnovni algoritem. Vzdrževanje varnosti in celovitosti podatkov je ključna prednost ukaza pogleda.

Priporočeni članki

To je vodnik za Poglede v MySQL. Tukaj razpravljamo, kako ustvariti poglede v mysql in razumeti, kako delujejo različne možnosti pogledov v MySQL. Če želite izvedeti več, si oglejte tudi naslednje članke -

  1. Najboljši 3 operaterji MySQL
  2. Različni poizvedbeni ukazi MySQL
  3. Top 6 wildcards v MySQL
  4. Kako deluje MySQL shema?