|
Планы выполнения хранимых процедур
|
|||
---|---|---|---|
#18+
При работе в MSSQL 7.0 со вложенными хранимыми процедурами у меня возникло несколько вопросов: Меняются ли планы выполнения вложенных процедур при изменение входных параметров ? И при каких условиях план выполнения процедур будет создаваться занова ? Возможно ли в MSSQL 7.0 сделать так, чтоб планы выполнения хранимых процедур не менялись ? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2000, 13:53 |
|
Планы выполнения хранимых процедур
|
|||
---|---|---|---|
#18+
Судя по разделу помощи в онлайн-документации, при разных входных параметрах планы выполнения не изменяться. Вот использование кэша - да. Насколько я понял, запросы не считаются идентичными для разных параметров. Условия изменения (перекомпиляции) плана запросов следующие: 1. Любые структурные изменения касающиеся запросов и представлений 2. Если явно исполнился оператор сбора статистики подобный UPDATE STATISTICS 3. Был удален индекс использующийся в плане исполнения 4. Явно была исполнена процедура sp_recompile 5. Большое число изменений в таблице н которую ссылается запрос вызванных операторами insert и delete 6. Для таблиц имеющих триггеры при большом числе всавок и удалений Последние два пункта мне не совсем понятны (причины перекомпиляции). Существует еще время жизни планов выполнения, там же: "Execution Plan Caching and Reuse" Глядя на причины перекомпиляции, легко можно ответить на последний вопрос. Евгений kar@freemail.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
17.09.2000, 18:56 |
|
Планы выполнения хранимых процедур
|
|||
---|---|---|---|
#18+
Судя по разделу помощи в онлайн-документации, при разных входных параметрах планы выполнения не изменяться. Вот использование кэша - да. Насколько я понял, запросы не считаются идентичными для разных параметров. Условия изменения (перекомпиляции) плана запросов следующие: 1. Любые структурные изменения касающиеся запросов и представлений 2. Если явно исполнился оператор сбора статистики подобный UPDATE STATISTICS 3. Был удален индекс использующийся в плане исполнения 4. Явно была исполнена процедура sp_recompile 5. Большое число изменений в таблице н которую ссылается запрос вызванных операторами insert и delete 6. Для таблиц имеющих триггеры при большом числе всавок и удалений Последние два пункта мне не совсем понятны (причины перекомпиляции). Существует еще время жизни планов выполнения, там же: "Execution Plan Caching and Reuse" Глядя на причины перекомпиляции, легко можно ответить на последний вопрос. Евгений kar@freemail.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
17.09.2000, 18:56 |
|
|
start [/forum/topic.php?fid=46&msg=32000232&tid=1827708]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
31ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
3ms |
others: | 14ms |
total: | 140ms |
0 / 0 |