private ResultSet rs;
是属于对象成员,即所谓:non-static field ,而你打********的地方是处在静态方法(static method)中,所以出错!
非静态方法可以直接使用本类中的静态方法,而静态方法调用非静态的方法需要创建对象,本例中,意图使用一个静态方法使用一个私有的非静态的field是不可能实现的!
如果改成:
private static ResultSet rs;则错误消除,但是,这样你就必须考虑由此会否造成其他地方的错误!依据同上

解决方案 »

  1.   

    因为你的main是static的!你可以把main中的所有代码,
    放到构造函数里。然后在main中,只写一句:
    new DatabaseMoreOperation()就可以了。good luck!
      

  2.   

    那我在构造函数中的那句DatabaseMoreOperation dmp=new DatabaseMoreOperation();怎么办?
      

  3.   

    String sqlCommand;
        dmp.setURL("jdbc:odbc:sample");
        dmp.setUser("");
        dmp.setPassword("");
        Connection con=dmp.getConnection();
        dmp.setStatement(con);
        sqlCommand="select * from student";    
        dmp.setResultSet(sqlCommand);
    这几句话保留在main里面。
    然后,把其他的代码放到另一个方法中。
    比如叫do()然后,调用dmp.do()就ok了!具体的楼主自己试吧!
    最主要的是在用到static的时候不要晕就行!good luck!