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