在PL / SQL中声明时变量VARCHAR2
的默认值是多少?在声明变量后,我可以针对NULL
检查一次吗?
答案 0 :(得分:20)
变量默认使用NULL初始化。
您可以更改它,例如:
create procedure show1
as
l_start varchar2(10) := 'Hello';
begin
if l_start is not null then
....
end if;
end;
/
您也可以将变量声明为不可为空:
create procedure show2
as
l_start varchar2(10) not null := 'Hello';
begin
null;
end;
/
答案 1 :(得分:2)
默认值为NULL,您可以使用IS NULL或IS NOT NULL。
答案 2 :(得分:0)
tuinstoel是正确的。
一个补充:不要被愚弄到尝试“ls_my_variable = NULL”,因为与NULL比较总是返回FALSE。始终使用“ls_my_variable IS NULL”或“IS NOT NULL”。
答案 3 :(得分:0)
还有一个小小的补充:如果你正在处理BLOB(或CLOBS),“空”与null不同。如果需要,请参阅Oracle大对象手册。