http://blog.csdn.net/id19870510/article/details/6259636看看是不是

解决方案 »

  1.   

    不是啊
          String username=request.getParameter("username");  
          String movie_name=("movie_name");
          String time=request.getParameter("time");
          String price=request.getParameter("price");
          String number=request.getParameter("BuyNumber");Connection conn;
    PreparedStatement pstmt=null;
      try{
          Class.forName(driverClass).newInstance();
           conn=DriverManager.getConnection(url,user,password);
           String sql="insert into order values (?,?,?,?,?)";
           pstmt=conn.prepareStatement(sql,ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
           pstmt.setString(1,username);
           pstmt.setString(2,movie_name);
           pstmt.setString(3,time);
           pstmt.setString(4,price);
           pstmt.setString(5,number);
           pstmt.executeUpdate();
           
           out.print("购买成功");
                  }
                  
                  catch(SQLException e){
                   e.printStackTrace();
             out.print("购买失败");
                                      }
      

  2.   

    预编译语句只有单个参数吧
    pstmt=conn.prepareStatement(sql);
      

  3.   

    insert into order(里面填写你要填写字段试试) values (?,?,?,?,?)
      

  4.   

     try{
          Class.forName(driverClass).newInstance();
           conn=DriverManager.getConnection(url,user,password);
           String sql="insert into order ('sky','movie_name','19:00:00','50','1') values (?,?,?,?,?)";
           pstmt=conn.prepareStatement(sql);        pstmt.executeUpdate();
           
           out.print("购买成功");
                  }
                  
                  catch(SQLException e){
                   e.printStackTrace();
             out.print("购买失败");
                                      }这样还是会报错:java.sql.SQLException: No value specified for parameter 1。
    求教
      

  5.   

    String sql="insert into order ('sky','movie_name','19:00:00','50','1') values (?,?,?,?,?)";
    valuse 前面写字段名,你这看起来像是数据
      

  6.   

    stmt.executeUpdate("insert into tb_name (col1,col2,col2,col4) values ('"+var1+"','"+var2+"',"+var3+",'"+var4+"')");perstmt = con.prepareStatement("insert into tb_name (col1,col2,col2,col4) values (?,?,?,?)");
    perstmt.setString(1,var1);
    perstmt.setString(2,var2);
    perstmt.setString(3,var3);
    perstmt.setString(4,var4);
    perstmt.executeUpdate();
      

  7.   

    按照8L发的方法试了,也不行,还是会报错
      Connection conn;
    PreparedStatement pstmt=null;
      try{
          Class.forName(driverClass).newInstance();
           conn=DriverManager.getConnection(url,user,password);
           String sql="insert into order(username,movie_name,time,price,number) values (?,?,?,?,?)"; 
           pstmt=conn.prepareStatement(sql);
           pstmt.setString(1,username);
           pstmt.setString(2,movie_name);
           pstmt.setString(3,time);
           pstmt.setString(4,price);
           pstmt.setString(5,number);
           pstmt.executeUpdate();
           
           out.print("购买成功");
                  }
                  
                  catch(SQLException e){
                   e.printStackTrace();
             out.print("购买失败");
                                      } 报错内容 :You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'order(username,movie_name,time,price,number) values ('sky','movie_name','11:00:0' at line 1
      

  8.   

    我看了下你贴出来的代码 我怀疑你可能没有解码你的数据,你试着在页面用out.println(sql) 或者 <%=sql%>输出你的sql语句 你看看 到底输出什么 
      

  9.   

    String movie_name=("movie_name");这是什么意思
      

  10.   

    假设你的sql语句是正常解码 ,那你就复制这条sql语句 直接再数据库中执行,如果还没有错 那你就要在你的java代码也就是数据层去测试下,建议 每一步的后面都打上System.out.println("1"),System.out.println("2"), 以此类推 哪里断了 就哪里有问题
      

  11.   

    不用看了
    order是关键字 不能作为表名 列名
    所以出错了
      

  12.   


    好像是sql语句解码的问题,总感觉是跳过了try中的语句,有什么好的建议吗