奇怪啊
                          String birthDate="2008-10-22";
                          java.sql.Date sqlbirthDate = null;
 
if (!(birthDate==null)&&!("".equals(birthDate))) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
Date birthUtilDate = sdf.parse(birthDate);
sqlbirthDate = new java.sql.Date(birthUtilDate.getTime());
} catch (Exception e) {
e.printStackTrace();
}
}                    insert into xxx("date_birth")values('"+sqlbirthDate+"')这个可以,但是birthDate如果为NULL报错
                   
                    insert into xxx("date_birth")values("+sqlbirthDate+")这个在程序里不行
                    Data truncation: Incorrect date value: '1976' for column 'DATE_BIRTH' at row 1
        

解决方案 »

  1.   

    birthDate如果为NULL报错 :加入对NULL的判断,是要加单引号
      

  2.   

    那你就判断一下,是NULL就干掉引号插入就行了。
      

  3.   

    o ,null可以插入,'null'就不行吧,日期型呢,'sqlbirthDate' OK,直接插入sqlbirthDate就不行
      

  4.   


    除了NULL,其他的值建议用单引号括住吧!
      

  5.   

    除了NULL,其他的值建议用单引号括住,或者使用mysql的函数。