动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
   数据库 → 阅读文章

 学会如何处理数据库中的null

作者来源: 
阅读 数 673 人次 , 2006-4-20 9:52:00 

  Java数据库连接(JDBC)结果集类掩盖了一个微小的bug,如果你忘记了使用wasNull方法的话。关系数据库中的NULL值的概念和Java中null的值的概念相似,前者任何类型都可以为null,但是在Java中,基本数据类型不能为null。 当要读取一个数据库域赋值给一个基本类型的时候(例如resultSet.getInt(1)),可能会造成问题。这样的例子已经让JDBC规范的制订者开始研究如何解决。

  当一个值通过如getInt、getLong、getFloat这样的getXxx方法从数据库中得到后,开发者可以调用wasNull()方法来找出其值是否为null。如果wasNull返回true,那么可以让开发者为基本类型选择使用合适的null值。GetXxx方法获得的值与JDBC的驱动紧密相关。

  例如,在某个数据库驱动中,它返回0,另一个也许返回那一列的缺省值,也许还有一个返回驱动在那一列读取的最后一个值。

  所以当你准备读取数据库中的NULL值的时候,要小心缺省值,你也许需要以下面的习惯编码:

  int idx = resultSet.getInt(1);

  if(resultSet.wasNull( ))

  {

  idx = -1; // this is our default value for idx

  }
  (Java研究组织)


  
 本文Tags数据库  
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:巧用in关键字实现数据的批量删除
· 下一篇:不破坏原加密存储的存储解密
· SQL Server小技巧
· 加密DB2中的数据值
· Oracle内存结构:Shared Pool的详细信息
· MySQL Auto Backup 下载列表
· Access数据库升迁SQLServer


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077