Введение в представления SQL
Для сложных запросов SQL представления создаются с использованием одной или нескольких таблиц. Кроме того, представление используется для обеспечения инкапсуляции таблицы / таблиц в целях безопасности. Представление рассматривается как виртуальная таблица со строками и столбцами, как обычная таблица базы данных.
Синтаксис для создания представления
Представление может быть создано с помощью оператора CREATE VIEW, как показано ниже:
CREATE VIEW VIEW_NAME AS
SELECT column1, column2, column3…….
FROM table_name WHERE (condition);
Создание представления в SQL с примерами:
Давайте рассмотрим приведенную ниже таблицу РАБОТНИКА:
Мы можем создать вид из таблицы выше, как показано ниже.
CREATE VIEW EMLOYEE_VW AS
SELECT NAME, AGE, SALARY
FROM EMPLOYEE;
В приведенном выше представлении EMPLOYEE_VW будут созданы следующие столбцы.
SELECT * FROM EMPLOYEE_VW;
Мы можем создавать представления из более чем одной таблицы.
Давайте рассмотрим другую таблицу DEPARTMENT, как показано ниже.
Мы можем создать представление из приведенных выше таблиц EMPLOYEE и DEPARTMENT, как показано ниже:
CREATE VIEW DEPT_VIEW AS
SELECT EMPLOYEE.ID, EMPLOYEE.NAME, DEPARTMENT.DEPTNAME
FROM EMPLOYEE, DEPARTMENT
WHERE EMPLOYEE.ID = DEPARTMENT.ID;
Представление DEPT_VIEW будет иметь следующий результат.
SELECT * FROM DEPT_VIEW;
Операции с другим представлением в представлениях SQL
Ниже приведены различные операции просмотра в SQL:
Обновление в представлении
Хотя представление может быть обновлено, нам нужно соблюдать несколько условий в уведомлении. Например, при обновлении представления оператор выбора не должен содержать ключевое слово DISTINCT, функции set, предложение order by, Group By или Have, подзапросы и т. Д. Кроме того, предложение FROM не должно содержать несколько таблиц. В дополнение к вышесказанному, представление должно иметь значения NOT NULL, если оно нуждается в обновлении. Поэтому, когда мы хотим обновить представление EMPLOYEE_VW, сохраняя в фокусе вышеупомянутые точки, таблица EMPLOYEE будет обновлена.
Оператор CREATE OR REPLACE VIEW используется для добавления или удаления полей из представления.
Синтаксис для обновления
CREATE OR REPLACE VIEW view_name AS
SELECT column1, column2….
FROM table_name
WHERE (condition);
Давайте обновим представление DEPT_VIEW, как показано ниже, чтобы добавить столбец местоположения.
CREATE OR REPLACE VIEW DEPT_VIEW AS
SELECT EMPLOYEE.ID, EMPLOYEE.NAME, DEPARTMENT.DEPTNAME, DEPARTMENT.LOCATION
FROM EMPLOYEE, DEPARTMENT
WHERE EMPLOYEE.ID = DEPARTMENT.ID;
SELECT * FROM EMPLOYEE;
Из приведенного выше запроса мы получим следующий результат.
ВСТАВКА в ВИД
Синтаксис для вставки в представление
INSERT INTO view_name(column1, column 2, column3, ….) VALUES(value1, value2, value3, …);
Строка может быть вставлена для просмотра EMPLOYEE_VW с помощью вставки в оператор, как показано ниже:
INSERT INTO EMPLOYEE_VW (NAME, AGE, SALARY) VALUES('RAM', '24', '27000.00');
После вставки мы можем увидеть результат по запросу выбора ниже.
SELECT * FROM EMPLOYEE_VW;
УДАЛЕНИЕ ИЗ ВИДА
Удаление строки из представления удаляет строку из таблицы, для которой было создано представление.
Синтаксис для удаления из представления
DELETE FROM view_name WHERE (condition);
Мы можем удалить строку из вида, как показано ниже:
DELETE FROM EMPLOYEE_VW WHERE NAME = 'MALAY';
После удаления результат может быть отображен с помощью запроса ниже.
SELECT * FROM EMPLOYEE_VW;
ОТКЛЮЧИТЬ ВИД
Представления могут быть отброшены с использованием следующего синтаксиса:
DROP VIEW view_name;
Если мы хотим удалить представление EMPLOYEE_VW, его можно удалить, как показано ниже:
DROP VIEW EMPLOYEE_VW;
Преимущества и недостатки представлений SQL
Ниже приведены некоторые плюсы и минусы SQL Views:
преимущества
Ниже приведены преимущества использования представлений в SQL:
- Если нам необходимо сохранить какую-либо конфиденциальную информацию, предоставляя пользователям ограниченный доступ, для этой цели используются представления. Представления используются только для отображения необходимых данных пользователям, сохраняя конфиденциальные данные в безопасности.
- Поскольку представление базы данных связано со многими таблицами, для которых создается представление, это упрощает сложность запроса.
- Представление используется, чтобы скрыть сложность базовых таблиц, используемых в базе данных, от конечных пользователей.
- Представления полезны в случае перепроектирования базы данных, чтобы не влиять на любые другие приложения, использующие ту же базу данных.
- Данные вычисляемых столбцов могут быть очень легко вычислены, когда мы запрашиваем данные из представления, поскольку представления разрешают вычисляемые столбцы.
Недостатки
Несмотря на множество преимуществ, предлагаемых представлениями, у него все еще есть некоторые недостатки, указанные ниже:
- Один из основных недостатков использования представления проявляется в картине, когда мы часто меняем структуры таблиц, на которых создается представление. Поэтому, когда структуры таблиц изменяются, представление также должно быть изменено.
- Кроме того, использование представления замедляет производительность запросов.
Вывод
Представления широко используются для их многочисленных преимуществ. Они добавляют дополнительный уровень безопасности в базу данных, что очень важно для любой системы управления реляционными базами данных. Представления являются гибкими в случае раскрытия данных конечным пользователям, показывая только те данные, которые необходимы, например, с использованием представлений только для чтения, чтобы ограничить привилегии для пользователей. Но и представления могут быть невыгодными, если базовые структуры таблиц часто меняются, что увеличивает сложность изменения представлений в соответствии со структурами таблиц. Таким образом, с множеством преимуществ, представленных на рисунке, представления предоставляются с немного меньшим количеством рекомендаций, когда выполнение запроса данных жизненно важно для бизнеса. От нас зависит выбор использования представления в нашей базе данных путем правильной проверки бизнес-требований, чтобы получить больше преимуществ от представлений для повышения производительности системы.
Рекомендуемые статьи
Это было руководство к представлениям SQL. Здесь мы обсудили создание представления в SQL и синтаксис для создания представления вместе с преимуществами и недостатками представлений в SQL. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -
- Oracle PL / SQL Интервью Вопросы
- Что такое схема MySQL?
- Что такое SQL-инъекция?
- Что такое T-SQL?
- Изучите инструкцию INSERT в Oracle
- Различные параметры просмотра в MySQL