Retornando registro de um bando de dados SQLite

2 respostas
P

Olá pessoal estou fazendo um app para android utilizando banco de dados SQLite utilizando esse entre outros tutoriais…

nesse tutorial ele ensina usar Adapter para retornar do banco de dados e postar num ListView mas oq estou querendo é retornar do banco e setar na classe Pessoa(exemplo) e pegar essa informaçao do banco através da variavel da classe Pessoa( tipo nome.getNome() ) e colocar num TextView…

estou tentando usar cursor para isso mas estou encontrando dificuldade…meu codigo esta assim:

Pessoa pessoa = new Pessoa();

 public void MostraDados(String nome, String tel, String email) // AQUI ENTRA COMO PARAMETRO AS COLUNAS DO BB

{ 
    		try{
    			
    			BancoDados = openOrCreateDatabase(NomeBanco, MODE_WORLD_READABLE, null);
    			cursor = BancoDados.rawQuery("Select * from tabPessoa", null);
    		
    			pessoa.setData(cursor.getString(cursor.getColumnIndex(nome)));
    			pessoa.setDiaalmoco(cursor.getString(cursor.getColumnIndex(tel)));
    			pessoa.setDiajanta(cursor.getString(cursor.getColumnIndex(email)));
    			
    			
    		}catch(Exception EX){Mensagem("Erro no Banco", "Nao foi possivel verificar Banco");}
    		
    		finally{ BancoDados.close(); }

      }

eu esta buscando algo assim mas os metodos q estou usando estao errados alguem poderia me indicar algum tuto ou como concertar isso!!
obrigado!

2 Respostas

P

dei uma editada para explicar melhor se nao entenderem minha duvida eu posso explicar de novo!

L

Olá Pinky!

Bem... não sei como você está fazendo a conexao com o banco SQLite e talz... mas eu recomendo vossa senhoria ler este tutorial e adequar os codigos a sua necessidade....

Eu usei este tuto como base na conexao com o banco de um APP que estou desenvolvendo...

Criei um evento que lista as produtos presentes no banco... Ficou assim:
public ArrayList<Produto> pegarProdutos(int id) throws Exception{
		int ID = id;
		try {
			ArrayList<Produto> retorno = new ArrayList<Produto>();
			if(ID == 0){
				cursor = Banco.query("produtosComprados", new String[]{"_id", "nome", "valor", "qtd", "id_compra"}, 
			               null, null, null, null, null);
				
				cursor.moveToFirst();
				while (!cursor.isAfterLast()) {
					Produto produto = new Produto(
							cursor.getInt(0),
							cursor.getString(1),
							cursor.getDouble(2),
							cursor.getDouble(3),
							cursor.getInt(4));
					
					retorno.add(produto);
					
					cursor.moveToNext();
				}
			}else{
				cursor = Banco.query("produtosComprados",
						new String[]{"_id", "nome", "valor", "qtd", "id_compra"},
						"id_compra = "+id,
						null,
						null, null, null);
				/*cursor = Banco.query("produtosComprados", new String[]{"_id", "nome", "valor", "qtd", "id_compra"}, 
			               new String[]{"id_compra"}, new String[]{"0"}, null, null, null);*/
				
				cursor.moveToFirst();
				while (!cursor.isAfterLast()) {
					Produto produto = new Produto(
							cursor.getInt(0),
							cursor.getString(1),
							cursor.getDouble(2),
							cursor.getDouble(3),
							cursor.getInt(4));
					
					retorno.add(produto);
					
					cursor.moveToNext();
				}
			}
			return retorno;
		} catch (Exception e) {
			throw e;
		}
	}

Espero ter ajudado :D

Criado 29 de julho de 2012
Ultima resposta 1 de ago. de 2012
Respostas 2
Participantes 2