Почему представление базы данных используется?

Использует "представление" в дизайне дб правильный метод, или мы должны обработать его сторона кода? Каковы преимущества или недостатки?

9
задан shgnInc 9 June 2015 в 08:37
поделиться

3 ответа

Я вижу несколько причин для использования представлений:

  • Обеспечьте более простой интерфейс: просто запросите представление, а не дюжину таблиц, выполняя соединения и все такое.
  • Обеспечьте интерфейс, который не изменяется (или реже) :
    • Даже если вы измените структуру таблиц, вы можете изменить свое представление, чтобы оно все равно возвращало то же самое
    • Что означает в коде вашего приложения не требуется никаких изменений: оно все равно будет работать, поскольку оно использует представление, а не имеет прямого доступа к таблицам
  • Предоставляет интерфейс только для некоторых полей таблиц
    • Пользователям не нужно видеть некоторые данные, которые они не будут использовать
    • Или получить доступ к некоторым данным, которые они не должны использовать
  • С некоторыми механизмами баз данных (я думаю, что MS SQL Server поддерживает это) , некоторые типы представлений могут иметь индексы
    • Что хорошо для производительности: если у вас есть сложный запрос, сохраните его как представление и определите необходимые индексы для этого вид
15
ответ дан 4 December 2019 в 09:36
поделиться

Зависит. Я использую их иногда, но не так часто. Они ОЧЕНЬ полезны для представления декодированных представлений данных для использования конечным пользователем (инструментами), например, приложениями для создания отчетов. Таким образом, вы можете предоставить конечному пользователю упрощенную версию часто запрашиваемой информации, скрывающую некоторые технические детали.

2
ответ дан 4 December 2019 в 09:36
поделиться

Два типичных сценария для представлений в нашем случае:

  • Некоторые столбцы в таблице содержат конфиденциальные данные, которые должны быть просмотрены только несколькими людьми. Вы можете создать представление, исключающее эти столбцы, и использовать это представление для большинства пользователей.
  • Вы объединяете две или более таблиц в денормализованное представление, которое практично для целей отчетности, но не имеет смысла в качестве таблицы для хранения в базе данных.

Надеюсь, это поможет.

5
ответ дан 4 December 2019 в 09:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: