当前位置:首页 > 站长知识 > 数据库 > 正文内容

Oracle中对空字符串的判断

2024-11-30数据库27

Oracle中对空字符串的判断

oracle中常见的一个小错误就是字符串判断是否为空。

习惯了编程的人喜欢用<> !=,但这样都是错误的,应该使用is null 或者 is not null, 或者使用nvl函数

首先理解,在oracle中,默认将空字符视为null,而对null进行判断都为false

例如

‘1’ != null 我们看上去这是对的,但是和null的比较都为fasle,所以结果是false

举个例子:

1
select ( case when 'sdfds' is not null then 1 else 2 end ) result from dual;

1
select ( case when 'sdfds' !=null then 1 else 2 end ) result from dual;

或者使用nvl函数,nvl(字符串,为空时的默认值)

Oracle 字符串不存在空串

Oracle版本 Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

测试内容

搜索当字符串为空时oracle数据库字段 字符串不会出现空串"" 的情况,当设置字符为"" 时,oracle会默认把它设置为null。