维护人员存储过程

时间:2020-08-13 04:37:52

标签: sql sql-server stored-procedures

我有一个问题-一个开发人员编写了非常复杂的存储过程,他/她离开了组织。现在,您将发挥他的作用,并使相同的存储过程非常快速地工作,或者像以前一样工作以获得相同的结果。我们需要遵循哪些步骤。换句话说,这就像在处理某人即将完成的工作。

2 个答案:

答案 0 :(得分:1)

首先,查看存储过程的执行计划。确保您了解为什么SQL Server优化引擎会选择这些计划而不是另一个执行计划,使用的索引以及原因,统计信息的工作方式,...

然后,使其变得更好。

这些是您需要遵循的步骤。

  1. 了解正在做什么
  2. 让它变得更好
  3. 重复。

答案 1 :(得分:1)

众所周知,存储过程很难维护。我将从编写unit tests开始-这可能涉及使用“已知良好”数据建立专用的测试环境。找出proc中的主要逻辑分支,并编写单元测试以涵盖这些情况。这应该使您更加熟悉代码。

一旦有了单元测试,就可以进行优化(如果我已经理解了您的问题,那么您就是在尝试提高性能)。如果您的性能优化涉及更改proc,则单元测试将告诉您是否更改了代码的行为。

请确保您保持单元测试的最新状态,以便您离开时,下一个人不会面临同样的挑战!