<%String Student_id= request.getParameter("Student_id");
String Student_name= request.getParameter("Student_name");
String Sex= request.getParameter("Sex");
String Student_class= request.getParameter("Student_class");
String Student_grade=request.getParameter("Student_grade");
   Connection con = null;
   Statement sm=null;   
   ResultSet rs=null; try {

// 加载ODBC驱动
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
// 通过驱动管理器(DriverManager)获得连接
con = DriverManager.getConnection("jdbc:odbc:mysj",
"sa","123");
// 插入数据到student表
sm=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String Sql="insert into student(Student_id,Student_name,Sex,Student_class,Student_grade) values ('" + Student_id + "','"+ Student_name+"','"+ Sex+"','"+Student_class+"','"+Student_grade+"')";rs = sm.executeQuery(Sql);
out.println("<h2>插入数据成功!</h2><br>"); } catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (con != null)
con.close();
} catch (Exception e) {
e.printStackTrace();
}
}   %>    

解决方案 »

  1.   

    sm=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
    String Sql="insert into student(Student_id,Student_name,Sex,Student_class,Student_grade) values ('" + Student_id + "','"+ Student_name+"','"+ Sex+"','"+Student_class+"','"+Student_grade+"')";该为PreparedStatement stat=con.perpareStatement(sql);
       
        stat.executeUpdate();试试看!
      

  2.   

    int returnnumber=sm.executeUpdate(Sql);
    don't use executeQuery function to execute the 'insert' operation
      

  3.   

    out.println("<h2>插入数据成功!</h2><br>");这也出不来
      

  4.   

    rs = sm.executeQuery(Sql);
    这个是什么意思.?
    插入貌似是用executeUpdate吧. 返回整形的.!
      

  5.   

    用executeUpdate()方法   方法用错了 rs = sm. executeUpdate (Sql);