代码:import java.sql.*;class Cn{
public Cn(){
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
     Connection con=java.sql.DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=jspdev","sa","");
     Statement stmt=con.createStatement();
     ResultSet rst=stmt.executeQuery("select * from book");
    
     while(rst.next())
{
System.out.print(rst.getString("bookID"));
System.out.print("\t"+rst.getString("bookName"));
System.out.print("\t"+rst.getString("publisher"));
System.out.println("\t"+rst.getString("price"));
System.out.println(rst.getRow());
}

rst.beforeFirst();
rst.last();
rst.previous();
System.out.println(rst.getRow());

}
catch(Exception e){
e.printStackTrace();
}
}

public static void main(String args[]){
Cn c1=new Cn();
}
}问题:
运行此程序 在控制台打印从ms sql中数据库取出来的信息,但执行到rst.beforeFirst();这句时就会发生异常
java.sql.SQLException:[Microsoft][SQLServer 2000 Driver for JDBC]Unsupported method:ResultSet.beforFirst经过实验 
rst.beforeFirst();   rst.last();   rst.previous();
这3个方法都会出类似的异常,我查了API,这3个方法的返回类型
void beforeFirst()  boolean last()  boolean previous()请问为什么会出异常?
我的jdk是1.5的  3个sql驱动放在了jdk的jre\lib\ext下