Saltar para conteúdo


Foto
- - - - -

Duvida com consulta feita no SQL SERVER


  • Por favor inicie sessão para responder
2 respostas a este tópico

#1 Renatocff

Renatocff

    Novato

  • Membros
  • Pip
  • 1 mensagens
  • Galaxy S3

Mensagem publicada 26 February 2015 - 11:33

Pessoal, Bom dia!

Sou novo na área de desenvolvimento android, comecei a estudar a pouco tempo e estou com uma duvida em uma situação que encontrei.

Atualmente tenho conhecimento da linguagem C#, que acaba facilitando um pouco o aprendizado.

 

Estou usando o codigo abaixo para retornar uma consulta em um listView, no qual a conexão com a base de dados já é feita normalmente e retorna a consulta, porém o problema é que no meu Listview só aparece "1" registro, sendo que fiz um select para todos os registros.

 

Alguem poderia me orientar no que estou errando?

public String Consulta() {
	  String USUARIO = "";
	  ConexaoDAO conexao = new ConexaoDAO();
	  ObjetoConexao objConexao = new ObjetoConexao();
	  objConexao.db_connect_string = "192.168.25.140:1433";
	  objConexao.db_name = "GestaoFrota";
	  objConexao.db_userid = "USER";
	  objConexao.db_password = "SENHA";
	  Connection conn = conexao.dbConnect(objConexao);
	  if (conn != null) 
	  {
	   try 
	   {
	   
	   String queryString = "select * from CONEXOES";
	   PreparedStatement stmt = conn.prepareStatement(queryString); 
	   
	   ResultSet rs;
	   rs = stmt.executeQuery();
	   if (rs.next()) 
	   {
		   
	    USUARIO = rs.getString("USUARIO");
	   }
	  
	   } 
	   catch (SQLException e) 
	   {
	   USUARIO = e.getMessage();
	   }
	  
	  }
	  return USUARIO;

E abaixo faço a operação no OnCreate

ListView Lista;
	
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_monitor);
        Lista = (ListView) findViewById(R.id.Lista);
        
       	
        
        DAO dao = new DAO();
        String CONEXOES = dao.Consulta();
        
        
        String[] strings = new String[] {CONEXOES};
        
		Lista.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, strings));
        
		


#2 Hugo Tender

Hugo Tender

    Mestre de Android

  • Administradores
  • 3492 mensagens
  • LocalizaçãoPortugal
  • Motorola Nexus 6 - Midnight Blue - 32GB - 5.1 e Samsung Galaxy Tab S 8.4 (T700) - 16GB - 4.4.2

Mensagem publicada 26 February 2015 - 17:42

Boas,

 

Veloso? Tens cara de quem pode ajudar. :)

 

Cumps, Tender


Motorola Nexus 6 - Midnight Blue - 32GB - 5.1 Lollipop

Samsung Galaxy Tab S 8.4 (T700) - 16GB - 4.4.2

Antes de iniciares a tua atividade no androidPT, lê as regras com atenção: REGRAS

Chat Gmail do fórum, para ajuda e dúvidas: [email protected]

8AycV.gif


#3 xanex

xanex

    Membro

  • Membros
  • PipPip
  • 199 mensagens
  • LocalizaçãoLisboa
  • Nexus 10, Nexus 5x, Nexus 6p

Mensagem publicada 27 February 2015 - 18:26

quando crias uma listview, no adapter existe um metodo com o nome getCount, nesse getCount tens de retornar o tamanho da lista, provavelmente é isso, se não for avisa que vemos outra solução


tive a reler a tua pergunta

 

if (rs.next())
     {
        
     USUARIO
= rs.getString("USUARIO");
     }

 

 

em vez de utilizares uma string, provavelmente tens de utilizar uma lista de strings, como estas sempre a meter o nome do usuário numa string, só estas a meter 1 valor no adapter, tens de meter tudo numa lista