static void add()
{

     try{
     connection=DriverManager.getConnection("jdbc:odbc:students","","");
     statement=connection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
     resultset=statement.executeQuery("select * from 成绩表");
         
                                    //////////////////数据库连接
     while(resultset.next())
     {
    
       s_add
       ="update 成绩表 set 学号="+DemandFrame.matter[i][0]+
                              ",姓名="+DemandFrame.matter[i][1]+
                              ",出生年月="+DemandFrame.matter[i][2]+
                              ",语文="+DemandFrame.matter[i][3]+
                              ",数学="+DemandFrame.matter[i][4]+
                              ",外语="+DemandFrame.matter[i][5]+" where 学号="+j+"";
    
    
                                 statement.executeUpdate(s_add);
                                 j++;i++;
        }
        connection.close();
        i=0;
       }catch(SQLException e)
        {
          e.getStackTrace();
          System.out.println(e);
        }
}

解决方案 »

  1.   

    每次把s_add打印出来,然后看是什么语法错误!
      

  2.   

    这个是因为你的SQL应该写在一行里面,而且不能用+连接。我用+连接都编译出错,改成一行就行了。而且不能用JAVA的METHOD在SQL里面
      

  3.   

    ",外语="+DemandFrame.matter[i][5]+" 
    where 学号="+j+"";
    你这边好像""应当在第二行吧
      

  4.   

    字段值的两边加上单引号'
    eg:
    学号='"+DemandFrame.matter[i][0]+ "'"