Різниця між View і таблицею в sql


136

Можливий дублікат:
різниця між переглядами та таблицями в продуктивності

У чому головна відмінність перегляду та таблиці в SQL. Чи є якась перевага використання переглядів замість таблиць.



6
Не здається дублікатом. Пов'язаний пост запитує конкретно про ефективність / ефективність. У цій публікації розглядаються детальніше про те, як вони відрізняються від типів даних, як відображено у вибраній відповіді.
Ð ..

Відповіді:


197

Таблиця містить дані, подання - це лише SELECTвислів, який було збережено в базі даних (більш-менш, залежно від вашої бази даних).

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

Замість того, щоб весь час надсилати складний запит до бази даних, ви можете зберегти запит як перегляд, а потім SELECT * FROM view


11
Таким чином, перегляд є фактичною таблицею, яка була складена за допомогою оператора select. Перегляд зберігається і до нього можна отримати доступ, тож чим буде відрізнятися створення нової таблиці з цією інформацією замість представлення.
Дуг Хауф

23
Ви можете розглядати перегляд як "збережений вибір заяви", який ви можете повторити. Це насправді не стіл; незважаючи на те, що деякі бази даних дозволяють створювати представлення даних, які мають реальну таблицю внизу, це насправді лише SELECTконстатація, яка повертає результати.
Аарон Дігулла

1
Що слід зазначити: деякі перегляди списку систем бази даних разом із таблицями "показати таблиці;" командування.
Dexter

1
@ShwetabhShekhar Це залежить від вашої бази даних та типу перегляду. У найпростішій формі база даних виконуватиме SQL так, як ніби ви щойно відправили всю справу. У цьому випадку ви просто заощаджуєте надсилати багато байтів знову і знову. Деякі бази даних можуть виконати запит і зберегти результат у (реальній) таблиці. Тоді вам потрібно вирішити проблеми якось, про які ви згадали. Перевірте документацію БД, як це зробити.
Аарон Дігулла

1
@FoxDeploy Так, оскільки цей погляд не допомагає жодним чином. Корисними сценаріями буде перегляд з обмеженими дозволами або вид, який вибирає таблицю з іншої схеми в тій самій базі даних або в іншій базі даних (віддалена таблиця).
Аарон Дігулла

34

Таблиця: Таблиця є попереднім сховищем для зберігання даних та інформації в RDBMS. Таблиця - це сукупність відповідних записів даних і складається з стовпців і рядків.

Вид: Вид - це віртуальна таблиця, вміст якої визначається запитом. Якщо не індексовано, подання не існує як збережений набір значень даних у базі даних. Переваги над столом є

  • Ми можемо комбінувати стовпці / рядки з декількох таблиць або іншого виду і мати консолідований вигляд.
  • Перегляди можна використовувати як механізми захисту, дозволяючи користувачам отримувати доступ до даних через перегляд, не надаючи користувачам дозволу безпосередньо отримувати доступ до базових базових таблиць подання
  • Він діє як абстрактний шар для систем низхідного потоку, тому будь-які зміни схеми не піддаються впливу, а отже, на системи нижче за течією не впливає.

16

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

Перегляди пропонують такі переваги:

  1. Простота використання: Вид приховує складність таблиць бази даних від кінцевих користувачів. По суті, ми можемо розглядати погляди як шар абстракції поверх таблиць бази даних.

  2. Економія місця: Перегляд займає дуже мало місця для зберігання, оскільки вони не зберігають фактичні дані.

  3. Додаткова безпека даних: Перегляди можуть включати в таблицю лише певні стовпці, так що лише нечутливі стовпці включаються та піддаються впливу кінцевого користувача. Крім того, деякі бази даних дозволяють представленням мати різні параметри безпеки, таким чином приховуючи чутливі дані від сторонніх очей.

Відповідь: http://www.1keydata.com/sql/sql-view.html


4

Зважаючи на те, що немає жодного прямого чи фізичного відношення до бази даних. І Модифікація через перегляд (наприклад, вставити, оновити, видалити) не дозволяється. Це лише логічний набір таблиць


1
У SQL Server ви можете змінювати базову таблицю через вигляд, якщо вона посилається лише на одну базову таблицю. дивіться тут
Крістен Хаммак

3

Перегляд допомагає нам постійно позбуватися від використання простору бази даних. Якщо ви створюєте таблицю, вона зберігається в базі даних і займає деякий простір протягом усього свого існування. Натомість представлення використовується, коли запит запускається, таким чином, економить простір db. І ми не можемо створювати великі таблиці весь час, приєднуючись до різних таблиць, хоча ми могли, але це залежить від того, наскільки велика таблиця для економії місця. Тож перегляд просто тимчасово створить таблицю з приєднанням різних таблиць на час виконання. Експерти, будь ласка, виправте мене, якщо я помиляюся.


2

Таблиця:

Таблиця зберігає дані в базі даних і містить дані.

Вид:

Перегляд - це уявна таблиця, містить лише поля (стовпці) і не містить даних (рядок), які будуть обрамлені під час запуску Перегляди, створені з однієї або декількох таблиць приєднаннями, з виділеними стовпцями. Перегляди створюються для приховування деяких стовпців від користувача з міркувань безпеки та для приховування інформації, що існує у стовпці. Перегляди зменшують зусилля для написання запитів для доступу до певних стовпців кожного разу Замість того, щоб щоразу стискати складний запит до бази даних, ми можемо використовувати перегляд


2

Перегляди SQL:

View - це віртуальна таблиця, заснована на наборі результатів оператора SQL і зберігається в базі даних з деяким іменем.

Таблиця SQL:

Таблиця SQL - це екземпляр бази даних, що складається з полів (стовпців) та рядків.

Перевірте наступну публікацію, автор вказав приблизно сім відмінностей між переглядами та таблицею

https://codechef4u.com/post/2015/09/03/sql-views-vs-tables

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.