Ваш вопрос не ясен, не в последнюю очередь потому, что не очевидно, что делает хранимая процедура.Если результаты различны для каждого выполнения и / или пользователя, то они все равно не могут быть легко кэшированы.
Но, что более важно, «у меня медленная хранимая процедура» не означает автоматически «мне нужно кэширование»;сам механизм базы данных уже кэширует данные, когда это возможно.Вам нужно понять, почему хранимая процедура работает медленно: слабое аппаратное обеспечение, плохой код TSQL, плохой дизайн модели данных и плохая индексация - все это очень распространенные проблемы, которые оказывают значительное влияние на производительность.
Вы можете найти многоинформация на этом сайте и Googling о том, как устранить неполадки, связанные с медленным временем выполнения процедур, но вы можете начать с просмотра плана выполнения процедуры в Query Analyzer и отслеживания выполнения с помощью Profiler.Это сразу скажет вам, какие операторы занимают больше всего времени, если происходит сканирование таблицы и т. Д.
Поскольку устранение неполадок с производительностью потенциально сложно, если вам нужна дополнительная помощь, пожалуйста, пишите короткие конкретные вопросы по отдельным вопросам.Если код вашей хранимой процедуры очень короткий (формат <30 строк), люди могут захотеть прокомментировать его напрямую, в противном случае было бы лучше размещать только отдельные операторы SQL, которые вызывают проблемы. </p>
Наконец, основная поддержка MSSQL 2000 прекратилась 3 года назад, поэтому вам обязательно стоит перейти на более новую версию.Инструменты повышения производительности в более новых версиях значительно облегчат решение вашей проблемы.