我偶尔也会做……
IF very-likely-condition THEN NULL; ELSE <<code to deal with the unlikely condition>> END IF;
这给出了来自PL / SQL编译器的NULL线上的PLW-06002无法访问的代码警告.
现在虽然我可以清楚地忽略警告和/或重构IF语句为NOT,但我认为这样做更好.
所以有人知道是否有另一种插入空语句的方法,这样我就不会收到编译器警告?
编辑:
我不是说我经常这样做……实际上我很少这样做.但偶尔我认为这样做会更好.
编辑2:
此外,还有其他可能有效的情况(例如忽略EXCEPTION块中的特定错误).我只用IF作为一个简单的例子来说明这一点.
解决方法
看起来这是设计的.见
http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14261/controlstructures.htm#i5421
示例4-23创建子程序时使用NULL作为占位符
CREATE PROCEDURE ... AS BEGIN NULL; -- use NULL as placeholder,raises "unreachable code" if warnings enabled END; /