Вы должны понимать, что сравнение sprocs с представлениями не очень хорошее / честное сравнение. Они делают разные вещи. Это два совершенно разных типа объектов.
Если вам нужны только данные и все, что вы делаете, это какие-то объединения, то используйте представления. Если вы пишете дополнительный код и имеете дело с параметрами / несколькими операторами, используйте sproc.
Помните, что внутри хранимой процедуры вы все равно можете ссылаться на представление ... поэтому могут быть случаи, когда вы используете оба!
Многим людям нравится создавать единое представление данных, содержащее множество объединений и фильтр (предложение WHERE). Затем они используют это представление в хранимой процедуре для обеспечения дополнительной фильтрации на основе переданных параметров. Другие любят явно присоединяться к таблицам в хранимой процедуре.
Производительность зависит от индексов , а не от прямого доступа к таблице по сравнению с использованием представлений. Поэтому главное, на что нужно обратить внимание, это то, какие индексы вы настроили в определениях таблиц. Добавить индексы в поля, которые очень часто встречаются при поиске и т. Д.