日期:2014-05-17  浏览次数:20888 次

出现错误:java.sql.SQLException: ORA-01830: 日期格式图片在转换整个输入字符串之前结束
通过查询时间来修改oracle中的数据记录:
将页面中格式为“2008-09-19 08:11:56.0”的字符串进行传递,定位数据记录: 
<a href="d1_modify.jsp?RIQI= <%=rs.getString(RIQI)%>"> 
注:RIQI=2008-09-19 08:11:56.0 
获得参数代码: 
sql="SELECT riqi,d1 FROM chaoweipingjun WHERE riqi=to_date('"+request.getParameter("RIQI").substring(0,18)+"','yyyy-mm-dd hh24:mi')";
出现错误:java.sql.SQLException: ORA-01830: 日期格式图片在转换整个输入字符串之前结束
鼠标放在链接上时显示:RIQI=2008-09-19 08:11:56.0 
可是点击这个 <a href="d1_modify.jsp?RIQI= <%=rs.getString(RIQI)%>">链接后,RIQI=2008-09-19%2008:11:56.0 ,多了%20三个字符,我搞不太明白怎么回事?应该做什么修改啊?
希望高手快帮帮忙,不胜感激!

------解决方案--------------------
首先在pl/sql或sqlplus下执行你的SELECT riqi,d1 FROM chaoweipingjun WHERE riqi=to_date(...

分成小段一步一步来。

------解决方案--------------------
在页面参数传递的时候,系统把空格转换成%20,如同把参数中的 + 转换成%2B 一样。
需要在你业务系统中做相应的处理。