发新话题
打印

sql server里的NULL与java里的null

sql server里的NULL与java里的null

sql  server里的NULL跟java里的null不一致怎么办?  

我用的是sql  server  for  jdbc  驱动程序。  
数据库里"a_pm"是个smalldatetime类型,值为NULL。  

           ...  

           if  (resultset.next())  {  
           String    datetime  =  resultset.getString("a_pm");  
            

           //看看是否已有值  
           if  (  datetime  ==  null)  {          //NullPointerException  

               System.out.println("isNULL");  
           }  


           System.out.println(datetime);//也是NullPointerException  

}  
我又试着如下测试,用Object接收。  


           if  (resultset.next())  {  
           Object    obj=  resultset.getObject("a_pm");  
                   //...  
            

           if  (  datetime  ==  null)  {          //NullPointerException  

               System.out.println("objisNULL");  
           }  

}  
仍然是NullPointerException!  

看来从数据库里得到的既不是null也不是Object。  
可是我怎么能够判断这一列是否NULL呢?

TOP

首先调用  
String    datetime  =  resultset.getString("a_pm");  
if(resultset.wasNull())//这里可以判断刚才取的那一列是否是sql  null

TOP

发新话题