Що таке уявлення VIEWS у базах даних І навіщо вони потрібні, IT-блог для початківців

Багато адміністратори і програмісти баз даних, що починають, та й просто системні адміністратори, які обслуговують якусь базу даних, не знають що таке уявлення абоVIEWS, і навіщо взагалі вони потрібні. Зараз ми спробуємо розібратися, що це таке.

Почнемо з невеликої теорії.

Що таке VIEWS?

VIEWS – уявлення, чи наприклад у PostgreSQL вони називаються «Видами» (тобто. Вид), українські адміни часто називають їх завірюхами, тобто. одна вистава це юшка. Вона є запитом, що зберігається до бази даних, також її можна назвати віртуальна таблиця, але в цій таблиці дані не зберігаються, а зберігається тільки сам запит. Але, проте, до юшці можна звертатися як до звичайної таблиці і витягувати дані з неї.

Ми з Вами говоримо про бази даних, в яких використовується мова SQL, виходячи з цього, можна зробити висновок, що VIEWS можна створити цією мовою. Це дуже поширений об'єкт у базі даних, тому у всіх СУБД є можливість створювати уявлення в графічному інтерфейсі шляхом натискання кнопки «Створити уявлення» або «Створити новий вигляд», а також, звичайно, з використанням інструкції «CREATE VIEW».

Але перед тим як вчитися створювати юшки, поговоримо про те, навіщо вони потрібні і які переваги вони нам дадуть.

Навіщо потрібні уявлення?

Однією з основних переваг уявлень і те, що вони сильно спрощують взаємодію Космосу з даними у базі даних. Допустимо, Вам необхідно щоразу робити складну за своєю структурою вибірку, а як Ви знаєте, запит на вибірку може бути, ну просто дуже складний і цьому немає меж. І якби не було хуртовин, то Вам доводилося б щоразу запускати цейзапит або навіть його модифікувати, наприклад, для вставки умов. А оскільки ми маємо такі об'єкти як уявлення, нам цього робити не доведеться. Ми просто всього створимо одну юшку, і потім вже до неї звертатимемося за допомогою вже простих запитів, які також можна робити складними, якщо це необхідно. Наприклад, в'юшки також можна поєднувати з іншими таблицями або іншими уявленнями.

До уявлень можна звертатися і з додатків, наприклад, Вам потрібно вивести якийсь звіт, формування якого вимагає якихось розрахунків, це легко можна реалізувати шляхом написання необхідного запиту (у якому і розраховуватимуться дані, наприклад, з різних таблиць) та вставці цього запиту в юшку. А потім вже звертатися до цієї юшці, наприклад за допомогою такого простого запиту як:

Як створити уявлення VIEWS?

Тепер давайте поговоримо про те, як створювати ці самі юшки. По-перше, відразу скажу, що для цього потрібні знання SQL (для побудови складних запитів). По-друге, Ви попередньо повинні визначитися, що Вам необхідно вивести в результаті того чи іншого запиту. Розглядати процес створення уявлення шляхом натискання кнопок ми не будемо, то це досить просто. Ми розглянемо створення VIEWS з використанням мови SQL (хоча це теж просто).

Наприклад, у PostgreSQL запит створення подання виглядатиме так:

  • CREATE VIEW – команда створення уявлення;
  • MyView – назва Вашої майбутньої юшки;
  • SELECT id, name, org FROM work.TableName – запит на вибірку.

Тут ми використовували простий запит на вибірку, Ви можете писати будь-який запит, навіть з об'єднанням декількох таблиць і умов до них.

Повний синтаксис команди CREATE VIEW(у PostgreSQL) виглядає так:

Після того, як Ви створили виставу, Ви можете до нього звертатися. А дані, які виводитиме юшка, будуть змінюватися залежно від змін даних у вихідних таблицях, оскільки дані у юшці формуються при зверненні до цього подання. Виходячи з цього, можна зробити висновок, що дані, які виводить юшка, будуть завжди актуальні.

У мене все, сподіваюся, тепер у Вас є уявлення про те, що таке VIEWS, поки що!