所以我在Oracle(PLSQL)存储过程中查看了一些代码,我发现了一些我不太了解的内容。
if lv_var1= ' ' then
null;
else
begin.....
只是说明 null
的行它做了什么(如果有的话)。
我的猜测是,它存在于整个程序中,但我无法找到相关信息。
答案 0 :(得分:3)
它没有做任何事情。在PLSQL中你不能有一个空的条件,做这样的事情根本就不会编译:
if lv_var1= ' ' then
--do nothing
else
begin.....`
通过在那里使用null,条件不为空,所以程序编译但是如果到达那个分支则没有任何反应。
它可能会被写成这样:
if lv_var1 != ' ' then
begin...
end if;
编辑:正如Boneist正确指出的那样,上面的选择并没有考虑空值,这可以用nvl来完成,例如nvl(lv_var1,'empty') != ' '
或OR
条件,例如lv_var1 != ' ' OR lv_var1 IS NULL