У нас есть база данных, которая обновляется каждый час.Изменения вносятся приложением, которое использует DELETE / INSERT для каждой строки, которая обновляется или вставляется.SQL Server 2008 R2 Standard Edition.
Планы выполнения запросов для специальных запросов выталкивают другие (более важные, более крупные) планы выполнения, которые влияют на отчеты по этой базе данных и поглощают кэш данных.
После просмотраВ кеше планов мы обнаружили, что (как и ожидалось) SQL генерирует новый план для каждого запроса.
Мой вопрос заключается в том, остановит ли создание руководства по плану создание нового плана для каждого обновления в SQL?
Я видел в кеше, что для обновления, например, столбца с плавающей точкой, SQL каждый раз параметризует его в число различной длины, что означает, что каждый параметризованный запрос отличается.Если я создам руководство плана с параметризованной версией запроса, указав правильные типы данных для каждого столбца, заставит ли это SQL использовать этот план?
Я знаю, что использование хранимых процедур решит эту проблему, нопо другим причинам это не вариант.
Спасибо.