我数据库有一项是反应修改时的时间,结果最后select检查库时,发现传入的是0000-00-00的默认值,我表示一脸懵。在百度上查了资料也没有解决办法,最后自己想了想才解决
之前我代码是
Date nowdate=new Date();
String nowtime=String.valueOf(df.format(nowdate));
System.out.println(nowtime);
int result = ed.insertData("insert into information(`nowtime`,`data`) values(nowtime,'A');");
其中System用来输出检测当前时间,结果是System输出正常,的确是当前时间,但是数据库显示的确是0000
后来发现变量名nowtime和我数据库中列的名字重复了,可能后台识别出现了问题,所以导致输出的是正常值,最后数据库确是默认值
修改后的代码
Date nowdate=new Date();
String current_time=String.valueOf(df.format(nowdate));
int result = ed.insertData("insert into information(`nowtime`,`data`) values(current_time,'A');");
总而言之:大家出现这种情况,先检查下变量什么的有没有重复(实在不行再写一遍,每个变量加一个下划线_,以便和之前的变量作为区分,以防止变量重复的出现)