Разница между просмотром и хранимой процедурой

Оглавление:

Разница между просмотром и хранимой процедурой
Разница между просмотром и хранимой процедурой

Видео: Разница между просмотром и хранимой процедурой

Видео: Разница между просмотром и хранимой процедурой
Видео: Видеокурс по SQL Essential. Урок 8. Хранимые процедуры. Пользовательские функции 2024, Май
Anonim

Просмотр против хранимой процедуры

Представления и хранимые процедуры - это два типа объектов базы данных. Представления - это своего рода хранимые запросы, которые собирают данные из одной или нескольких таблиц. Вот синтаксис для создания представления

создать или заменить имя просмотра

как

select_statement;

Хранимая процедура - это предварительно скомпилированный набор команд SQL, который хранится на сервере базы данных. У каждой хранимой процедуры есть вызывающее имя, которое используется для вызова их внутри других пакетов, процедур и функций. Это синтаксис (в ORACLE) для создания хранимой процедуры, создать или заменить процедуру имя процедуры (параметры)

является

начать

заявления;

исключение

Обработка исключений

конец;

Посмотреть

Представление действует как виртуальная таблица. Он скрывает оператор выбора внутри своего тела. Этот оператор выбора может быть очень сложным, поскольку он берет данные из нескольких таблиц и представлений. Следовательно, другими словами, представление - это именованный оператор выбора, который хранится в базе данных. Представление можно использовать, чтобы скрыть логику отношений таблиц от конечных пользователей. Поскольку представление является результатом сохраненного запроса, оно не хранит никаких данных. Он собирает данные из базовых таблиц и показывает. Представления также играют важную роль в защите данных. Когда владелец таблицы должен показать конечным пользователям только набор данных, создание представления - хорошее решение. Просмотры можно разделить на две категории

  • Обновляемые представления (представления, которые можно использовать для INSERT, UPDATE и DELETE)
  • Необновляемые представления (представления, которые нельзя использовать для INSERT, UPDATE и DELETE)

Обновляемые представления не могут включать подписки, Установить операторы (INTERSECT, MINUS, UNION, UNION ALL)

ОТЛИЧИТЕЛЬНЫЙ

Групповые агрегатные функции (AVG, COUNT, MAX, MIN, SUM и т. Д.)

Предложение GROUP BY

Пункт ORDER BY

Пункт CONNECT BY

НАЧАТЬ С пункта

Выражение коллекции в списке выбора

Подзапрос в списке выбора

Присоединиться к запросу

Хранимая процедура

Хранимые процедуры называются блоками программирования. У них должно быть имя, чтобы позвонить. Хранимые процедуры принимают параметры как вводимые пользователем и обрабатывают их в соответствии с логикой процедуры и выдают результат (или выполняют определенное действие). Объявления переменных, назначения переменных, управляющие операторы, циклы, SQL-запросы и другие вызовы функций / процедур / пакетов могут находиться внутри тела процедур.

В чем разница между просмотром и хранимой процедурой?

Давайте посмотрим на разницу между этими двумя.

• Представления действуют как виртуальные таблицы. Их можно использовать непосредственно при закрытии запросов SQL (выбор), но нельзя использовать процедуры при закрытии запросов.

• В качестве тела представлений используется только оператор выбора, но процедуры могут иметь в качестве тела объявления переменных, назначения переменных, управляющие операторы, циклы, запросы SQL и другие вызовы функций / процедур / пакетов.

• Процедура принимает параметры для выполнения, но представления не хотят, чтобы параметры выполнялись.

• Типы записей могут быть созданы из представлений с использованием% ROWTYPE, но с использованием процедур типы записей не могут быть созданы.

• Подсказки SQL можно использовать внутри оператора view select для оптимизации плана выполнения, но подсказки SQL нельзя использовать в хранимых процедурах.

• DELETE, INSERT, UPDATE, SELECT, FLASHBACK и DEBUG могут быть предоставлены для представлений, но только EXECUTE и DEBUG могут быть предоставлены для процедур.

Рекомендуем: