Пояснення щодо подання SQL - Як створити подання в SQL та MySQL

Що таке подання в SQL?

Вид - це об’єкт бази даних, який представляє дані, що існують в одній або декількох таблицях. Представлення використовуються подібно до таблиць, але вони не містять даних. Вони просто “вказують” на дані, що існують в інших місцях (наприклад, таблиці чи подання).

Чому вони нам подобаються?

  • Перегляди - це спосіб обмежити представлені дані. Наприклад, дані відділу кадрів фільтрувались лише для надання конфіденційної інформації. Конфіденційною інформацією в цьому випадку можуть бути номери соціального страхування, стать працівника, розмір заробітної плати, домашня адреса тощо.
  • Складні дані в декількох таблицях можна об'єднати в один "подання". Це може полегшити життя вашим бізнес-аналітикам та програмістам.

Важливі поради щодо безпеки

  • Перегляди управляються системою. Коли дані у відповідних таблицях змінюються, додаються чи оновлюються, система оновлює подання. Ми хочемо використовувати їх лише тоді, коли це необхідно для управління використанням системних ресурсів.
  • У MySQL зміни в дизайні таблиці (тобто нові або скинуті стовпці), внесені ПІСЛЯ створення подання, не оновлюються у самому поданні. Погляд потрібно було б оновити або відтворити.
  • Представлення даних є одним із чотирьох стандартних типів об'єктів бази даних. Інші - це таблиці, збережені процедури та функції.
  • З поданнями зазвичай можна поводитися як із таблицею, але оновлення обмежені або недоступні, коли подання містить більше однієї таблиці.
  • Є багато інших деталей про погляди, які виходять за рамки цього вступного посібника. Проведіть час за керівництвом менеджерів баз даних та отримайте задоволення від цього потужного об’єкта SQL.

Синтаксис заяви "Створити подання" (MySQL)

CREATE [OR REPLACE] [ALGORITHM =  TEMPTABLE] [DEFINER =  CURRENT_USER ] [SQL SECURITY  DEFINER ] VIEW view_name [(column_list)] AS select_statement [WITH [CASCADED | LOCAL] CHECK OPTION] 

Цей посібник охоплюватиме цю частину твердження ...

CREATE VIEW view_name [(column_list)] AS select_statement 

Зразок створення подання зі студентських таблиць

Примітки:

  • Ім'я подання має в кінці "v". Рекомендується, щоб назва представлення вказувало, що це певний спосіб полегшити життя програмістам та адміністраторам баз даних. Ваш ІТ-магазин повинен мати власні правила щодо іменування об’єктів.
  • Стовпці у поданні обмежені SELECT, а рядки даних - реченням WHERE.
  • символ "" "навколо назв подань необхідний через" - "в іменах. MySQL повідомляє про помилку без них.
create view `programming-students-v` as select FullName, programOfStudy from student where programOfStudy = 'Programming'; select * from `programming-students-v`; 

Зразок використання подання для комбінування даних з кількох таблиць

Для демонстрації цього використання до бази даних була додана демографічна таблиця студентів. Цей вид поєднає ці таблиці.

Примітки:

  • Для “об’єднання” таблиць таблиці повинні мати спільні поля (зазвичай первинні ключі), які однозначно ідентифікують кожен рядок. У цьому випадку це студентський квиток. (Докладніше про це у посібнику з SQL Joins.)
  • Зверніть увагу на “псевдонім”, вказаний у кожній таблиці (“s” для студента та “sc” для контакту зі студентом). Це інструмент для скорочення назв таблиць та спрощення визначення, яка таблиця використовується. Це простіше, ніж вводити довгі імена таблиць неодноразово. У цьому прикладі це було потрібно, оскільки studentID є однаковим іменем стовпця в обох таблицях, і система буде подавати “неоднозначну помилку в назві стовпця”, не вказуючи, яку таблицю використовувати.