Представления в MySQL Tutorial: создание, объединение и удаление с примерами

Что такое мнения?

Проще говоря, VIEWS – это виртуальные таблицы. В виртуальной среде мы имеем в виду, что таблицы не хранят никаких данных, а отображают данные, хранящиеся в других таблицах.

Другими словами, VIEWS – это ничего, кроме SELECT запросов.

Синтаксис представлений

Давайте теперь рассмотрим базовый синтаксис, используемый для создания представления в MySQL.

ГДЕ

  • “CREATE VIEW view_name сообщает серверу MySQL о создании объекта вида в базе данных с именем view_name
  • “Операция AS SELECT” – это SQL-запросы, которые должны быть упакованы в представлениях. Это может быть оператор SELECT, который может содержать данные из одной таблицы или нескольких таблиц.

Давайте теперь создадим наше первое представление, используя “myflixdb”, мы создадим простой вид, который ограничивает столбцы, отображаемые в таблице участников.

Предположим, что в требованиях авторизации учетная запись может видеть только номер участника, имя и пол из таблицы участника. Для этого e может создать ПРОСМОТР –

Выполнение вышеуказанного скрипта в workbench MySQL против myflixdb и расширение узла views в проводнике базы данных дает нам следующие результаты.

Обратите внимание, что объект account_v_members теперь отображается в объектах представлений базы данных. Теперь выполним инструкцию SELECT, которая выберет все поля из представления.

Выполнение приведенного выше сценария в workbench MySQL для myflixdb дает нам следующие результаты, показанные ниже.

Количество членов полные имена Пол
1 Джанет Джонс женский
2 Джанет Смит Джонс женский
3 Роберт Фил мужчина
4 Глория Уильямс женский
5 Леонард Хофштадтер мужчина
6 Шелдон Купер мужчина
7 Раджеш Контрапали мужчина
8 Лесли Винкль мужчина
9 Говард Воловиц мужчина

Вернулись только авторизованные столбцы для бухгалтерии. Другие детали, найденные в таблице участников, были скрыты.

Если мы хотим видеть инструкции SQL, которые составляют определенное представление, мы можем использовать приведенный ниже скрипт для этого.

Выполнение приведенного выше сценария дает вам имя вида и инструкции SQL SELECT, используемые для создания представления.

Соединения и взгляды

Давайте посмотрим на довольно сложный пример, который включает в себя несколько таблиц и использует объединения.

Мы упакуем созданный JOIN, который получает информацию из трех (3) таблиц, а именно членов, фильмов и фильмов. Ниже приведен сценарий, который помогает нам достичь этого.

Выполнение вышеуказанных скриптов создает представление с именем general_v_movie_rentals в нашем myflixdb

Теперь выберем все поля из таблицы с именем general_v_movie_rentals.

Выполнение приведенного выше сценария в workbench MySQL для myflixdb дает нам следующие результаты, показанные ниже.

Количество членов полные имена заглавие Дата сделки Дата возврата
1 Джанет Джонс Пираты Карибского моря 4 20-06-2012 28-06-2012
1 Джанет Джонс Забыть Сарра Маршала 22-06-2012 25-06-2012
3 Роберт Фил Забыть Сарра Маршала 22-06-2012 25-06-2012
2 Джанет Смит Джонс Забыть Сарра Маршала 21-06-2012 24-06-2012
3 Роберт Фил X-Men 23-06-2012 28-06-2012

Обратите внимание: нам не нужно было писать сложный запрос JOIN для получения информации о членах, фильмах и сведениях о прокате фильмов. Мы просто использовали представление в регулярной инструкции SELECT как любую другую обычную таблицу. Вид можно вызвать из любой точки приложения, работающей поверх myflixdb.

Удаление просмотров

Команда DROP может использоваться для удаления представления из базы данных, которая больше не требуется. Основной синтаксис для удаления представления выглядит следующим образом.

Зачем использовать представления?

Вы можете использовать представления в первую очередь по следующим причинам

  • В конечном итоге вы будете использовать знания SQL для создания приложений, которые будут использовать базу данных для требований к данным. Рекомендуется использовать VIEWS исходной структуры таблицы в вашем приложении, а не использовать сами таблицы. Это гарантирует, что при внесении изменений в структуру базы данных ваши приложения не сломаются.
  • ПРОСМОТРЫ увеличивают возможность повторного использования. Вам не придется многократно создавать сложные запросы, связанные с объединениями. Вся сложность преобразуется в одну строку запроса, используя VIEWS. Такой сжатый код будет легче интегрировать в ваше приложение. Это уменьшит вероятность опечаток, и ваш код станет более читаемым.
  • VIEWS помогает в обеспечении безопасности данных. Вы можете использовать представления, чтобы показывать только авторизированную информацию пользователям и скрывать конфиденциальные данные, такие как номера кредитных карт.

Резюме

  • Представления представляют собой виртуальные таблицы; они не содержат возвращаемых данных. Данные хранятся в таблицах, указанных в инструкции SELECT.
  • Представления улучшают безопасность базы данных, показывая только предназначенные данные для авторизованных пользователей. Они скрывают конфиденциальные данные.
  • Представления делают жизнь легкой, так как вы не можете писать сложные запросы снова и снова.
  • В ПРОСМОТРЕ можно использовать INSERT, UPDATE и DELETE. Эти операции изменят основные таблицы VIEW. Единственное соображение состоит в том, что VIEW должен содержать все NOT NULL столбцы таблиц, на которые он ссылается. В идеале вы не должны использовать VIEWS для обновления.
0 ответы

Ответить

Хотите присоединиться к обсуждению?
Не стесняйтесь вносить свой вклад!

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *