把最终构造出来的SQL语句打印出来,拿到数据库系统的客户端软件(比如SQL Server的“查询分析器”)中直接诊断。

解决方案 »

  1.   

    构造的sql有问题,同意楼上意见
      

  2.   

    你的数据库语句写错了,语句最后少了";"(分号)了
    strsql= "insert into htjbxxb (htbh,htmc,htjf,htyf,htbc,qysj,jcfk,htsl,ysfp,htnr,htbz) values("+htbh1+",'"+htmc1+"','"+htjf1+"','"+htyf1+"',"+htbc1+","+qyrq1+","+jcfk1+","+htsl1+","+ysfp1+","+htnr1+",'"+htbz1+"');";在insert语句结束的时候要有";"的,建议你到dos下多多操作一下数据库就不会出现这种情况了
      

  3.   

    这是我写的更新函数
    public void updateDB(String sql) throws SQLException 
    {
        con=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;   DatabaseName=fight;","sa",""); 
    stm=con.createStatement();
    stm.executeUpdate(sql);
            System.out.println("updata ok");
    }
    在jsp中调用<jsp:usebean id="mydb" class="db.DBConnection"scope="session"/>
    <%
      String name=request.getParameter("name").trim();
      String password= request.getParameter("password");
      String date=request.getParameter("date");
      String sql="insert into sss(username,password,date)  values('"+name+"','"+password+"','"+date+"')";
      mydb.updateDB(sql);
    %>
    运行时有错,肯定是连接上了的,但是就是在执行更新操作的时候,不对,请大家指教啊
    HTTP Status 500 - --------------------------------------------------------------------------------type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception javax.servlet.ServletException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]??? 'sss' ???
    org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
    org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
    org.apache.jsp.index_jsp._jspService(index_jsp.java:123)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    root cause java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]??? 'sss' ???
    com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
    com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
    com.microsoft.jdbc.sqlserver.tds.TDSRequest.processErrorToken(Unknown Source)
    com.microsoft.jdbc.sqlserver.tds.TDSRequest.processReplyToken(Unknown Source)
    com.microsoft.jdbc.sqlserver.tds.TDSExecuteRequest.processReplyToken(Unknown Source)
    com.microsoft.jdbc.sqlserver.tds.TDSRequest.processReply(Unknown Source)
    com.microsoft.jdbc.sqlserver.SQLServerImplStatement.getNextResultType(Unknown Source)
    com.microsoft.jdbc.base.BaseStatement.commonTransitionToState(Unknown Source)
    com.microsoft.jdbc.base.BaseStatement.postImplExecute(Unknown Source)
    com.microsoft.jdbc.base.BaseStatement.commonExecute(Unknown Source)
    com.microsoft.jdbc.base.BaseStatement.executeUpdateInternal(Unknown Source)
    com.microsoft.jdbc.base.BaseStatement.executeUpdate(Unknown Source)
    db.DBConnection.updateDB(DBConnection.java:33)
    org.apache.jsp.index_jsp._jspService(index_jsp.java:74)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    note The full stack trace of the root cause is available in the Apache Tomcat/5.0.27 logs.
    --------------------------------------------------------------------------------