首页 > 数据库 > Oracle > 2011-11-10 CLOB为空的判断
http://www.itpub.net/thread-1499223-13-1.html
129楼
下列的哪些选项在执行之后会显示 "CLOB has a length of 0" ?
(A)
DECLARE
l_clob CLOB;
BEGIN
IF l_clob IS NULL
THEN
DBMS_OUTPUT.put_line ('CLOB is NULL');
ELSE
DBMS_OUTPUT.put_line ('CLOB has a length of '
|| LENGTH (l_clob));
END IF;
END;
/
SQL> DECLARE
2 l_clob CLOB;
3 BEGIN
4 IF l_clob IS NULL
5 THEN
6 DBMS_OUTPUT.put_line ('CLOB is NULL');
7 ELSE
8 DBMS_OUTPUT.put_line ('CLOB has a length of '
9 || LENGTH (l_clob));
10 END IF;
11 END;
12 /
CLOB is NULL
PL/SQL procedure successfully completed
SQL>
(B)
DECLARE
l_clob CLOB := EMPTY_CLOB ();
BEGIN
IF l_clob IS NULL
THEN
DBMS_OUTPUT.put_line ('CLOB is NULL');
ELSE
DBMS_OUTPUT.put_line ('CLOB has a length of '
|| LENGTH (l_clob));
END IF;
END;
/
SQL> DECLARE
2 l_clob CLOB := EMPTY_CLOB ();
3 BEGIN
4 IF l_clob IS NULL
5 THEN
6 DBMS_OUTPUT.put_line ('CLOB is NULL');
7 ELSE
8 DBMS_OUTPUT.put_line ('CLOB has a length of '
9 || LENGTH (l_clob));
10 END IF;
11 END;
12 /
CLOB has a length of 0
PL/SQL procedure successfully completed
SQL>
(C)
DECLARE
l_clob CLOB := '';
BEGIN
IF l_clob IS NULL
THEN
DBMS_OUTPUT.put_line ('CLOB is NULL');
ELSE
DBMS_OUTPUT.put_line ('CLOB has a length of '
|| LENGTH (l_clob));
END IF;
END;
/
SQL> DECLARE
2 l_clob CLOB := '';
3 BEGIN
4 IF l_clob IS NULL
5 THEN
6 DBMS_OUTPUT.put_line ('CLOB is NULL');
7 ELSE
8 DBMS_OUTPUT.put_line ('CLOB has a length of '
9 || LENGTH (l_clob));
10 END IF;
11 END;
12 /
CLOB is NULL
PL/SQL procedure successfully completed
SQL>
(D)
DECLARE
l_clob1 CLOB := EMPTY_CLOB ();
l_clob2 CLOB := l_clob1;
BEGIN
IF l_clob2 IS NULL
THEN
DBMS_OUTPUT.put_line ('CLOB is NULL');
ELSE
DBMS_OUTPUT.put_line ('CLOB has a length of '
|| LENGTH (l_clob2));
END IF;
END;
/
SQL> DECLARE
2 l_clob1 CLOB := EMPTY_CLOB ();
3 l_clob2 CLOB := l_clob1;
4 BEGIN
5 IF l_clob2 IS NULL
6 THEN
7 DBMS_OUTPUT.put_line ('CLOB is NULL');
8 ELSE
9 DBMS_OUTPUT.put_line ('CLOB has a length of '
10 || LENGTH (l_clob2));
11 END IF;
12 END;
13 /
CLOB has a length of 0
PL/SQL procedure successfully completed
SQL>
答案在134楼
11-10 答案BD. 注意答案C里面的 '' 相当于NULL.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/680385/viewspace-2668897/ ,如需转载,请注明出处,否则将追究法律责任。