我正在尝试使用java中的查询将日期插入数据库,但是我收到此错误
java.sql.SQLException:ORA-03115:不支持的网络数据类型或表示
String req=request.getParameter("date");
try
{
SimpleDateFormat d=new SimpleDateFormat("dd/MM/yyyy");
Date dt=d.parse(req);
java.sql.Date sqlDate = new java.sql.Date(dt.getTime());
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection co=null;
co=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","java","java");
String sql="insert Into login_table(date_dt)values(?)";
PreparedStatement st=co.prepareStatement(sql);
st.setDate(1, sqlDate);
ResultSet rs=st.executeQuery(sql);
}
catch(Exception xe)
{
out.println(xe);
}
但我不明白我做错了什么。
答案 0 :(得分:1)
是的,是的!
ResultSet rs=st.executeQuery(sql);
// ^^^
没有!使用:
ResultSet rs=st.executeQuery();
或更好
st.executeUpdate();
当您致电executeQuery(sql)
时,您实际上会调用未使用您准备好的声明的继承Statement.executeQuery
。
答案 1 :(得分:1)
你也可以写。
int returnval=st.executeUpdate();
返回: 或 (1)SQL数据操作语言(DML)语句的行数或 (2)0表示不返回任何内容的SQL语句