Въведение в изгледите в MySQL

SQL изглед не е нищо друго освен виртуална таблица на базата данни. Изгледът съдържа полета като истинска таблица, но тези полета са от една или повече таблици в базата данни, която се изпълнява чрез пускане на куп MySQL заявки. Можем да извършваме операции като клауди WHERE и JOIN във виртуалните таблици. От друга страна, VIEW не е нищо друго освен SELECT заявки.

Синтаксис:

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

  • „CREATE VIEW view_name“ командва MySQL да създаде изглед / виртуална таблица в името на view_name.
  • Изразът „AS SELECT колона1, колона2 ОТ таблицата“ извлича колона1 и колона2 от реалната таблица. След това записва тези полета във виртуалната таблица.

Как да създадете изгледи в MySQL?

Нека създадем една клиентска таблица със следните атрибути:

Клиентски номер Потребителско име Contact_no електронна поща Purchased_amount град
184 Рави Кумар 9887463893 8000.00 Колката
987 Винай Дас 9839878678 12000.00 Делхи
452 K.Amarnath 7598759387 15000.00 Колката
874 Абхинаш Дезай 7675878798 5000.00 Мумбай

Ще създадем една cutomser_archive таблица с необходимия ни атрибут.

Запитване №1

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

изход:

Клиентски номер Потребителско име Contact_no град
184 Рави Кумар 9887463893 Колката
987 Винай Дас 9839878678 Делхи
452 K.Amarnath 7598759387 Колката
874 Абхинаш Дезай 7675878798 Мумбай

Можем също да приложим условието към тази заявка, докато създаваме изглед.

Запитване №2

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

изход:

Клиентски номер Потребителско име Contact_no Purchased_amount град
987 Винай Дас 9839878678 12000.00 Делхи
452 K.Amarnath 7598759387 15000.00 Колката

Различни опции за изглед в MySQL

Следват различните опции за изглед в MySQL обясняват по-подробно,

1. DROP: Изглед / виртуална таблица може да бъде изтрита с помощта на командата DROP VIEW. Ако искаме да изтрием таблицата клиент_архив,

Синтаксис:

DROP VIEW customer_archive;

2. СЪЗДАВАНЕ ИЛИ ЗАМЯНА: С командата CREATE ILI REPLACE VIEW можем да актуализираме изглед / виртуална таблица.

Синтаксис:

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

3. Присъединете се: Ние също можем да създадем изглед, като се присъединим към множество таблици. Това присъединяване ще извлече съвпадащи записи от двете таблици. Има различни видове съединения, наречени като вътрешно присъединяване, ляво присъединяване, дясно присъединяване, пълно външно присъединяване, кръстосано съединение и т.н.

Синтаксис:

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

По-горе е примерът на вътрешно съединение. По същия начин можем да приложим и други присъединения. В горния пример изгледът ще бъде създаден чрез консолидиране на записите, които присъстват както в table_name1, така и в table_name2 въз основа на общо поле.

Примери за изгледи в MySQL

Нека разгледаме горния пример:

Клиентски номер Потребителско име Contact_no електронна поща Purchased_amount град
184 Рави Кумар 9887463893 8000.00 Колката
987 Винай Дас 9839878678 12000.00 Делхи
452 K.Amarnath 7598759387 15000.00 Колката
874 Абхинаш Дезай 7675878798 5000.00 Мумбай
987 Асеем Кумар 9697679867 18000.00 Куттак
989 шакти 9847984788 60000.00 Куттак

Това е базата данни на клиентските маси.

Ще създадем друг изглед на него, като го наречем като premium_customer. Условията за първокласните клиенти ще бъдат, докато купената_ сума ще бъде по-голяма от 10000.

Запитване №1

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

изход:

Клиентски номер Потребителско име Contact_no Purchased_amount град
987 Винай Дас 9839878678 12000.00 Делхи
452 K.Amarnath 7598759387 15000.00 Колката
987 Асеем Кумар 9697679867 18000.00 Куттак
989 шакти 9847984788 60000.00 Куттак

Ако искаме да пуснем тази виртуална таблица premium_customer, по-долу е синтаксисът.

DROP VIEW premium_customer;

Ако е необходима някаква модификация на тази по-горе таблица на премиите чрез промяна на някои условия, тогава

Запитване №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;

изход:

Клиентски номер Потребителско име Contact_no електронна поща Purchased_amount град
184 Рави Кумар 9887463893 8000.00 Колката
987 Винай Дас 9839878678 12000.00 Делхи
452 K.Amarnath 7598759387 15000.00 Колката
987 Асеем Кумар 9697679867 18000.00 Куттак
989 шакти 9847984788 60000.00 Куттак

Предимства и недостатъци на изгледите в MySQL

Тук обсъждаме предимствата и недостатъците на Views в MySQL,

Предимства

  • Сигурност: Има много таблици, които са ограничени от много потребители, тъй като някои атрибути в тези таблици ще бъдат много чувствителни. Така че, ако можем да създадем изгледи с някои специфични атрибути за съответните потребители, тогава потребителите могат да получат разрешение за достъп до определен набор от изгледи в база данни, която им е разрешена. Това може да поддържа сигурността и целостта на данните, както и потребителите да изпълняват задачите си със съответните оторизирани колони.
  • Простота на заявката: Изгледът може да бъде създаден чрез извличане на данни от няколко таблици. Така че всички натрупани записи от всички таблици могат да бъдат представени от една таблица, като се използва заявката за изглед.
  • Структурна простота: можем да създадем специализиран или персонализиран потребителски изглед. Така можем да представим базата данни като набор от виртуални таблици, които имат смисъл за потребителя.
  • Последователност: тук споменаваме последователност, тъй като този изглед може да представлява последователно и непроменено изображение на структурата на базата данни, дори ако направим някаква манипулация с основната или главната таблица.
  • Цялостност на данните : ако достъпът до данните на изглед, базата данни винаги проверява данните, за да се увери дали те отговарят на ограниченията за целост или не.

Недостатъци

  • Изпълнение: Изгледите са виртуалната таблица или представител на главните таблици. Когато изпълняваме някои заявки за създаване на изглед, СУБД превежда тези заявки срещу изгледите в заявките в основните таблици. Така че, ако заявката за изглед е много сложна, която съдържа множество източници и трудни алгоритми, тогава простото действие срещу тези изгледи отнема значително време.
  • Ограничения за актуализиране: Докато променя редове в изглед, СУБД трябва да преведе заявката в актуализация на редове от таблицата на източника. Актуализацията може да се извърши с простата заявка, но в случай на сложна заявка, СУБД няма да позволи актуализиране, тъй като изгледите често са ограничени само до четене.

заключение

След като преминем по-горе описаните неща, можем ясно да се запознаем със значението на тази команда. Това е полезно в много сценарии в реално време. Основното предимство на това е, че можем да изпълняваме много сложни заявки, само за да знаем колко ефективен е основният ни алгоритъм. Поддържането на сигурността и целостта на данните е основното предимство на командата view.

Препоръчителни статии

Това е ръководство за изгледи в MySQL. Тук обсъждаме как да създадете изгледи в mysql и да разберем как работят различните опции на изгледите в MySQL. Можете също да разгледате следните статии, за да научите повече-

  1. Топ 3 MySQL оператори
  2. Различни команди за заявки MySQL
  3. Топ 6 Wildcards в MySQL
  4. Как работи MySQL схема?