Introduktion till visningar i MySQL

SQL-vyn är inget annat än en virtuell tabell i databasen. Vyn innehåller fält som en riktig tabell, men dessa fält kommer från en eller flera tabeller i databasen som körs genom att köra ett gäng MySQL-frågor. Vi kan utföra operationer som WHERE och JOIN-klausuler i de virtuella tabellerna. Å andra sidan är VIEW inget annat än VÄLJ frågor.

Syntax:

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

  • “CREATE VIEW view_name” kommandon MySQL för att skapa en vy / virtuell tabell i namnet på view_name.
  • ”SOM VÄLJ kolumn1, kolumn2 FRÅN tabell” uttalande hämtar kolumn 1 och kolumn2 från den verkliga tabellen. Sedan sparar de fälten i den virtuella tabellen.

Hur skapar jag vyer i MySQL?

Låt oss skapa en kundtabell med följande attribut:

Kundnummer Köparens namn Contact_no E-post Purchased_amount Stad
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 Mumbai

Vi skapar en cutomser_archive-tabell med vårt önskade attribut.

Fråga 1

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

Produktion:

Kundnummer Köparens namn Contact_no Stad
184 Ravi Kumar 9887463893 Kolkata
987 Vinay Das 9839878678 delhi
452 K.Amarnath 7598759387 Kolkata
874 Abhinash Desai 7675878798 Mumbai

Vi kan också tillämpa villkoret på den här frågan medan vi skapar en vy.

Fråga # 2

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

Produktion:

Kundnummer Köparens namn Contact_no Purchased_amount Stad
987 Vinay Das 9839878678 12000, 00 delhi
452 K.Amarnath 7598759387 15000, 00 Kolkata

Olika visningsalternativ i MySQL

Följande är de olika visningsalternativen i MySQL som förklarar mer i detalj,

1. DROP: En vy / virtuell tabell kan raderas med kommandot DROP VIEW. Om vi ​​vill ta bort tabellen customer_archive,

Syntax:

DROP VIEW customer_archive;

2. SKAPA ELLER Byt ut: Med CREATE OR REPLACE VIEW-kommandot kan vi uppdatera en vy / virtuell tabell.

Syntax:

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

3. GÅ MED: Vi kan också skapa en vy genom att gå med i flera tabeller. Denna sammanfogning hämtar matchade poster från båda tabellerna. Det finns olika typer av sammanfogningar som kallas en inre sammanfogning, vänsterfogning, högerfogning, full yttre förbindning, korsfogning etc.

Syntax:

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

Ovan är exemplet på en inre koppling. På samma sätt kan vi också tillämpa andra förbindelser. I exemplet ovan skapas vyn genom att konsolidera de poster som finns i både tabellnamn1 och tabellnamn2 på grundval av ett gemensamt fält.

Exempel på visningar i MySQL

Låt oss överväga exemplet ovan:

Kundnummer Köparens namn Contact_no E-post Purchased_amount Stad
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 Mumbai
987 Aseem Kumar 9697679867 18000, 00 Cuttack
989 Sakti 9847984788 60000, 00 Cuttack

Detta är kundtabellens databas.

Vi kommer att skapa en annan vy av den och namnge den som en premiumkund. Villkoren för premiumkunder kommer att vara medan köpta_beloppet är större än 10000.

Fråga 1

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

Produktion:

Kundnummer Köparens namn Contact_no Purchased_amount Stad
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

Om vi ​​vill släppa den här virtuella premium_customer-tabellen är syntaxen nedan.

DROP VIEW premium_customer;

Om vissa ändringar krävs i denna ovanstående premiumtabell genom att ändra vissa villkor, då

Fråga # 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;

Produktion:

Kundnummer Köparens namn Contact_no E-post Purchased_amount Stad
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

Fördelar och nackdelar med visningar i MySQL

Här diskuterar vi fördelar och nackdelar med Views i MySQL,

fördelar

  • Säkerhet: Det finns många tabeller som är begränsade från många användare eftersom vissa attribut i dessa tabeller är mycket känsliga. Så om vi kan skapa vyer med vissa specifika attribut för respektive användare, kan användare ges tillstånd att komma åt någon uppsättning vyer i en databas som är auktoriserad för dem. Detta kan upprätthålla säkerheten och integriteten för data så att användare kan utföra sina uppgifter med respektive auktoriserade kolumner.
  • Enkel fråga: En vy kan skapas genom att hämta data från flera tabeller. Så alla kumulativa poster från alla tabeller kan representeras av en enda tabell med hjälp av visningsfrågan.
  • Strukturell enkelhet: vi kan skapa en specialiserad eller personlig användarspecifik vy. Så vi kan representera databasen som en uppsättning virtuella tabeller som är vettiga för användaren.
  • Konsistens: vi nämner konsistens här eftersom den här vyn kan representera en konsekvent och oförändrad bild av databasstrukturen även om vi gör någon manipulation till huvudtabellen eller huvudtabellen.
  • Dataintegritet: om data har åtkomst till en vy kontrollerar databasen alltid data för att se om de uppfyller integritetsbegränsningarna eller inte.

nackdelar

  • Prestanda: Visningar är den virtuella tabellen eller representanten för huvudtabeller. När vi kör några frågor för att skapa en vy, översätter DBMS dessa frågor mot vyerna till frågorna i underliggande tabeller. Så om visningsfrågan är mycket komplex som innehåller flera källor och svåra algoritmer, tar enkel åtgärd mot dessa vyer betydande tid.
  • Uppdateringsbegränsningar: När du ändrar rader i en vy måste DBMS översätta begäran till en uppdatering på rader i den underliggande källtabellen. Uppdateringen kan göras i den enkla frågan men i fallet med en komplex fråga tillåter DBMS inte uppdatering eftersom vyer ofta är begränsade till skrivskyddad.

Slutsats

Efter att ha gått igenom ovan beskrivna saker kan vi tydligt lära känna betydelsen av detta kommando. Detta är praktiskt i många realtidsscenarier. Den största fördelen med detta är att vi kan utföra många komplexa frågor bara för att veta hur effektiv vår underliggande algoritm är. Att upprätthålla datasäkerhet och integritet är den viktigaste fördelen med visningskommando.

Rekommenderade artiklar

Detta är en guide till Visningar i MySQL. Här diskuterar vi hur man skapar vyer i mysql och förstår hur olika visningsalternativ fungerar i MySQL. Du kan också titta på följande artiklar för att lära dig mer-

  1. Topp 3 MySQL-operatörer
  2. Olika MySQL Query-kommandon
  3. Topp 6 wildcards i MySQL
  4. Hur fungerar MySQL Schema?