В системе, которую я разрабатываю, у меня есть выбор: использовать одну хранимую процедуру, которая выполняет три связанных задания и возвращает либо нет результата, либо тот же набор результатов, но получены из двух разных таблиц.
Вчера я читал статью, в которой предлагалось, чтобы хранимая процедура имела только один план выполнения и что любая процедура, которая изменяет свой план выполнения в зависимости от разницы в параметрах, вероятно, должна быть записана как несколько процедур.
Запись процедуры в виде трех разных процедур может изменить работу системы, которая выполняет процедуры, но не будет иметь какого-либо существенного значения.
Что я хотел бы знать, так это то, стоит ли производительность, полученная благодаря наличию процедур, которые не имеют разных планов выполнения, в зависимости от входных данных по сравнению с одной процедурой, т. Е. Накладные расходы на вызов базы данных в три раза больше накладные расходы на необходимость перекомпиляции плана производительности в зависимости от обстоятельств?
Спасибо
Грег