어떻게 모든 저장 과정 을 빠르게 재 컴 파일 합 니까?

629 단어 sqlsp_recompile
자신의 쓰기 방법 은 아마도 sys.Objects 에서 모든 저장 과정 을 얻 은 다음 에 동적 문자열 을 맞 춰 sp 를 사용 하 는 것 일 것 이다.recompile 은 모든 SP 를 다시 컴 파일 합 니 다.
SELECT ROW_NUMBER() OVER(ORDER BY name) AS RID,'exec sp_recompile ''' + name +'''' AS Text
INTO #TEMP
FROM sys.objects WHERE TYPE = 'P'

DECLARE @MaxID INT
DECLARE @SQL VARCHAR(MAX)
SELECT @MaxID = MAX(RID) FROM #TEMP

WHILE (@MaxID IS NOT NULL)
BEGIN
	SELECT @SQL = Text
	FROM #TEMP
	WHERE RID = @MaxID
	
	--PRINT @SQL
	EXEC (@SQL)
	
	SELECT @MaxID = MAX(RID) FROM #TEMP WHERE RID < @MaxID 
END

더 좋 은 방법 이 있 을 지 모 르 겠 습 니 다.

좋은 웹페이지 즐겨찾기