Главная страница


su.dbms.sql

 
 - SU.DBMS.SQL ------------------------------------------------------------------
 From : Tengiz Kharatishvili                 2:5020/400     19 Jan 2001  23:02:19
 To : All
 Subject : Re: RECOMPILE ?
 -------------------------------------------------------------------------------- 
 
 "Alexandr Drobot" <shd@host.svit.kiev.ua> wrote in message
 news:9496gd$1gu$1@host.talk.ru...
 
 > sp_recompile V2 бодро сообщает:
 > Object 'V2' was successfully marked for recompilation.
 > :(( Эффект - никакой!
 > Что у меня неправильно, подскажите, пожалуйста...
 >
 
 Читаем Books Online, статья sp_recompile [@objname =] 'object' :
 "...If 'object' is the name of a table or view, all the stored procedures
 that reference the table or view will be recompiled the next time they are
 run."
 
 Т.е. sp_recompile заставит перекомпилироваться процедуры, которые ссылаются
 на view, а не сам view. Справедливости ради нужно заметить, что очень многие
 попадаются в эту ловушку. Что означает, что процедура (не она одна, кстати)
 названа крайне неудачно. В общем, будьте бдительны :-)
 
 Кроме того, существует терминологическая проблема, начало которой положил
 ещё Sybase. RECOMPILE для SQL Server означает переоптимизацию уже
 скомпилированного (в нормальной терминологии) выражения. Скажем, это нужно
 делать, когда изменяется структура индексов, или серьёзно изменилось
 наполнение таблиц и радикально поменялась статистика. При этом, оптимальные
 планы стали неоптимальными и пр. а сервер после этого не перезапускался
 (после перезапуска все процедуры перекомпилируются при первом вызове).
 
 В общем, sp_recompile - это совсем не то, что нужно в данной ситуации.
 
 В Вашем конкретном случае нужно выполнить оператор ALTER VIEW (или
 DROP/CREATE VIEW) для V2, как это не обидно:
 
 ALTER VIEW V2 AS SELECT * FROM V1
 --- ifmail v.2.15dev5
  * Origin: Demos online service (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 RECOMPILE ?   Alexandr Drobot   19 Jan 2001 14:58:17 
 Re: RECOMPILE ?   Tengiz Kharatishvili   19 Jan 2001 23:02:19 
 RECOMPILE ?   Vladimir Ivanov   20 Jan 2001 21:31:00 
 Re: RECOMPILE ?   Ilya Zvyagin   22 Jan 2001 15:46:29 
 RECOMPILE ?   Mike_Timonov   23 Jan 2001 10:01:52 
Архивное /su.dbms.sql/657754468234.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional