Java中NULL的概念:NULL表示类或变量是空,不代表任何对象或实例,可以将NULL赋给引用类型变量,但不可以将NULL赋给基本类型变量。
数据库中NULL的概念:数据库中,NULL表示未填写、未知、不可用的概念,和java不同的是数据库中可以将NULL赋给任何数据类型。
那么,我们从数据库中读取字段的值后,在java程序中如何判断读取的值是否为NULL呢?用X==NULL方法吗?显然不行,除非这个X是String类型的。ResultSet中的wasNull()方法可以解决这个问题:
wasNull():报告最后一个读取的列是否具有值 SQLNULL。注意,必须首先对列调用一个获取方法尝试读取其值,然后调用wasNull方法查看读取的值是否为 SQLNULL。
代码如下:
String address = rs.getString("Address");
if (rs.wasNull()){
myusers.setAddress("");
}else{
myusers.setAddress(address);
}
String phone = rs.getString("Phone");
if (rs.wasNull()){
myusers.setPhone("");
}else{
myusers.setPhone(phone);
}