你得到的日期 2006-4-4SimpleDateFormat sf = new SimpleDateFormat("yyyy-M-D"); java.util.Date d = sf.parse("2006-4-4");java.sql.Date date = new java.sql.Date(d.getTime());这个date就可以入库比较了
用yyyy-M-D 不对吧 应该用这个吧 SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
大哥还是不行啊 报错 query():ORA-01861: 文字与格式字符串不匹配
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd"); 这句我看API已经改了 还是不行
Calendar cal = Calendar.getInstance(); cal.set(Calendar.YEAR,年); cal.set(Calenar.MONTH,月); cal.set(Calenar.DAY_OF_MONTH,日); String firstDate = (new Timestamp(cal.getTimeInMillis())).toString();Calendar cals = Calendar.getInstance(); cals.set(Calendar.YEAR,年); cals.set(Calenar.MONTH,月); cals.set(Calenar.DAY_OF_MONTH,日); String secondDate = (new Timestamp(cals.getTimeInMillis())).toString(); 然后把firstDate和secondDate传到SQL语句中,执行它
还报错 好像并没有转换成date
你把SQL语句打印出来贴上看看
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");java.util.Date dt1 = sf.parse("2005-11-11");java.sql.Date qishiriqi = new java.sql.Date(dt1.getTime());
java.util.Date d = sf.parse("2006-4-4");java.sql.Date date = new java.sql.Date(d.getTime());这个date就可以入库比较了
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd");
这句我看API已经改了 还是不行
cal.set(Calendar.YEAR,年);
cal.set(Calenar.MONTH,月);
cal.set(Calenar.DAY_OF_MONTH,日);
String firstDate = (new Timestamp(cal.getTimeInMillis())).toString();Calendar cals = Calendar.getInstance();
cals.set(Calendar.YEAR,年);
cals.set(Calenar.MONTH,月);
cals.set(Calenar.DAY_OF_MONTH,日);
String secondDate = (new Timestamp(cals.getTimeInMillis())).toString();
然后把firstDate和secondDate传到SQL语句中,执行它
好像并没有转换成date
java.util.Date dt2 = sf.parse("2006-07-14");java.sql.Date zhongzhiriqi = new java.sql.Date(dt2.getTime());源码发上 大家帮我看看 qishiriqi 和 zhongzhiriqi 入库比较的
PreparedStatement pst = conn.preparedStatement(sql);
pst.setString(1, request.getParameter("RiZhi_line_no"));
pst.setDate(2, qishiriqi);
pst.setDate(3, zhongzhiriqi);ResultSet rs = pst.executeQuery();
将number转为string类型,再用oracle的to-date函数转换后再比较
date bettwen xxxxx and xxxx
try{
java.util.Date dt1 = sf.parse("2005-11-11");
}catch(ParseException e){
}
2. 在( between '" +qishiriqi + "'" + " and '" + zhongzhiriqi )里 又把日期型以字串型传给了SQL 这里就不要再用字串了 直接 between " +qishiriqi + " and " + zhongzhiriqi 就可以了
java.util.Date dt1 = sf.parse("2005-11-11");
}catch(ParseException e){
}
2. 在( between '" +qishiriqi + "'" + " and '" + zhongzhiriqi )里又把日期型以字串型传给了SQL 这里就不要再用字串了 直接 between " +qishiriqi + " and " + zhongzhiriqi 就可以了没抛异常 而且是以字串传 的改了 就可以了
pst.setDate(2, qishiriqi);
pst.setDate(3, zhongzhiriqi);麻烦问一下 这里需要抛异常吗 如
stmt.setDate(2, qishiriqi)throws SQLException;
stmt.setDate(3, zhongzhiriqi)throws SQLException;
LZ,我也正在做这方面的程序,解决了通知我下,完整的代码贴出来看看
谢谢!!!!!!!!!!