一尘不染

java.sql.SQLException:ORA-03115:不支持的网络数据类型或表示形式

sql

我正在使用Oracle
11g数据库。当我尝试从db访问数据时,它显示错误java.sql.SQLException:ORA-03115:不支持的网络数据类型或表示形式。我不明白这个错误的意思..

我的代码是:

 String uname,pass;
    ResultSet rs = null;
    response.setContentType("text/html");
    PrintWriter out=response.getWriter();
  try
  {
    uname=request.getParameter("uname");
    pass=request.getParameter("pass");
    Connection con=prepareConnection();
    String Query="select uname from passmanager where pass=?";
    PreparedStatement ps=con.prepareStatement(Query);
    ps.setString(1,pass);
    rs=ps.executeQuery(Query);
    if (rs.next() && uname.equalsIgnoreCase(rs.getString("uname")) || uname.equalsIgnoreCase(rs.getString("email"))) {
    HttpSession session = request.getSession(true);
    session.setAttribute("uname", rs.getString(1));

    ServletContext context = getServletContext();
    RequestDispatcher dispatcher = context
                    .getRequestDispatcher("/profile");
    dispatcher.forward(request, response);
  }

任何人都可以帮助我解决这个问题。


阅读 174

收藏
2021-03-10

共1个答案

一尘不染

代替:

rs = ps.executeQuery(Query);

您应该执行:

rs = ps.executeQuery();

否则,您将不 准备 您的语句并丢失所有参数,因为您为其分配了新的SQL语句(即使它是相同的)。

2021-03-10