根据this运行sp_recompile
强制对象在下次运行时重新编译
我需要在运行sp-recompile命令时重新编译它,主要是检查语法错误和存储过程所依赖的对象的存在。
- 在sql 2008上有sys.sp_refreshsqlmodule模块...
答案 0 :(得分:1)
执行此操作的最简单方法可能是重新部署存储过程,这将(据我所知)删除重新编译过程的需要。
这些方面的东西:
SET @ProcedureName = 'SampleProcedure'
CREATE TABLE #ProcedureContent (Text NVARCHAR(MAX))
INSERT INTO #ProcedureContent
EXEC sp_helptext @ProcedureName
DECLARE @ProcedureText NVARCHAR(MAX)
SET @ProcedureText = ''
SELECT @ProcedureText = @ProcedureText + [Text] FROM #ProcedureContent
EXEC ('DROP PROCEDURE ' + @ProcedureName);
EXEC (@ProcedureText)
DROP TABLE #ProcedureContent