存储过程和触发器执行

SQL Server 2005 仅存储存储过程和触发器的源。第一次执行存储过程或触发器时,源被编译为执行计划。如果在执行计划从内存老化掉之前再次执行该存储过程或触发器,则关系引擎将检测现有计划并重新使用它。如果该计划已从内存老化掉,将生成新的计划。此进程类似于 SQL Server 2005 对所有 SQL 语句采用的进程。与动态 SQL 的批处理相比,存储过程和触发器在 SQL Server 2005 中的主要性能优势是它们的 SQL 语句始终相同。因此,关系引擎能够轻松地将它们与任何现有执行计划相匹配。可以轻松地重新使用存储过程和触发器计划。

与早于 SQL Server 7.0 版的 SQL Server 中的其他 SQL 语句相比,存储过程有一个更显著的性能优势。这些版本的 SQL Server 不尝试重用非存储过程或非触发器的批处理的执行计划。重用执行计划的唯一方法是在存储过程中编写 SQL 语句。

存储过程和触发器的执行计划与调用存储过程或激发触发器的批处理的执行计划是独立执行的。这样就有更大的机会重用存储过程和触发器的执行计划。

请参阅

概念

查询处理器体系结构

帮助和信息

获取 SQL Server 2005 帮助