Oracle 数据库中的 empty string 处理

王朝oracle·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

跟 微软的数据库产品不一样, Oralce 把 '' 空的string 自动替换为 Null

所以下面的代码你可能考虑不一样的结果.

create table suppliers

( supplier_id

number,

supplier_name

varchar2(100));

Next, we'll insert two records into this table.

insert into suppliers (supplier_id, supplier_name )

values ( 10565, null );

insert into suppliers (supplier_id, supplier_name )

values ( 10567, '' );

select * from suppliers

where supplier_name = ''; //SQL server 中返回第二条记录,而 Oracle 返回空.

他会把NULL 等同 ''

所以 select * from suppliers

where supplier_name is null;

返回所有的非空记录,包括null 和 ''

微软也有一篇KB Q225070 PRB: Oracle Servers Convert Empty Strings to NULL

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航