Відповіді:
О, є багато відмінностей, які вам потрібно буде врахувати
Кількість переглядів:
Перегляди для вставки / оновлень:
Недоліки
Перегляди можуть:
І не слід проектувати таблиці, щоб вони відповідали переглядам . Ваша базова модель повинна стосуватися ефективного зберігання та пошуку даних. Погляди частково є інструментом, який пом'якшує складності, що виникають внаслідок ефективної, нормованої моделі, дозволяючи абстрагувати цю складність.
Крім того, запитання "які переваги використання виду над таблицею?" - не є великим порівнянням. Не можна обійтися без таблиць, але можна обійтися і без переглядів. Вони існують із зовсім іншої причини. Таблиці - це конкретна модель, а вигляд - абстрагований, добре, Вид.
Погляди прийнятні, коли потрібно забезпечити дотримання складної логіки кожного разу. Наприклад, ми маємо представлення, яке створює необроблені дані, необхідні для всієї фінансової звітності. Завдяки тому, що всі звіти використовують цей погляд, кожен працює з одного і того ж набору даних, а не один звіт, який використовує один набір приєднань, а інший забуває використовувати той, який дає різні результати.
Перегляди прийнятні, коли ви хочете обмежити користувачів певним набором даних. Наприклад, якщо ви не видаляєте записи, а лише позначаєте поточну версію як активну, а старіші версії - як неактивні, ви хочете, щоб перегляд вибирав лише активні записи. Це заважає людям забути поставити пункт запиту у запиті та отримати погані результати.
Перегляди можна використовувати для того, щоб користувачі мали доступ лише до набору записів - наприклад, перегляд таблиць для конкретного клієнта та відсутність прав на захист таблиць може означати, що користувачі цього клієнта можуть бачити лише дані для цього клієнта.
Перегляди дуже корисні при рефакторингу баз даних.
Перегляди неприйнятні, коли ви використовуєте представлення для виклику представлень, які можуть призвести до жахливої продуктивності (принаймні, на SQL Server). Ми майже втратили клієнта з багатомільйонними доларами, тому що хтось вирішив абстрагувати базу даних таким чином, а продуктивність була жахливою, а очікування часті. Нам також довелося платити за виправлення, а не за клієнта, оскільки проблема з продуктивністю була повністю наша вина. Коли перегляди викликають представлення даних, вони повинні повністю генерувати базовий вигляд. Я бачив це там, де представлення називалося поданням, яке називалося переглядом, і було створено стільки мільйонів записів, щоб побачити три необхідні користувачеві в кінцевому рахунку. Я пам'ятаю, що на один з цих переглядів знадобилося 8 хвилин, щоб просте підрахунок (*) записів. Погляди, що викликають погляди, є надзвичайно поганою ідеєю.
Перегляди часто погану ідею використовувати для оновлення записів, оскільки зазвичай ви можете оновлювати поля лише з тієї ж таблиці (знову це SQL Server, інші бази даних можуть відрізнятися). Якщо це так, то має сенс все-таки безпосередньо оновлювати таблиці, щоб ви знали, які поля доступні.
Перегляди зручні, коли вам потрібно вибрати з декількох таблиць або просто отримати підмножину таблиці.
Ви повинні розробити свої таблиці таким чином, щоб це була Ваша база даних нормалізована (мінімальне копіювання). Це може зробити запит дещо складним.
Перегляди - це розділення, що дозволяє переглядати дані в таблицях інакше, ніж вони зберігаються.
Ви повинні розробити свою таблицю БЕЗ врахування поглядів.
Окрім збереження приєднань та умов, Views мають перевагу в продуктивності: SQL Server може обчислювати та зберігати свій план виконання у представленні, а отже, робити його швидше, ніж оперативні SQL-оператори "на льоту".
Перегляд також може полегшити вашу роботу щодо доступу користувачів на рівні поля.
Перш за все, як випливає з назви, погляд непорушний. ось тому, що представлення не що інше, як віртуальна таблиця, створена із збереженого запиту в БД. Через це у вас є деякі характеристики поглядів:
тож є газильйон випадків використання, для яких перегляди краще підходять, ніж таблиці, подумайте лише про показ активних користувачів на веб-сайті. перегляд буде кращим, оскільки ви працюєте лише над підмножиною даних, які є насправді у вашій БД (активні та неактивні користувачі)
перегляньте цю статтю
сподіваюся, що це допомогло ..
За даними Вікіпедії ,
Перегляди можуть обмежувати ступінь опромінення базових таблиць зовнішньому світу: даний користувач може мати дозвіл на запит на перегляд, при цьому заборонений доступ до решти базової таблиці.
Перегляди можуть приєднуватися та спрощувати кілька таблиць в одну віртуальну таблицю.
Перегляди можуть виступати у вигляді агрегованих таблиць , де двигун бази даних агрегує дані (сума, середній показник тощо) та представляє обчислені результати як частину даних.
Перегляди можуть приховати складність даних. Наприклад, представлення може відображатися як Sales2000 або Sales2001, прозоро розбиваючи фактичну базову таблицю.
Перегляди займають дуже мало місця для зберігання ; база даних містить лише визначення представлення даних, а не копію всіх даних, які він представляє.
Перегляди можуть забезпечити додаткову безпеку , залежно від використовуваного двигуна SQL.