【发布时间】:2009-08-28 23:51:49
【问题描述】:
在 PL/SQL 中声明时变量VARCHAR2 的默认值是多少?我可以在声明变量后对NULL 进行一次检查吗?
【问题讨论】:
在 PL/SQL 中声明时变量VARCHAR2 的默认值是多少?我可以在声明变量后对NULL 进行一次检查吗?
【问题讨论】:
变量默认初始化为 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;
/
【讨论】:
默认值为 NULL,您可以使用 IS NULL 或 IS NOT NULL。
【讨论】:
还有一个小补充:如果您正在处理 BLOB(或 CLOBS),“empty”与 null 不同。如果需要,请参阅 Oracle 大对象手册。
【讨论】:
tuinstoel 是正确的。
一个补充:不要被愚弄尝试“ls_my_variable = NULL”,因为与 NULL 比较总是返回 FALSE。始终使用“ls_my_variable IS NULL”或“IS NOT NULL”。
【讨论】: