加了单引号还是同一个错误???ResultSet rs= stmt.executeUpdate(
query+
"(driverId,name,gender,birthday,dscp)VALUES"+ "("+driverId+",'"+name+"','"+gender+"','"+birthday+"','"+dscp+"')" );

解决方案 »

  1.   

    executeUpdate的返回值是受影响的记录行数,而不是ResultSet
    把这一句改掉:
    ResultSet rs= stmt.executeUpdate(
    改成:
    int i = stmt.executeUpdate(...........
    如果i的值是0,insert操作失败,大于0则成功
      

  2.   

    merci,fft123顺便提一句,我找到了另一种insert的方法
    ResultSet rs = stmt.executeQuery(query);
    rs.moveToInsertRow();
    rs.updateInt("id",11);
    rs.updateString("name","fft123");
    rs.insertRow();是不是更方便?
      

  3.   

    是吧!!
    不过最好把你的这句改改!    Statement stmt= conn.createStatement();增加两个参数!!
    具体看看 JAVA API 吧!!否则应该报异常信息!!
      

  4.   

    stmt.executeUpdate返回的是int型!
      

  5.   

    hesi726(hesi) 是不是这样?
    Statement stmt= conn.createStatement(
                     ResultSet.TYPE_SCROLL_INSENSITIVE, 
                     ResultSet.CONCUR_UPDATABLE);
    前一个表示可以前后移动
    后一个应该是表可更改的意思吧?