我的jsp程序要在数据库中插入一项,不知道为什么出现了错误,请指教
错误如下(偶看不懂):
500 Servlet Exception
java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] Too few
parameters. Expected 1.
at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6879)
at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7036)
at sun.jdbc.odbc.JdbcOdbc.SQLExecDirect(JdbcOdbc.java:3065)
at sun.jdbc.odbc.JdbcOdbcStatement.execute(JdbcOdbcStatement.java:338)
at sun.jdbc.odbc.JdbcOdbcStatement.executeUpdate(JdbcOdbcStatement.java:288)
at _jsp._zhaobao._ins__jsp._jspService(/zhaobao/ins.jsp:8)
at com.caucho.jsp.JavaPage.service(JavaPage.java:75)
at com.caucho.jsp.Page.pageservice(Page.java:571)
at com.caucho.server.dispatch.PageFilterChain.doFilter(PageFilterChain.java:155)
at com.caucho.server.cache.CacheFilterChain.doFilter(CacheFilterChain.java:211)
at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:177)
at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:221)
at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:263)
at com.caucho.server.port.TcpConnection.run(TcpConnection.java:331)
at com.caucho.util.ThreadPool.runTasks(ThreadPool.java:464)
at com.caucho.util.ThreadPool.run(ThreadPool.java:408)
at java.lang.Thread.run(Thread.java:536)
--------------------------------------------------------------------------------
Resin-3.0.8 (built Tue, 08 Jun 2004 02:25:40 PDT) 程序简化如下:
<%@ page contentType="text/html; charset=GB2312" %>
<%@ page import="java.sql.*" %>
<% Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
       Connection con=DriverManager.getConnection("jdbc:odbc:db1");
       Statement stmt=con.createStatement();
       String strna=request.getParameter("txtname");
       String s="23";
        stmt.executeUpdate("INSERT INTO db1 VALUES(3,s,s,1,s,s,s)");
       %>
       <html>
       <body>
       </body></html>关于insert语句中的values后的参数我不太懂,可试了好多次都是这个错误

解决方案 »

  1.   

    stmt.executeUpdate("INSERT INTO db1 VALUES(3,s,s,1,s,s,s)");
    insert into yourtable values(value1,...valuen);其中valuei 对应于你的表里的某一项
      

  2.   

    [Microsoft][ODBC Microsoft Access Driver] Too few
    parameters. Expected 1.
    好象是你提供的参数太少了,你看看那个表有多少字段啊
      

  3.   

    不应该是INSERT INTO db1 VALUES(3,s,s,1,s,s,s)
    db1替换成表名
      

  4.   

    你的dbl应该是一个数据库.
    而你是想加入一条记录到dbl数据库的的某一张表中.
      

  5.   

    从错误来看,Too few parameters,应该是values中的值和表中的字段不匹配,比表中的少