我有一个问题-一个开发人员编写了非常复杂的存储过程,他/她离开了组织。现在,您将发挥他的作用,并使相同的存储过程非常快速地工作,或者像以前一样工作以获得相同的结果。我们需要遵循哪些步骤。换句话说,这就像在处理某人即将完成的工作。
答案 0 :(得分:1)
首先,查看存储过程的执行计划。确保您了解为什么SQL Server优化引擎会选择这些计划而不是另一个执行计划,使用的索引以及原因,统计信息的工作方式,...
然后,使其变得更好。
这些是您需要遵循的步骤。
答案 1 :(得分:1)
众所周知,存储过程很难维护。我将从编写unit tests开始-这可能涉及使用“已知良好”数据建立专用的测试环境。找出proc中的主要逻辑分支,并编写单元测试以涵盖这些情况。这应该使您更加熟悉代码。
一旦有了单元测试,就可以进行优化(如果我已经理解了您的问题,那么您就是在尝试提高性能)。如果您的性能优化涉及更改proc,则单元测试将告诉您是否更改了代码的行为。
请确保您保持单元测试的最新状态,以便您离开时,下一个人不会面临同样的挑战!