Testando um select no aplicativo

4 respostas
jkrfabio

Pessoal gostaria que vocês analisassem meus códigos e dizer se fiz alguma besteira e etc.
eu importei uma base de dados criei um select e etc. Como faço para testar se meu select está funcionando?

segue os códigos

package com.canalsac.galardaomobile.service;

import java.util.List;

import org.json.JSONObject;

import android.content.Context;

import com.canalsac.galardaomobile.dao.TabelaDAO;
import com.canalsac.galardaomobile.modelo.Tabela;

public class TabelaService 
{
	private TabelaDAO tabelaDao;
	
	public TabelaService(Context context)
	{
		tabelaDao = new TabelaDAO(context);		
	}
	
//	public List<Tabela> getPorIdade(String idade)
//	{
//		List<Tabela> tabela = tabelaDao.getPorIdade(idade);
//		return tabela;
//	}
	
	public JSONObject getPorIdade(String idade)
	{
		JSONObject tabela = tabelaDao.getPorIdade(idade);
		return tabela;
	}
}
package com.canalsac.galardaomobile.dao;

import java.util.List;

import org.json.JSONException;
import org.json.JSONObject;

import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;

import com.canalsac.galardaomobile.modelo.Tabela;
import com.canalsac.galardaomobile.persistencedatabase.TabelaDbHelper;
import com.canalsac.galardaomobile.service.TabelaService;

import android.content.Context;

public class TabelaDAO 
{
	private static final String SELECT_ALL = "select * from " +Tabela.TABLE_NAME;
	
	private static SQLiteDatabase db;
	private TabelaDbHelper tabelaDbHelper;
	
	public TabelaDAO(Context context)
	{ 
		tabelaDbHelper = new TabelaDbHelper(context);
		db = tabelaDbHelper.getDatabase();
	}
	
//	public List<Tabela> getPorIdade(String idade) 
//	{
//		JSONObject result = new JSONObject();           
//		
//		Cursor cursor = db.rawQuery(SELECT_ALL +" where idade = "+idade, null);
//		
//		cursor.moveToFirst();
//		while(!cursor.isAfterLast())
//		{
//			result = (JSONObject) cursor;
//			cursor.moveToNext();
//		}
//		
//		cursor.close();
//		return (List<Tabela>) result;
//	}
	
	public JSONObject getPorIdade(String idade)
	{
		JSONObject result = new JSONObject();
		
		Cursor cursor = db.rawQuery(SELECT_ALL+" where idade = "+idade,null);
		
		cursor.moveToFirst();
		while(!cursor.isAfterLast())
		{
			result = readRow(cursor);
			cursor.moveToNext();
		}
		
		cursor.close();
		return result;
	}
	
	private JSONObject readRow(Cursor cursor)
	{
		JSONObject obj = new JSONObject();
		
		try
		{
			obj.put(Tabela.COLUMN_NAME_MENSALIDADE, cursor.getString(0));
			obj.put(Tabela.COLUMN_NAME_PRODUTO, cursor.getString(1));
			obj.put(Tabela.COLUMN_NAME_CAPITAL, cursor.getString(2));
			obj.put(Tabela.COLUMN_NAME_IDADE, cursor.getString(3));
			
		}
		catch(JSONException e)
		{
			
		}
		
		return obj;
}

}
package com.canalsac.galardaomobile.modelo;

public class Tabela 
{
	public static final String TABLE_NAME = "tabela";
	
	public static final String COLUMN_NAME_IDADE = "idade";
	public static final String COLUMN_NAME_CAPITAL = "capital";
	public static final String COLUMN_NAME_PRODUTO = "produto";
	public static final String COLUMN_NAME_MENSALIDADE = "mensalidade";
	
	private String tabela;
	private String idade;
	private String capital;
	private String produto;
	private String mensalidade;
	
	public String getTabela()
	{
		return tabela;
	}
	public void setTabela(String tabela)
	{
		this.tabela = tabela;
	}
	public String getIdade()
	{
		return idade;
	}
	public void setIdade(String idade)
	{
		this.idade=idade;
	}
	public String getCapital()
	{
		return capital;
	}
	public void setCapital(String capital)
	{
		this.capital = capital;
	}
	public String getProduto()
	{
		return produto;
	}
	public void setProduto(String produto)
	{
		this.produto = produto;
	}
	public String getMensalidade()
	{
		return mensalidade;
	}
	public void setMensalidade(String mensalidade)
	{
		this.mensalidade = mensalidade;
	}
	
}

4 Respostas

Polverini

vc pode testar por JUnit

alexandre.marques

Cara, Bom Dia!

Se você tirar o nome do pacote e deixar só o nome da tabela, será que não da certo?

private static final String SELECT_ALL = "select * from " + TABLE_NAME; :?:

Ou como o brother falou testa com o JUnit se ficar verdinho su select está funcionando se ficar vermelho tem erro…

jkrfabio

alexandre.marques:
Cara, Bom Dia!

Se você tirar o nome do pacote e deixar só o nome da tabela, será que não da certo?

private static final String SELECT_ALL = "select * from " + TABLE_NAME; :?:

Ou como o brother falou testa com o JUnit se ficar verdinho su select está funcionando se ficar vermelho tem erro…

Também posso pelo breakpoint? Marcaria-o aonde?

alexandre.marques

Coloca o breakpoint na linha 19 e roda no modo debug

Criado 12 de março de 2013
Ultima resposta 16 de abr. de 2013
Respostas 4
Participantes 3