Dúvida sobre como efetuar navegação em registros com JDBC

Tenho um programa que faz acesso a uma base acess via jdbc, em tela tenho quatro botões, para efetuar a navegação nos registros:
Tipo :
<< < > >>
First Prev Next Last
Como eu faço para criar, os comandos SQL e passar via string para o ResultSet???
Alguém poderia me passar um exemplo da sintase destes comandos.
Ou posso utilizar os comando first(),previus(),next() e last().
E por exemplo se eu utitilizar estes comandos e for para o último registro e ao clicar no botão prev o resultSet vai conseguir se posicionar no registro anterior???

A instrução SQL é passada pela interface Statement que cria o seu ResultSet.

Vc tem que usar os métodos q vc mencionou (first(), previus(), next() e last()) no seu ResultSet para navegar nos registros.

Sim, vai conseguir se posicionar corretamente. Mas é sempre baseado no que foi retornado pelo seu Statement.

Da uma pesquisada no google q vc vai achar muitos tutoriais ensinando como conectar a um bd usando o jdbc, criar statements, etc.

Falow!

Eu fiz a pergunta pois me deparei com o seguinte erro. Quero busca quando a minha interface carregar o valor do primeiro registro da Base.
Fiz o seguinte
String url = “jdbc:odbc:dbsample”;
Connection con;
Statement stmt;
String msg;

try {
Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);

    	}catch (ClassNotFoundException e) {
    		
    		System.err.print("ClassNotFoundException: ");
    		System.err.print(e.getMessage());
    		
    		
    	}
    	
    	try {
    		con = DriverManager.getConnection(url, "user", "password");         		stmt = con.createStatement();
    				
    	}catch(SQLException ex){
    		
    		  msg=ex.getMessage();
              JOptionPane.showMessageDialog(null,msg,"Erro",JOptionPane.ERROR_MESSAGE);
                
              
    	}
    ResultSet uprs = stmt.executeQuery("SELECT * FROM Departamento");

/*** Aqui carrega os campos de tela com o valor do primeiro registro ***/
while (uprs.first()){
this.JTextField1.setText(uprs.getString(“COD_DEPTO”));
this.JTextField1.setText(uprs.getString(“DESC_DEPTO”));
}

E aparece o seguinte erro de SQL:
java.sql.SQLException: Result set type is TYPE_FORWARD_ONLY
at sun.jdbc.odbc.JdbcOdbcResultSet.first(Unknown Source)

Como a mensagem de erro diz, o recordset so pode ser movimentado p frente. Vc nao pode usar uma instrucao como

para resolver vc pode substituir

while (uprs.first()){ 
this.JTextField1.setText(uprs.getString("COD_DEPTO")); 
this.JTextField1.setText(uprs.getString("DESC_DEPTO")); 
} 

por

while (uprs.next()){ 
this.JTextField1.setText(uprs.getString("COD_DEPTO")); 
this.JTextField1.setText(uprs.getString("DESC_DEPTO")); 

break;
} 

Trara’ o primeiro registro e saira’ do loop

Assim funcionol mas no inicio ai vem a outra parte do meu problema, tenho os botões em tela << < > >>, para que o usuário possa navegar para frente e para trás nos registros e ai os comandos first(), previus(), next() e last() vão funcionar???

Cara, estou com o mesmo problema do carlos.valentini…Aí coloquei no lugar no first() o next()…FUNCIONOU LEGALZINHO…
Mas quando vou colocar os outros botões( last(), previous() e first()) não funciona mais nada!!!
Como é que eu faço pra resolver esse problema agora???

Valw