sql.toString()里的sql是什么,是不是包含delete语句,
反正它意思说你不能delete只读的结果集,是不是你设置只读属性了

解决方案 »

  1.   

    try {      Class.forName("oracle.jdbc.driver.OracleDriver");
          con = DriverManager.getConnection(
              "jdbc:oracle:thin:@localhost:1521:kaisa", "bip", "bip");
          Statement stmt=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
          ResultSet rs=stmt.executeQuery("select * from out_ready");
          if(rs.next()){
            rs.absolute(1);
            rs.updateInt("count",3);
            rs.updateRow();
          }
          System.out.println("11111");
        }
        catch (SQLException e) {
          System.err.println("database():" + e.getMessage());
        }
        catch (ClassNotFoundException e1) {
          e1.printStackTrace();    }database():对只读结果集的无效操作: updateInt
      

  2.   

    当前用户对Oracle数据库只有可读权限
      

  3.   

    不会的,因为直接在程序中用sql的话, 可以更新数据库的,