当我在运行中运行SonarLint时,我在使用默认缓冲区时出错。
这就是原因:
当更改也可能由其他内部过程或函数使用的缓冲区时,可能会发生副作用,以及在过程运行持久时锁定问题。此规则要求对于内部过程,函数或方法的代码中出现的每个数据库缓冲区都存在DEFINE BUFFER语句。
Noncompliant Code Example
PROCEDURE myProc:
DISPLAY customer.name.
END PROCEDURE.
Compliant Solution
PROCEDURE myProc:
DEFINE BUFFER customer FOR customer.
DISPLAY customer.name.
END PROCEDURE.
但是如果找不到默认缓冲区,那么我认为该规则在这种情况下无效。