Erro do conjunto de dados no First (iniciante)[resolvido]

10 respostas
ClaudioRamone

Ola estou iniciando em Java estou tentando fazer minha primeira conexao com Oracle importei a biblioteca…o driver consegui fazer a conexao com o banco mas qdo tento fazer uma select no banco para mostrar a tabela ele me gera este erro:

java.sql.SQLException: Operação inválida para encaminhar apenas conjunto de resultados: first

o que´pode ser? vou colocar a minha programação q eu fiz logo abaixo e agradeço qem puder ajudar

package conexao.jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;


/**
 *
 * @author Claudio
 */
public class ConexaoJDBC {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        try {
			Class.forName("oracle.jdbc.driver.OracleDriver");
			String url = "jdbc:oracle:thin:@//localhost:1521/xe";
			Connection con = DriverManager.getConnection(url, "system", "oracle");
			System.out.println("Con: "+con);
                        Statement statement = con.createStatement();
                        ResultSet rs = statement.executeQuery("Select * from CARGOS");
                        if(rs.first()){
                            do{
                             System.out.println("Nome: "+rs.getString("DESCRICAO"));
                            
                            }while(rs.next());
                        
                        
                        }
                        
			
		} catch (ClassNotFoundException e) {
			
			e.printStackTrace();
		} catch (SQLException e) {
			
			e.printStackTrace();
		}
	}
    }

10 Respostas

drsmachado
if(rs.first()){

O método first não é suportado por todos os BDs. Acredito que o oracle seja um deles (ou a versão do driver que você está utilizando não dá este suporte).

ClaudioRamone

Alguma sugestao do q se da p fazer utiizando o oracle p mostrar as tabelas no lugar do first?

JonaTHANNM

O que você pode fazer é substituir o laço de repetição por este:

while(rs.next()){  
System.out.println("Nome: " + rs.getString("DESCRICAO"));  
}

ele vai mostrar todos os registros que ele buscou

ClaudioRamone

como faço p marcar uma resposta a sugestao do colega acima resolveu meu problema …mas não sei onde colocar como resposta

Almeidaah

Como assim colocar como resposta?

Você quer guardar as respostas?
desculpa, mais não compreendi sua dúvida.

drsmachado

Edita o post original e coloca [resolvido] antes do título

Almeidaah

Não entendi o resolvido, o problema anterior foi, mais ele fez uma outra pergunta, ele poderia retirar o resolvido até respondermos tudo(ou tentarmos), não é? :roll:

ClaudioRamone

Não nao amigo…minha duvida foi resolvida só qeria dizer q minha duvida foi resolvida e nao sabia como …em outros foruns tem como marcar a resposta qdo vc consegue resolver pela ajuda e nao sabia se aqi tbm era assim por isso fiz a pergunta e coloquei como resolvido…para a pergunta nao ficar mais aberta …oks…

drsmachado

Não entendi o resolvido, o problema anterior foi, mais ele fez uma outra pergunta, ele poderia retirar o resolvido até respondermos tudo(ou tentarmos), não é? :roll:

É que a segunda pergunta dele era sobre como colocar o post como respondido (como no yahoo respostas) e selecionar a resposta adequada.

Almeidaah

Ah sim, viajei.

CLOSED :!:

Criado 26 de maio de 2011
Ultima resposta 26 de mai. de 2011
Respostas 10
Participantes 4